Domanda

Sono stato assunto per lavorare su un modulo per il monitoraggio esemplari. Ogni esemplare è associato ad un soggetto; ciascun campione ha anche un particolare slot in una scatola di 9 x 9. Per facilità di inserimento dati, Credo che sarebbe meglio se il modulo di accesso rispecchiato scatola stessa (e di sue cartacei che verranno utilizzati per immettere dati nel accesso): nove colonne da nove righe, con ciascun elemento costituito essenzialmente da un testo scatola per l'ID campione. Questo è fondamentalmente come mi piacerebbe farlo sembrare:

alt text

Quindi, la persona di inserimento dati sarebbe essenzialmente digitare gli ID numero di casella e campioni, quindi fare clic su "Crea Records" per far apparire tutti i record in esistenza (è possibile vedere alcune altre cose succedendo qui, ma che non è davvero importante diritto adesso). Io non sono davvero sicuro circa il modo migliore di codificare questo, però. In questo momento, il processo di meglio che posso pensare è quello di: 1) eseguire una query di inserimento per creare la casella se non esiste, 2) eseguire una query di inserimento per creare il soggetto (persona), se non esiste e 3) eseguire una query di inserimento per ogni campione, hard-coded nella riga e colonna (es box_col = 'a', box_row = '1').

Nota: l'ID del soggetto e l'ID del campione sarebbe sia essere analizzata fuori dal campo ID - è goofy, non la mia idea, ma è così che è impostato su. Posso gestire questo, però.

Questo è un certamente un ripiego, ma non sono sicuro che altro fare e la maggior parte di quello che ho cercato su google up non è stata pertinente alla creazione a più record da un unico modulo. C'è un modo migliore per fare questo? Dovrei semplicemente abbandonare l'idea e andare con un approccio più tradizionale legato sottomodulo? Sarei molto grato per le vostre intuizioni e suggerimenti. Grazie mille.

È stato utile?

Soluzione

Questo potrebbe essere tutto fatto in una forma sub - tuttavia, presumo per semplicità (meno click, più facile l'esperienza degli utenti, e l'intuizione) che hai progettato in modo che l'utente finale vede tutto lui / lei ha bisogno di entrare. Non c'è niente di sbagliato nel fare in questo modo. Una volta che i dati sono tutti immesso semplicemente un pulsante sul modulo che fa i molteplici inserti in una sola volta. Inizia a 1 e comprendono 9 iterazioni ogni volta che l'emissione di una nuova dichiarazione INSERT.

Una volta che la dichiarazione è stata completata Io personalmente mettere un po 'segno di spunta accanto ad ogni riga in modo che se un inserto riuscì sarebbe controllare vero, altrimenti falso. Potresti essere abile e utilizzare un verde immagine / rosso. Dopo aver completato il processo di tutti i campi dovrebbero essere cancellati che consente l'ingresso aggiuntivo.

non vedo un problema con quello che hai.

Altri suggerimenti

FRIG. Ho appena perso una decina di minuti di battitura. Questo è il motivo per cui non mi preoccupo per i moduli web based. Anche se ad essere onesti questa è la prima volta che succede su StackOverflow.

Non si ha realmente bisogno di visualizzare i dati in seguito nello stesso formato come è entrato. Se si può solo visualizzare sottomoduli regolari che è almeno la metà del lavoro come non avete più bisogno di fare aggiornamenti di questo modulo.

Si noti inoltre che v'è un'amaximum vita di 768, se ricordo bene, controlli per modulo. 9 x 9 x 2 è 162 quindi vi troverete bene lì. Tuttavia, se si decide di cancellare e ricreare un sacco di cotrols si potrebbe essere nei guai. Se si ha colpito quel limite penso che si salva il form sotto un nome distinto dovrebbe azzerare il contatore.

Nota È possibile utilizzare il seguente costrutto per riferirsi a controlli e rendere la vita più facile.

Me.Controls("abc" & Row & column) 

Per esempio, nel dopo l'aggiornamento del controllo tipo si potrebbe usare

call InsertRecords(3, "B")

sub InsertRecords(row as integer, Column as string)
....
cboTypeValue = Me.Controls("cboTypeID" & Row & Column) 
....

Questo potrebbe essere utilizzato come una sorta di controlli di accesso nativi solo griglia.

Se qualcuno inviare un esempio di come creare sottomodulo non legato personalizzato con riga per ogni record legato ed un codice per ciclo e salvarlo nella tabelle sarebbe solo grande.

Non ci sarebbe tanto controlli e non avrebbe alcun limite per il numero di campi nel modulo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top