Prihláste sa s kontom Microsoft
Prihláste sa alebo si vytvorte konto.
Dobrý deň,
Vyberte iné konto.
Máte viacero kont
Vyberte konto, s ktorým sa chcete prihlásiť.

Výberom ľubovoľnej témy nižšie získate informácie o zamestnancoch vo vydaní Northwind Developer Edition. 

Zamestnanci majú jeden rozdelený formulár, ktorý funguje ako formulár so zoznamom a podrobnosťami. 

Pomocou funkcie Zamestnanci môžete pridávať nových zamestnancov a aktualizovať informácie o existujúcich zamestnancoch. 

Vyberte kartu Zamestnanci na páse s nástrojmi a zobrazte zamestnancov vo formulári zoznam zamestnancov frmEmployeeList, ktorý je rozdeleným formulárom s nasledujúcimi funkciami: 

  • Horná časť formulára je jedno zobrazenie jedného zamestnanca.

  • Dolná časť formulára je údajové zobrazenie všetkých zamestnancov.

  • Výberom zamestnanca v oboch častiach sa tiež nastaví zameranie na daného zamestnanca v druhej časti rozdeleného formulára.

  • Zamestnancov môžete pridávať, upravovať alebo odstraňovať v ľubovoľnej časti rozdeleného formulára.

  • Pri použití rozdeleného formulára s časťou údajového zobrazenia sa predpokladá, že zdroj záznamov formulára obsahuje viacero záznamov.

Potenciálny vplyv rozdeleného formulára na výkon 

Väčšina vývojárov radšej nenačíta nefiltrovanú tabuľku alebo dotaz ako zdroj záznamov pre formulár. Filtrovanie formulára na jeden záznam minimalizuje množstvo údajov, ktoré sa majú preniesť z tabuľky do formulára. Pri lokálnej accessovej tabuľke môže byť rozdiel medzi načítaním filtrovaného zdroja záznamov a malého nefiltrovaného zdroja záznamov sotva viditeľný. Tento výkon sa však stratí, keď sa accessové tabuľky nahradia vzdialenou serverovou databázou, ako je napríklad SQL Server. 

Tabuľka zamestnancov v Northwind by nemala rásť veľmi veľká, takže je to kandidát na nefiltrovaný zdroj záznamov. Formuláre viazané na iné tabuľky, ako sú napríklad podrobnosti objednávky, ktoré sa potenciálne zväčšia na tisíce záznamov, však nie sú kandidátmi na nefiltrovaný zdroj záznamov.
 

ÚPRAVA ZAMESTNANCOV

Pri pridávaní alebo úprave záznamov v rozdelenom formulári môžu používatelia zadávať hodnoty v zobrazení formulára alebo údajovom zobrazení. Niektoré polia sú povinné, niektoré voliteľné. Formulár overí prítomnosť hodnôt v povinných poliach. Ďalšie informácie nájdete nižšie v časti Požadované overenie poľa .

Vyhľadávacie tabuľky, zoznamy hodnôt a ovládacie prvky rozbaľovacieho zoznamu

  • Rozbaľovací zoznam Názvy obmedzuje položky na zoznam vopred vybratých názvov. Názvy sa nachádzajú vo vyhľadávacej tabuľke s názvom Názvy.

  • Niektoré očakávané možnosti sú už uložené vo vyhľadávacej tabuľke, ale používatelia môžu pridávať nové názvy do vyhľadávacej tabuľky pomocou predvoleného správania Accessu pre rozbaľovacie pole alebo ovládacích prvkov rozbaľovacieho zoznamu.

    • Vlastnosť Limit na zoznam rozbaľovacieho poľa Názov je nastavená na hodnotu Áno a formulár úprav názvov je identifikovaný vo vlastnosti Formulár na úpravu položiek zoznamu. Výberom rozbaľovacieho zoznamu vo formulári sa na dolnom okraji zobrazí ikona úprav. 
      ...

Kliknutím na ikonu úprav sa otvorí formulár úprav Názvy , frmEmployeeTitles, v ktorom môžete zmeniť alebo pridať do zoznamu schválených názvov. 

POZNÁMKA:Vo väčšine produkčných prostredí by úprava alebo pridávanie názvov bolo obmedzené na používateľov s rozšírenými oprávneniami.
 

Self-Referential vyhľadávacie polia

Funkcia zamestnanca ilustruje koncept poľa identifikácie Self-Referential. Ak chcete podporiť označenie nadriadeného zamestnanca, tabuľka obsahuje pole SupervisorID s IDzamestnancovpre ostatných zamestnancov. Ak chcete určiť nadriadeného, do tohto poľa sa zadá identifikácia zamestnanca pre iného zamestnanca. Access v tomto vzťahu vynucuje referenčnú integritu.

Id nadriadeného sa implementuje vo formulári zamestnanca ako rozbaľovací zoznam alebo rozbaľovacie pole. jeho zdroj riadkov je filtrovaná množina záznamov z tabuľky Zamestnanec. Keďže ide o samoreferenčnú hodnotu, dotaz musí vylúčiť vlastné ID zamestnanca vybratého zamestnanca. Napríklad zdroj riadkov pre SupervisorID pre zamestnanca Karen Finster nezahŕňa Karen vlastné EmployeeID. Nemôže byť jej vlastným nadriadeným.

Polia a ovládacie prvky prílohy

Obrázky zamestnancov sú uložené v poli prílohy v tabuľke. Pri pridávaní nových obrázkov alebo pri zmene existujúcich obrázkov použijete predvolené accessové správanie pre polia príloh. 
...

POZNÁMKA: Do tabuľky Zamestnanci sme zahrnuli pole prílohy na ilustráciu funkcie v Accesse. Vložené obrázky zvyšujú veľkosť accdbs , a preto sa nepovažujú za najlepší postup. Pred implementáciou v produkčnej aplikácii dôkladne vyhodnoťte svoje prostredie. Preferovanou alternatívou je sieťový priečinok, v ktorom sa ukladajú všetky obrázky, a prepojenie v textovom poli v tabuľke, ktoré namiesto poľa Príloha obsahuje cestu k obrázku.

Podformulár so súvisiacimi informáciami

Podformulár Objednávky (na pravej strane formulára Zamestnanec) zobrazuje posledné objednávky (ak existujú) spracované zamestnancom. Podformulár obsahuje zoznam objednávok v údajovom zobrazení, zoradené od najnovšieho po najstaršie. Ak chcete upraviť existujúcu objednávku pre daného zamestnanca, kliknite na hypertextové prepojenie ID objednávky # v podformulári Objednávky.

Zdroj záznamov formulára zamestnanca

Dotaz s názvom qryEmployees vráti záznamy vo formulári. Použitie dotazu namiesto tabuľky sa zvyčajne považuje za najvhodnejší postup. Dotaz vráti záznamy iba z jednej tabuľky. Dotaz je okrem toho možné parametrizovať tak, aby sa obmedzil počet vrátených záznamov. 

  • Klauzula Select tohto dotazu používa zástupný znak *na vrátenie všetkých polí z tabuľky Zamestnanec.

  • Dve vypočítavané polia v dotaze vrátia položky FirstName LastName a LastName, FirstName.
     

Vypočítané hodnoty v ovládacích prvkoch

POZNÁMKA: Vypočítavané polia nie sú uložené v tabuľke. však k dispozícii v zdroji záznamov formulára.

Väčšina ovládacích prvkov vo formulári Zamestnanec je povolená , takže ich môžete vybrať myšou alebo kartou v nich a nie sú uzamknuté , takže sa dajú upravovať. 

Okrem vstavaného správania Accessu vykonávajú subs a funkcie jazyka VBA vo formulároch, v ovládacích prvkoch vo formulároch a v samostatných moduloch základnú logiku požadovanú pre zamestnancov. Nasledujúca časť popisuje funkcie a kód, ktorý tieto funkcie implementuje. 

Vstavaná akcia ovládacieho prvku

Predvolené správanie selektora záznamov formulára: 

  • Kliknutím ľavým tlačidlom myši na selektor záznamu naľavo od formulára v jednom zobrazení sa aktuálny záznam uloží s akýmikoľvek úpravami. Uloženie kliknutím ľavým tlačidlom myši na selektor záznamu spustí príslušné podlokality a funkcie jazyka VBA.

  • Kliknutím pravým tlačidlom myši na selektor záznamu naľavo od formulára v jednom zobrazení sa zobrazí ponuka na vykonávanie akcií ako Vystrihnúť, Kopírovať alebo Prilepiť záznam. Odstránením alebo vystrihnutím záznamu sa spustí funkcia EmployeeCanBeDeleted popísaná nižšie.

  • Selektory záznamov musia byť povolené, aby formulár bol k dispozícii pre toto predvolené správanie.
     

Referenčná integrita pre záznamy vo formulári

Referenčná integrita zabraňuje odstráneniu zamestnancov, ktorí majú podriadené záznamy v súvisiacich tabuľkách. Preto Access vyvolá chybu, ak sa používateľ pokúsi odstrániť záznam s podriadenými záznamami. Formulár Zamestnanec spoločnosti Northwind Access nahrádza všeobecné predvolené chybové hlásenia týkajúce sa referenčnej integrity vlastnými správami.

Kód v postupe odstránenia formulára reaguje na pokusy o vystrihnutie záznamu z ponuky, ktorá sa zobrazí po kliknutí pravým tlačidlom myši, alebo na odstránenie záznamu pomocou klávesu Delete

Súkromná funkcia EmployeeCanBeDeleted kontroluje súvisiace záznamy daného zamestnanca v tabuľkách Objednávky, Nákupné objednávky, Zamestnanci a Oprávnenia zamestnancov

Ak sa nájdu, táto funkcia potlačí predvolené chybové hlásenie a informuje používateľa o dôvode, prečo sa záznam nedá odstrániť pomocou rovnakého všeobecného dialógového okna, ktoré používa formulár Zákazník na informovanie používateľa o dôvode, prečo zákazník nemôže byť odstránený.

Overenie

Zamestnanci implementujú overovanie a štandardné spracovanie chýb. Existujú dva typy overenia ovládacích prvkov.

  • Povinné polia

  • Štandardné formáty

Povinné overenie poľa

 Pre všetkých zamestnancov sa vyžadujú tri polia:

  • Meno

  • Priezvisko

  • Funkcia

V tejto verzii vývojára udalosť formulára Pred aktualizáciou overí povinné polia. Ak sa používateľ pokúsi uložiť záznam zamestnanca bez hodnôt jedného alebo viacerých požadovaných polí, ktoré nemajú overenie hodnoty, zruší ukladanie a zvýrazní všetky povinné polia, ktoré nemajú hodnotu. Vo formulári Zamestnanec v Northwind sa povinné overenie poľa spracováva udalosťou Pred aktualizáciou formulára, nie jednotlivými ovládacími prvkami.

Udalosť Pred aktualizáciou formulára Zamestnanec overí prítomnosť hodnôt pre tri povinné polia. Uložením nového alebo upraveného záznamu zamestnanca sa spustí udalosť formulára Pred aktualizáciou , ktorá volá verejné funkcie, ktoré kontroluujú prítomnosť alebo absenciu požadovaných hodnôt a reagujú na ne.

Modul modValidation obsahuje tieto funkcie:

  • Overiť formulár

  • Formát IsValidForm

  • HighlightInvalidControls

  • Ovládací prvok zvýraznenia

  • ValidateForm_RemoveHighlights

Spravovanie nových zamestnancov

Kliknutím na tlačidlo Pridať zamestnanca sa spustí btnNewEmployee_Click Private Sub, aby: 

  • uložiť aktuálny záznam a

  • nastavenie zamerania formulára na nový záznam
    '

Zástupný znak verzus pomenované polia v dotaze Select

Klauzula SELECT v tabuľke qryEmployees používa zástupný znak *navýber všetkých polí v tabuľke. Návrh dotazu so zástupnými znakmi automaticky obsahuje všetky novo pridané polia zo základnej tabuľky, čo nie je možné so zoznamom konkrétnych polí. Na druhej strane je možné uviesť konkrétne polia, ktoré obmedzia vrátenú skupinu záznamov iba na tie polia, ktoré sú potrebné vo formulári iba na zobrazenie.

Vhodné možnosti návrhu

Vaše návrhy by mali byť založené na vhodnom prístupe k vašim požiadavkám. Hoci, ak je to možné, preferencia by za normálnych okolností smerovalo k prístupu, ktorý by si najmenej pravdepodobne vyžadoval budúcu údržbu (t. j. prístup so zástupnými znakmi). 

Rozbaľovacie polia viazané na vyhľadávacie tabuľky – dva prístupy

Súvisiace položky, ako napríklad nadriadený zamestnanca, sa vo formulároch zobrazujú v rozbaľovacích zoznamoch alebo rozbaľovacích poliach. V dotaze zdroja záznamov formulára je potrebný iba cudzí kľúč pre identifikátor SupervisorID, pretože toto pole je viazané na pole Cudzí kľúč (IdDozora). Rozbaľovacie pole zobrazí aj zodpovedajúcu textovú hodnotu.

Toto je rozbaľovacie pole s dvoma stĺpcami so skrytým stĺpcom ID a viditeľným stĺpcom Popis. Vo formulári zamestnanca je rozbaľovacie pole Nadriadený viazané na jednoduchý dotaz s dvoma stĺpcami. Pozrite si vlastnosť RowSource pre supervízora.

V niektorých prípadoch však vyhľadávacia tabuľka neobsahuje samostatný primárny kľúč, a preto samotná textová hodnota je primárnym kľúčom.

Ak je zoznam možných hodnôt malý a veľmi stabilný, napríklad titul zamestnanca, často sa nazýva Uzavretá doména. Zmena alebo sčítanie hodnôt pre názov nie je bežné. Uzavreté vyhľadávacie tabuľky domény sú kandidátmi na prístup dotazu s jedným stĺpcom.

Vo formulári Zamestnanec je rozbaľovacie pole Názov viazané na dotaz Názvy s jedným stĺpcom. Pozrite si vlastnosť RowSource pre názvy. 

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.

Komunity pomôžu s kladením otázok a odpovedaním na ne, s poskytovaním pripomienok a so získavaním informácií od odborníkov s bohatými znalosťami.

Boli tieto informácie užitočné?

Aká je podľa vás jazyková kvalita textu?
Čo sa vám páčilo, prípadne čo nie?
Stlačením tlačidla Odoslať sa vaše pripomienky použijú na zlepšenie produktov a služieb spoločnosti Microsoft. Váš správca IT bude môcť tieto údaje zhromažďovať. Vyhlásenie o ochrane osobných údajov.

Ďakujeme za vaše pripomienky!

×