De følgende afsnit viser, hvordan du bruger medarbejderformularerne, og hvordan du programmerer dem. Objektnavnene er angivet, så du nemt kan undersøge dem i Databasen Northwind 2.0 Starter Edition.
Disse er vigtige oplysninger om brug af medarbejderlisteformularen:
-
Fra og med hovedmenuen viser valg af Medarbejdere i menuen til venstre en liste over medarbejdere (sfrmMainMenu_EmployeeList) i arbejdsområdet til højre.
-
Hver medarbejders id er et link til at åbne den pågældende medarbejders post i en pop op-formular for at redigere vedkommendes oplysninger.
-
Hvis du vil tilføje en ny medarbejder, skal du klikke på knappen Tilføj medarbejder yderst til højre i kolonneoverskriften, som åbner en ny medarbejderpost i en pop op-formular (sfrmEmployeeDetail_OrderList) for at tilføje vedkommendes oplysninger.
Disse er vigtige oplysninger om brug af pop op-formularen medarbejderoplysninger:
-
Pop op-formularen medarbejderoplysninger (frmEmployeeDetail) gør det muligt at redigere og tilføje medarbejderposter.
-
Der kræves tre felter for alle medarbejdere: Fornavn, Efternavn og Stilling.
-
Standardfejlmeddelelser i Access giver dig besked, når en eller flere ikke er fuldført, før du forsøger at gemme medarbejderposten. Der anvendes ingen validering på andre felter, f.eks. mailadresse og telefonnumre. Brugerne er ansvarlige for korrekt formatering, f.eks. (000) 000-000. Standardvalidering i Access på rullelisten for Titler begrænser poster til en liste over forhåndsvalgte værdier. Du kan tilføje nye titler igen ved hjælp af access-standardfunktionsmåden for værdifeltkontrolelementer. Hvis du vælger rullemenuen i formularen, vises ikonet Rediger.
-
Medarbejderbilleder gemmes i tabellen som et felt til vedhæftede filer. Du tilføjer nye billeder eller ændrer eksisterende billeder ved hjælp af standardfunktionsmåden i Access for vedhæftede felter.
-
Hvis en medarbejder har oprettet ordrer, viser underformularen i højre side af pop op-vinduet med medarbejderoplysninger disse ordrer i dataarkvisning.
-
En eksisterende ordre for den pågældende medarbejder kan redigeres ved at klikke på linket Ordre-id # i underformularen Ordrer (sfrmOrderDetails).
Medarbejderformularerne bruger både VBA og integrerede makroer i kontrolelementer i formularer til at udføre grundlæggende logik. De indeholder to enkeltstående makroer og flere integrerede makroer.
Medarbejderliste
-
Formularen Medarbejderliste (sfrmMainMenu_EmployeeList) henter sine data fra en simpel forespørgsel qryEmployeeList (fra egenskaben Postkilde ). Det anbefales at basere en dataindtastningsformular på en forespørgsel med én tabel.
-
Kontrolelementer på medarbejderlisteformularen er aktiveret, hvilket betyder, at du kan vælge dem og låst, hvilket betyder, at de er skrivebeskyttede.
-
Feltet Titel, som er baseret på et felt med flere værdier, er en rulleliste eller et kombinationsfelt. Dens rækkekilde er en værdiliste, hvilket betyder, at de valgfrie elementer, der er tilgængelige, er indeholdt direkte i det pågældende felt. Listen har egenskaben Begræns til liste angivet til "Ja", fordi denne formular ikke er beregnet til redigering. Feltet med flere værdier medtages kun som en illustration af funktionen, ikke som en anbefaling.
-
På medarbejderlisten (sfrmMainMenu_EmployeeList) reagerer to Under-procedurer for taster op - og tast ned-hændelser på en brugers markørbevægelser i dataarkvisningen. De registrerer retningen af en markørbevægelse (venstre, højre, over eller under) og kalder VBA-funktioner, der flytter fokus til det relevante kontrolelement.
-
Du redigerer eksisterende medarbejderposter og tilføjer nye i detaljeformularen (frmEmployeeDetail).
-
Du kan åbne formularen medarbejderoplysninger fra medarbejderlisten som en redigerbar pop op-formular på en af to måder:
-
Ved at vælge et Medarbejder-id, der er formateret til at blive vist som et link, skal du åbne formularen med medarbejderoplysninger og filtrere den til kun den pågældende medarbejderpost.
-
Ved at vælge navnet Tilføj medarbejder i formularhovedet for at åbne formularen med medarbejderoplysninger og flytte fokus til en ny post. Alle aktuelle poster er i formularens postkilde.
Bemærk, at de to metoder kan have forskellige indvirkninger på ydeevnen. Filtrering af en formular til en enkelt post minimerer den mængde data, der skal overføres fra tabellen. Med et lille postsæt er forskellen muligvis ikke mærkbar.
-
Medarbejderoplysninger
-
Formularen med medarbejderoplysninger (frmEmployeeDetail) henter sine data fra en simpel forespørgsel, qryEmployeeDetails (fra formularens Postkilde-egenskab ). Det anbefales at basere en dataindtastningsformular på en forespørgsel med én tabel.
-
SELECT-delsætningen i qryEmployeeDetails anvender jokertegnet stjerne (*) til at markere alle felter i tabellen, mens SELECT-delsætningen i qryEmployeeList viser bestemte felter. Brug af jokertegnet gør det muligt at hente nye felter i en underliggende tabel uden yderligere redigering af forespørgslen. Dette er ikke muligt med en liste over bestemte felter. En liste over bestemte felter begrænser postsættet til kun de felter, der kun skal bruges i formularen vis. Dit design skal være baseret på overvejelser om, hvilken tilgang der er mere passende til dit krav, selvom præference bør gå til den tilgang, der mindst sandsynligt kræver fremtidig vedligeholdelse, hvilket er brugen af jokertegnet.
-
Kontrolelementer i formularen med medarbejderoplysninger aktiveres og er ikke låst, hvilket betyder, at du kan vælge og redigere dem.
-
Feltet Titel, som er baseret på et felt med flere værdier, er en rulleliste eller et kombinationsfelt. Dens rækkekilde er en værdiliste, hvilket betyder, at de valgfrie elementer, der er tilgængelige, er indeholdt direkte i det pågældende felt. Listen har egenskaben Begræns til liste angivet til "Nej", fordi denne formular er beregnet til redigering. Tilføjelse eller redigering af titler bruger den indbyggede Access-metode, så der kræves ingen kode. Feltet med flere værdier medtages kun som en illustration af funktionen, ikke som en anbefaling.
-
Du kan redigere eksisterende medarbejderposter og nye i detaljeformularen.
-
Du kan åbne formularen medarbejderoplysninger fra medarbejderlisten som en redigerbar pop op-formular på en af to måder:
-
Ved at vælge et Medarbejder-id, som er formateret til at blive vist som et link, skal du åbne formularen med medarbejderoplysninger og filtrere den til kun den pågældende medarbejderpost.
-
Ved at vælge navnet Tilføj medarbejder i formularhovedet for at åbne formularen med medarbejderoplysninger og flytte fokus til en ny post. Alle aktuelle poster er i formularens postkilde.
-
-
Filtrering af en formular til en enkelt post minimerer den mængde data, der skal overføres til formularen fra tabellen. Med et lille postsæt, f.eks. eksempeldataene, er forskellen muligvis ikke mærkbar.
-
Underformularkontrolelementet (sfrmEmployeeDetail_OrderList) til højre for Personal Information viser ordrer for den aktuelt valgte medarbejder (hvis relevant). Underformularen i underformularkontrolelementet bruges igen fra sektionen Ordrer . De indbyggede Egenskaber for Access LinkMasterFields/LinkChildFields for underformularkontrolelementet synkroniserer og filtrerer poster, der vises for hver medarbejder.
-
I medarbejderoplysninger (frmEmployeeDetail) svarer to Under-procedurer i formularens VedAktuel hændelse og VedLukning-hændelse på disse hændelser:
-
I Aktuel vises eller skjules navnet Tilføj medarbejder , afhængigt af om den aktuelle post er en eksisterende, eller hvornår det er en post for en ny medarbejder, som er startet, men endnu ikke gemt.
-
Når du er ved at lukke , udføres der to vedligeholdelseshandlinger. Den genforespørger Postsæt i underformularen medarbejderdetaljer for at opdatere eventuelle tilføjelser eller ændringer, der er foretaget i detaljeformularen. Den gensynkroniser visningen af medarbejderantal i hovedmenuen ved at kalde den pågældende makro.
-
Makroer
macMainMenu_UpdateSubs Denne makro er separat og kører, når visse hændelser indtræffer, herunder medarbejderformularerne. Inden for macMainMenu_UpdateSubs grupperes undermakroer efter de funktioner, de gælder for. For medarbejdere synkroniserer undermakroen antallet af medarbejderposter med det viste antal i hovedmenuen.
Integrerede makroer Medarbejderformularer drives primært af integrerede makroer, der er indeholdt i formularen og kan kun redigeres fra formularen. På medarbejderlisten (sfrmMainMenu_EmployeeList):
-
Hyperlinket Medarbejder-id Når du klikker på Medarbejder-id i medarbejderlisteformularen, åbnes formularen Medarbejderdetaljer, og fokus flyttes til den valgte medarbejderpost.
-
Tilføj medarbejderetiket Når du klikker på knappen Tilføj medarbejder , åbnes medarbejderdetaljeformularen (frmEmployeeDetail) og fokuserer på en ny post.
-
Medarbejderoplysninger Når du klikker på knappen Tilføj medarbejder i sidehovedet, gemmes den aktuelle post, og fokus flyttes til en ny post.