Questione : Comportamento di Subdatasheet

Ciao - faccio annidare un insieme delle domande di Subdatasheet, 4 livelli in profondità (accesso 2003). Funziona solitamente benissimo, ma a volte “+„ 'la s non compare ad un livello dato mentre sto perforando giù. Chiudo solitamente appena la domanda di alto livello, la riapro e funziona ultimamente benissimo dopo that.

Here, “+„ 's non compare al secondo livello la prima volta perforo giù dal primo livello. Chiudo il primo livello qry, lo riapro e funziona benissimo. il

What è l'affare qui? è ci un certo trucco a fare queste cose si comporta costantemente? (preferibilmente, correttamente…)

Thanks

class= del

Risposta : Comportamento di Subdatasheet

Secondo Allen Browne, la proprietà di nome del subdataseet è un problema nell'accesso della spettrografia di massa e dovrebbe essere spenta.  (La proprietà noma di Subdatasheet regolata a [automobile] dovrebbe essere [nessuno].)  Vedere questo collegamento, stralciato qui sotto:      http://allenbrowne.com/bug-09.html

Credo che i subdatasheets ancora funzionino in base ai collegamenti del bambino e del padrone anche se la proprietà di nome del subdatasheet è stata spenta.  Come sempre, assicurarselo per avere sostegni sufficienti prima della fabbricazione dei qualsiasi cambiamenti.
________________________________________________________________
Tabelle: SubdatasheetName
In Access 2000, le tabelle hanno ottenuto una nuova proprietà denominata SubdatasheetName. Se la proprietà non è regolata, stabilizza a “[automobile]„. Il relativo datasheet visualizza un più che l'utente può scattare per visualizzare le annotazioni relative da una certa altra tabella che l'accesso pensa può essere utile.

Questa proprietà automaticamente assegnata è ereditata dalle forme e dai subforms visualizzati nella vista del datasheet. Chiaramente, questa non è una buona idea e può avere conseguenze non intenzionali nelle applicazioni importate dalle versioni anteriori. Più difettoso ancora, ci sono edizioni di prestazione serie connesse con il carico della forma che ha parecchi subforms in cui l'accesso sta calcolando fuori e sta raccogliendo i dati dalle tabelle riferite di multiplo.

Di nuovo, la soluzione è di spegnere i subdatasheets regolando la proprietà a “[nessuno]„. Di nuovo, non ci è senso fare questo per difetto, in modo da dovete ricordarti agire in tal modo ogni volta che generate una tabella. Questo codice collegherà attraverso le vostre tabelle e spegnerà la proprietà:

Funzione TurnOffSubDataSh ()
    Db fioco come DAO.Database
    Tdf fioco come DAO.TableDef
    Prp fioco come DAO.Property
    conPropName di Const = “SubdatasheetName„
    conPropValue di Const = “[nessuno]„
   
    Regolar db = DBEngine (0) (0)
    Per ogni tdf in db.TableDefs
        Se (tdf. Attributi e dbSystemObject) = 0 allora
            Se tdf. Collegar = vbNullString ed il CSA (tdf. Nome) <> 126 allora 'allegati, o temp.
                Se non HasProperty (tdf, conPropName) allora
                    Regolare il prp = tdf.CreateProperty (conPropName, dbText, conPropValue)
                    prp del tdf. Properties.Append
                Altrimenti
                    Se tdf. conPropValue delle proprietà (conPropName <> ) allora
                        tdf. Proprietà (conPropName) = conPropValue
                    Concluder se
                Concluder se
            Concluder se
        Concluder se
    Dopo
   
    Regolare il prp = niente
    Regolare il tdf = niente
    Regolar db = niente
Concludere la funzione

Funzione pubblica HasProperty (obj come oggetto, strPropName come stringa) come booleano
    'Scopo:   Di ritorno allineare se l'oggetto ha la proprietà.
    Oscurare varDummy come variante
   
    Sull'errore riprendere dopo
    varDummy = obj. Proprietà (strPropName)
    HasProperty = (Err.Number = 0)
Funzione di conclusione
Altre soluzioni  
 
programming4us programming4us