Преминаване към основното съдържание
Поддръжка
Влизане с Microsoft
Влезте или създайте акаунт.
Здравейте,
Изберете друг акаунт.
Имате няколко акаунта
Изберете акаунта, с който искате да влезете.

Изберете някоя тема по-долу, за да научите повече за управлението на фирми в изданието Northwind за разработчици. 

Забележка: Тази страница е указана в Access Developer Showcase Edition

В Northwind Starter Edition Клиентът е единственият тип фирма. В изданието за разработчици разширихме това, така че да включва клиенти, доставчици и доставчици

Освен това разширихме "Продукти ", за да включим няколко доставчика за даден продукт.   

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

Типове фирми и мястото, където се използват 

  • Клиент за поръчка

  • Доставчик за поръчка

  • Доставчик за поръчка за покупка

  • Доставчик за продукт

Освен това фирмите във версията northwind за разработчици могат да имат няколко контакта.
'

Фирми на лентата

Избирането на Фирми от лентата показва Фирми в Northwind в frmCompanyList

Списък на фирмите – frmCompanyList

Във версията за разработчици на Northwind frmCompanyList е разделен формуляр. Разделеният формуляр ви дава два изгледа на вашите данни едновременно – "Изглед на формуляр" и "Изглед на лист с данни". Освен това има горен и долен колонтитул.  В тази реализация няма да покажем изгледа за формуляр. Като не показваме изгледа за формуляр, ще имаме лист с данни с горен и долен колонтитул.  

Ето как постигаме това:  

В frmCompanyList разделителната лента между горния колонтитул и листа с данни не е видима. Свойството splitter Bar на формуляра е зададено на Не, като по този начин се скрива изгледът за формуляр. 

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

Разделите за горен и долен колонтитул на разделен формуляр ви позволяват да използвате командни бутони, изображения, текст(етикети) и всякакви други контроли на формуляр за достъп, които искате да подобрите работата на потребителя. За да научите повече за формулярите и разделените формуляри, можете да започнете оттук. Листовете с данни не показват секциите за горен и долен колонтитул.

Научете повече чрез Въведение във формулярите и Създаване на разделен формуляр
'

Формулярът "Списък на фирмите" поддържа тези пет действия:

  • Прилагане на потребителски, предварително вграден филтър, филтриране при поискване или и двете

  • Показване/скриване на полета

  • Създаване на етикети

  • Покажи филтъра

  • Добавяне на нова фирма

Щракнете двукратно някъде в подробния ред, за да отворите формуляра за подробни данни за фирмата (а не само върху ИД, както в други формуляри). 
'

Предварително създадени филтри и филтриране при поискване

Формулярът frmCompanyList е богат с възможности за филтриране на фирмите в Northwind.  В горната част на екрана можете да филтрирате с помощта на следните радио бутони:

  • Всички фирми (по подразбиране)

  • Само клиенти

  • Само доставчици

  • Само доставчици

Освен това са налични вградените опции за филтриране при поискване на листа с данни. Всички филтри, приложени към формуляра " Списък на фирмите" (предварително построени или при поискване), се подават и прилагат към frmCompanyDetail , когато бъде отворен.  

За да подадете филтри от един формуляр на друг, трябва първо да изчистите низа на филтъра на формуляра, така че да съдържа само имена на полета. Погледнете модула за код Open_frmCompanyDetail за по-подробно обяснение как се прави това и в frmCompanyПодробност към коментарите за Form_Load да видите как се прилага.

Предаваме информацията за филтъра във формуляра с подробности за фирмата чрез свойството OpenArgs на формуляра, вместо да отваряме формуляра с условие where .  Можете да научите повече за OpenArgs тук.


Показване/скриване на полета

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

Създаване на етикети

Бутонът Създаване на етикети отваря съветника за етикети на Access. Научете повече за съветника за етикети тук: Създаване на пощенски етикети в Access. 

Отваряне на подробни данни за фирмата

Double Click anywhere in a detail row to open frmCompanyDetail

Щракнете върху полето "ИД" (настроено като хипервръзка) или щракнете двукратно върху което и да е друго поле в подробния ред, за да отворите frmCompanyDetail на избраната фирма и да предадете всеки филтър на формуляр, който е приложен към списъка на фирмите, за да frmCompanyDetail.

Подробности за фирмата – frmCompanyDetail

На пръв поглед frmCompanyDetail може да изглежда сравнително проста.  Но не е така.  В кода зад формата се случва много неща!  Формулярът осветява следните действия и функции:

  • Няколко командни бутона и връзки

    • Добавяне на фирма

    • Имейл списък на фирми

    • Покажи филтъра

    • Изтриване на фирма

    • Отваряне на карта въз основа на адрес

    • Отваряне на уеб сайт от хипервръзка

  • Действия за отмяна или записване в режим на добавяне/редактиране

  • Бизнес правила за управление кога може да се променя тип фирма

  • Проверка на целостта на връзките преди събитието
    за изтриване '

Събитието Form_Load включва следните действия:

  • Използване на множество параметри, подадени към формуляра чрез OpenArgs и потребителската функция Northwind StringToDictionary

  • Използвайте свойството на формуляра OpenArgs , за да позволите на потребител да добави нова фирма , докато взима поръчка

  • Използване на техниката GoToRecord за добавяне на нова фирма

  • Използвайте техниката SearchForRecord , за да преминете към фирмата, избрана в frmCompanyList

  • Опции за разклоняване/условно изпълнение (вж. Form_Load събитие)

    • Option 1 - Case Statement

    • Опция 2 – вложена ако е друга

    • Опция 3 – ElseIf

    • Опция 4 – вложено If Else и ElseIf
      '

В събитието на Form_Current възниква следното: 

  • Можете да промените надпис на подформуляр и обект източник по време на изпълнение, като извикате подформуляра ManageFormOptions(). Тази подпрограма се извиква от няколко места в този формуляр. 
    '

Отмяна или записване на действия, когато сте в режим на добавяне или редактиране. 

Нашите формуляри за Access са обвързани.  Какво означава това?  От Microsoft:
"Обвързан формуляр е този, който е свързан директно към източник на данни, като например таблица или заявка, и може да се използва за въвеждане, редактиране или показване на данни от този източник на данни".

При обвързаните формуляри Access не изисква изрично да "запишете" данните си.  Когато преминете от един запис към следващия, Access автоматично записва данните ви.  Често това работи по желания от вас начин.  Какво става обаче, ако потребителят трябва да предприеме действие, за да посочи, че е готов за записване? 

Например формуляр frmCompanyDetail има подформуляр за контакти (sfrmCompanyDetail_Contacts).  И така, какво се случва, ако започнете да добавяте или редактирате фирмените данни – да речем телефонен номер – и спрете на пауза, за да коригирате правописна грешка, която забелязвате в информацията за контакт?  По подразбиране Access ще запише всички промени, които сте направили в записа на фирмата, когато щракнете върху записа за контакт, което не е това, което искате. 

В този формуляр показваме един начин да постигнете това с един запис за фирма.

Каква е причината бутонът "Отказ "? Превключващ клавиш отменя всички въведени или променени (но не записани) данни в контрола на формуляра. В това състояние иконата на молив се появява в селектора на запис (сива вертикална лента от най-лявата страна на реда).

След като обаче щракнете върху бутона Добавяне на фирма , ще забележите, че няма икона на молив, докато не започнете да въвеждате данни в новия запис на фирмата. Какво става, ако промените решението си за добавяне на нова фирма в този момент? Ако натиснете клавиша esc, нищо не се случва, тъй като все още не сте въвели никакви данни. Ето защо имаме бутона "Отказ".

Щракването върху бутона "Отказ" винаги работи; клавишът за превключване работи само когато сте въвели или променили данни.  

Ако започнете да добавяте или променяте данни и след това затворите формуляра, без да щраквате върху "Запиши" или "Отказ", по подразбиране Access ще запише данните.  

Бизнес правило:
Като бизнес правило на Northwind за фирми, искаме изрично да посочите, че искате да "Запиши".  За да гарантираме това, трябва да проверим дали потребителят е щракнал върху запиши в събитието Form_BeforeUpdate и ако не е щракнал върху запиши, подканваме потребителя да посочи дали иска да запише или отмени промените си.
'

Промяна на типа на фирмата

Бизнес правило: Ако фирмата има съществуващи поръчки, поръчки за покупка или доставчик за продукт, потребителят не може да промени типа на фирмата. Създадохме функция CompanyIsActive(), за да определим дали съществува някое от горните условия. Ако е така, потребителят не може да промени типа на фирмата, докато тези препратки не бъдат изчистени (изтрити). 

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

Винаги трябва да програмирате защитно. Планирайте неочаквано. Дори ако в момента фирмата е доставчик, това не означава, че в някакъв момент те не са били доставчици или клиенти. Неговият ИД може да бъде намерен в по-стари записи в таблиците ProductVendor или PurchaseOrder .
'

Диалогов формуляр по избор.

За да покаже резултатите си, cboCompanyTypeID_BeforeUpdate използва диалогов формуляр frmGenericDialog. Това може да е чудесна алтернатива на стандартното поле за съобщения, когато имате много информация за показване. Използва се и с формуляра за служител за подобна цел.
'
 
Изтриване на проверката за цялост на връзките

В Northwind Starter Edition позволяваме поведението по подразбиране на Access да ви уведомява, че дадена фирма не може да бъде изтрита, когато има свързани записи.  

В Northwind Developer Edition ви уведомяваме преди изтриването, вместо да приемаме поведението на Access по подразбиране.  Правим това, като използваме същата функция като промяна на типа на фирмата; функция CompanyIsActive().

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

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

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

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

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

Беше ли полезна тази информация?

Доколко сте доволни от качеството на езика?
Какво е повлияло на вашия потребителски опит?
Като натиснете „Подаване“, вашата обратна връзка ще се използва за подобряване на продуктите и услугите на Microsoft. Вашият ИТ администратор ще може да събира тези данни. Декларация за поверителност.

Благодарим ви за обратната връзка!

×