Bruk en midlertidig standardverdi for å effektivisere dataregistrering i Access

Det er mange muligheter for å redusere dataregistrering, men her er det du kanskje ikke har vurdert - å legge inn midlertidige standardverdier. Hvis du gjør det, vil du redusere tastetrykk når poster deler den samme verdien, for eksempel den samme postnummeret, den samme byen, den samme kunden og så videre, men den delte verdien endres fra tid til annen.

Denne situasjonen oppstår sannsynligvis mer enn du er klar over. Anta for eksempel at en dataregistreringsoperatør legger inn ordrer behandlet av salgspersonell som støtter spesifikke postnumre, byer eller regioner. Dataregistreringsoperatøren vet at hver ordre i en bestemt bunke vil ha samme postnummer, by og så videre. Eller kanskje din dataregistreringsoperatør mottar hauger med arbeidsordreskjemaer fra servicesjefer som kun betjener ett selskap. I så fall vil hver form i haugen ha samme kundeverdi.

Når en dataregistreringsoperatør legger inn flere poster med den samme verdien etter hverandre, kan du lette dataregistreringsbelastningen bare litt ved å gjøre den relaterte verdien til standardverdien for det feltet - midlertidig. På den måten trenger ikke operatøren å legge inn verdien for hver nye post - den er allerede der!

TechRepublics Microsoft Office Suite-nyhetsbrev, levert hver onsdag, er designet for å hjelpe brukerne dine med å få mest mulig ut av Word, Excel og Access.

Å installere denne løsningen er enklere enn du kanskje tror - det tar bare litt kode i kontrollens AfterUpdate- hendelse. Ved å bruke eksempelskjemaet nedenfor, bruker vi denne teknikken for å lage midlertidige standardinnstillinger for tre kontroller kalt txtCustomer, txtCreatedBy og dteSubmittedDate . På tabellenivå er SubmittedDate- feltets standardverdi dato (). (Du kan jobbe med de fleste hvilken som helst form, bare sørg for å oppdatere kontrollnavnene deretter.)

Hvis du vil legge til hendelsesprosedyrene for de tre kontrollene, åpner du skjemaet i designvisning og klikker deretter på kodeknappen i Verktøy-gruppen for å åpne skjemaets modul. Skriv inn følgende kode:

 Privat sub dteSubmittedDate_AfterUpdate (Avbryt som heltall) 
 'Sett gjeldende datoverdi til standardverdi. 
 dteSubmittedDate.DefaultValue = Chr (35) & dteSubmittedDate.Value & Chr (35) 
 Debug.Print dteSubmittedDate.DefaultValue 
 Slutt sub 
 Privat sub txtCreatedBy_AfterUpdate (Avbryt som heltall) 
 'Sett gjeldende verdi til standardverdien. 
 txtCreatedBy.DefaultValue = Chr (34) & txtCreatedBy.Value & Chr (34) 
 Slutt sub 
 Privat sub txtCustomer_AfterUpdate (Avbryt som heltall) 
 'Sett gjeldende kundeverdi til standardverdi. 
 txtCustomer.DefaultValue = Chr (34) & txtCustomer.Value & Chr (34) 
 Slutt sub 

Når du åpner skjemaet i skjemavisning, vises feltet AutoNumber (Ny) og kontrollen Submitted Date viser gjeldende dato. Skriv inn en ny post. Dette vil utløse AfterUpdate-hendelsene, som vil bruke verdiene du oppgir som standardverdier for de tilsvarende kontrollene:

  • ABC, International er nå standardverdien for txtCustomer.
  • Susan Harkins er nå standardverdien for txtCreatedBy.
  • 1/20/2011 er nå standardverdien for dteSubmittedDate. Standardverdien ble generert av Dato ().

Når du klikker på knappen Ny post, fyller de nylig innstilte standardverdiene automatisk kontrollene. Den eneste verdien datainnføringsoperatøren må oppgi er servicekoden.

Det betyr at dataregistreringsoperatøren kan omgå tre kontroller for hver nye post inntil en verdi endres. Når for eksempel dataregistreringsoperatøren går videre til bunken med ordreskjemaer for RabbitTracks, vil han eller hun oppdatere verdien for kunde, CreatedBy og SubmittedDate for den første posten i den batch. Hvis du gjør det, tilbakestilles de midlertidige standardverdiene. Derfor er dette en så nyttig teknikk for batchinndata - ettersom operatøren jobber gjennom bunken med skjemaer, oppdateres standardverdiene slik at de samsvarer med de nye inndataverdiene, automatisk.

Det er viktig å huske at denne koden oppdaterer kontrollens standardverdigeiendom på skjemanivå. Denne innstillingen på formnivå har forrang for et ekvivalent på tabellnivå. Den overskriver imidlertid ikke tabellegenskapen. Hvis du sletter innstillingen på formnivå, sparker egenskapen på bordnivå rett inn.

Når du lukker skjemaet, lagrer det den midlertidige standardverdien. Følgelig, når du neste åpner skjemaet, vil det bruke det siste settet med standardverdier. Hvis du vil at skjemaet skal fjerne disse egenskapene fra økt til økt, legger du til følgende kode i skjemaets modul:

 Privat subform_Open (Avbryt som heltall) 
 'Sett standardverdiegenskaper til ingenting. 
 dteSubmittedDate.DefaultValue = vbNullString 
 txtCreatedBy.DefaultValue = vbNullString 
 txtCustomer.DefaultValue = vbNullString 
 Slutt sub 
Når du åpner skjemaet, vil Open-hendelsen tømme de tre tidligere angitte standardverdiene. Det betyr at txtCustomer og txtCreatedBy vil være blanke og dteSubmittedDate vil vise gjeldende dato (resultatet av Dato (), feltets innstilling for standardnivå for tabellnivå).

Denne teknikken virker kanskje ikke så mye for deg. Men noen brukere bruker mye tid på å legge inn data, så alt du kan gjøre for å eliminere enda noen få trinn, vil være en kjærkommen forbedring.

© Copyright 2020 | mobilegn.com