Applies ToAccess за Microsoft 365 Access 2021 Access 2019

Следващите раздели показват как да използвате формулярите за служители и как да го програмите. Имената на обектите са предоставени, така че да можете лесно да ги прегледате в базата данни Northwind 2.0 Starter Edition.

Това са важни подробности за използването на формуляра за списък със служители:

  • Започвайки от главното меню, избирането на Служители от менюто вляво показва списък със служители (sfrmMainMenu_EmployeeList) в работната област вдясно.

  • ИД на всеки служител е хипервръзка, за да отворите записа за този служител в изскачащ формуляр, за да редактирате подробните данни за него.

  • За да добавите нов служител, щракнете върху бутона Добавяне на служител най-вдясно на заглавния ред, който отваря нов запис за служител в изскачащ формуляр (sfrmEmployeeDetail_OrderList), за да добавите подробностите за него.

Това са важни подробности за използването на изскачащия формуляр за подробни данни за служителите:

  • Изскачащият формуляр с подробни данни за служителите (frmEmployeeDetail) позволява редактиране и добавяне на записи за служители.

  • За всички служители са необходими три полета: "Собствено име", "Фамилно име" и "Длъжност".

  • Съобщенията за грешка по подразбиране на Access ви известяват, когато едно или повече не са завършени, преди да се опитате да запишете записа за служителя. Не се прилага проверка за други полета, като например имейл адрес и телефонни номера. Потребителите са отговорни за правилното форматиране, като например (000) 000-000. Проверката по подразбиране на Access в контролата на падащото меню за Заглавия ограничава записите до списък с предварително избрани стойности. Можете отново да добавите нови заглавия, като използвате поведението по подразбиране на Access за контроли на полета за стойност. Избирането на падащото меню във формуляра показва иконата за редактиране.Многозначно поле

  • Картините на служителите се съхраняват в таблицата като поле за прикачени файлове. Добавяте нови изображения или променяте съществуващи изображения, като използвате поведението по подразбиране на Access за полета за прикачени файлове.Пример за прикачена картина

  • Ако служител е създал поръчки, подформулярът от дясната страна на изскачащия списък с подробни данни за служителя показва тези поръчки в изглед на лист с данни.

  • Всяка съществуваща поръчка за този служител може да бъде редактирана чрез щракване върху иД на поръчка # с хипервръзка в подформуляра Поръчки (sfrmOrderDetails).

Формулярите за служители използват както VBA, така и вградени макроси в контроли във формуляри, за да изпълнят основна логика. Те съдържат два самостоятелни макроса и няколко вградени макроса.

Списък със служители

  • Формулярът Списък със служители (sfrmMainMenu_EmployeeList) получава своите данни от qryEmployeeList на проста заявка (от свойството RecordSource ). Базирането на формуляр за въвеждане на данни върху заявка от една таблица е препоръчителна практика.

  • Контролите във формуляра за списък със служители са разрешени, което означава, че можете да ги изберете и да ги заключите, което означава, че са само за четене.

  • Полето за заглавие, което се базира на многозначно поле, е падащ списък или разгъващ се списък. Неговият източник на редове е списък със стойности, което означава, че незадължителните налични елементи се съдържат директно в това поле. В списъка свойството Ограничаване до списъка е настроено на "Да", защото този формуляр не е предназначен за редактиране. Многозначното поле е включено само като илюстрация на функцията, а не като препоръка.

  • В списъка със служители (sfrmMainMenu_EmployeeList) две процедури sub за събитията Key Up и Key Down отговарят на движенията на курсора на потребителя в изгледа на лист с данни. Те откриват посоката на движение на курсора (наляво, надясно, над или под) и извикват VBA функции, които преместват фокуса върху подходящата контрола.

  • Редактирате съществуващи записи за служители и добавяте нови във формуляра за подробни данни (frmEmployeeDetail).

  • Можете да отворите формуляра с подробни данни за служителя от списъка със служители като редактируем изскачащ формуляр по два начина:

    • Като изберете ИД на служител, който е форматиран да се показва като хипервръзка, отваряте формуляра за подробни данни за служителя и го филтрирате само до записа за този служител.

    • Като изберете етикета "Добавяне на служител" в заглавката на формуляра, за да отворите формуляра с подробни данни за служителя и да преместите фокуса върху нов запис. Всички текущи записи са в източника на записи на формуляра.

    Имайте предвид, че двата подхода могат да окажат различно въздействие върху производителността. Филтрирането на формуляр в един запис намалява количеството данни, които трябва да бъдат прехвърлени от таблицата. При малък набор записи разликата може да не е забележима.

Подробни данни за служителя

  • Формулярът с подробни данни за служителя (frmEmployeeDetail) получава своите данни от проста заявка – qryEmployeeDetails (от свойството RecordSource на формуляра). Препоръчва се практика да базирате формуляр за въвеждане на данни върху заявка от една таблица.

  • Клаузата SELECT в qryEmployeeDetails използва заместващия символ звездичка (*), за да избере всички полета в таблицата, докато клаузата SELECT в qryEmployeeList изброява конкретни полета. Използването на заместващия символ позволява извличането на нови полета в базовата таблица без допълнително редактиране на заявката. Това не е възможно със списък от конкретни полета. Списък с конкретни полета ограничава набора записи само до полетата, необходими във формуляра само за показване. Вашият проект трябва да се основава на това кой подход е по-подходящ за вашето изискване, въпреки че трябва да се предпочита подходът, който е най-малко вероятно да изисква бъдеща поддръжка, което е използването на заместващия символ.

  • Контролите във формуляра за подробни данни за служители са разрешени и не са заключени, което означава, че можете да ги избирате, както и да ги редактирате.

  • Полето за заглавие, което се базира на многозначно поле, е падащ списък или разгъващ се списък. Неговият източник на редове е списък със стойности, което означава, че незадължителните налични елементи се съдържат директно в това поле. В списъка свойството Ограничаване до списъка е настроено на "Не", защото този формуляр е предназначен за редактиране. Добавянето или редактирането на заглавия използва вградения метод на Access, така че не се изисква код. Многозначното поле е включено само като илюстрация на функцията, а не като препоръка.

  • Можете да редактирате съществуващи записи за служители и нови записи във формуляра за подробни данни.

  • Можете да отворите формуляра с подробни данни за служителя от списъка със служители като редактируем изскачащ формуляр по два начина:

    • Чрез избиране на EmployeeID, който е форматиран да се показва като хипервръзка, отварянето на формуляра за подробни данни за служителя и филтрирането му само до записа за този служител.

    • Като изберете етикета "Добавяне на служител" в заглавката на формуляра, за да отворите формуляра с подробни данни за служителя и да преместите фокуса върху нов запис. Всички текущи записи са в източника на записи на формуляра.

  • Филтрирането на формуляр в един запис намалява количеството данни, които трябва да се прехвърлят във формуляра от таблицата. При малък набор записи, като например примерните данни, разликата може да не е забележима.

  • Контролата за подформуляр (sfrmEmployeeDetail_OrderList) вдясно от Personal Information показва поръчките за текущо избрания служител (ако има такива). Подформулярът в контролата на подформуляра се преоразмерява от секцията "Поръчки ". Вградените свойства на Access LinkMasterFields/LinkChildFields на контролата на подформуляра синхронизират и филтрират записите, показани за всеки служител.

  • В подробните данни за служителите (frmEmployeeDetail) две Подпроцеси на събитието при текущо събитие на формуляра и Събитие при затваряне отговарят на тези събития:

    • На Текущ показва или скрива етикета Добавяне на служител в зависимост от това дали текущият запис е съществуващ, или когато е запис за нов служител, стартиран, но все още не е записан.

    • При затваряне извършва две действия по поддръжката. Той повторно извършва заявки към подформуляра с подробни данни за служителя, за да актуализира всички допълнения или промени, направени във формуляра за подробни данни. Той синхронизира повторно показването на броя служители в главното меню, като извиква този макрос.

Макроси

macMainMenu_UpdateSubs       Този макрос е самостоятелен и се изпълнява, когато възникнат определени събития, включително формулярите за служителите. В рамките на macMainMenu_UpdateSubs подмакросите са групирани според функциите, за които се прилагат. За служители подмакросът синхронизира броя на записите за служители с показания брой в главното меню.

Вградени макроси    Формулярите за служители се управляват предимно от вградени макроси, съдържащи се във формуляра, и могат да се редактират само от формуляра. В списъка със служители (sfrmMainMenu_EmployeeList):

  • EmployeeID хипервръзка       Щракването върху ИД на служител във формуляра за списък служители отваря формуляра с подробни данни за служителя и задава фокуса върху избрания запис за служител.

  • Добавяне на етикет на служител      Щракването върху бутона Добавяне на служител отваря подробния формуляр за служител (frmEmployeeDetail) и задава фокуса върху нов запис.

  • Подробни данни за          служителя  Щракването върху бутона Добавяне на служител в горния колонтитул записва текущия запис и задава фокуса върху нов запис.

Вж. също

Northwind 2.0 Starter Edition

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.