Prisijunkite prie „Microsoft“
Prisijunkite arba sukurkite paskyrą.
Sveiki,
Pasirinkti kitą paskyrą.
Turite kelias paskyras
Pasirinkite paskyrą, kurią naudodami norite prisijungti.

Pasirinkite bet kurią toliau pateiktą temą, kad sužinotumėte apie užsakymų valdymą "Northwind Developer Edition". 

Šis "Northwind" užsakymų pavyzdžio programos kūrėjo leidimas yra pažengęs labiau nei "Starter Edition". Ji išplečiama duomenų bazės schemoje (naudojamose lentelėse) ir dabar suteikia papildomų išplėstinių funkcijų. Čia siūloma pristatyti "Microsoft Access" funkcijas, o ne vykdyti jokios konkrečios įmonės.

  • Užsakymų sąrašas pasiekiamas juostelėje. Joje yra kelios filtravimo parinktys ir hipersaitai, kad būtų galima atidaryti kiekvieną užsakymą.

  • Užsakymų sąraše ir juostelėje yra mygtukas Įtraukti užsakymą, kad būtų atidaryta nauja tuščia tvarka.

  • Naujo užsakymo formoje išplečiamajame sąraše pasirinkite esamą klientą. Tada bus pasirinktas darbuotojo vardas ir nauja būsena. Užsakymo data jau užpildyta. Mokesčio tarifas nuskaitomas iš lentelės "SystemSettings ", o mokesčio būsenos numatytosios reikšmės – kliento įraše.

  • Nauji užsakymai ir pirkimo užsakymai įtraukiami į juostelės sąrašą MRU (vėliausiai naudoti). Sužinokite daugiau šio straipsnio dalyje MRU sąrašas

  • Kol kas palikite siuntimo datą ir mokėjimo datą tuščias.

  • Norėdami įtraukti naujų klientų užsakymus, įveskite įmonės pavadinimą ir tabuliavimo klavišą. Bus atidaryta forma Įmonės išsami informacija, kad būtų baigtas naujas kliento įrašas. Tada uždarykite ir tęskite užsakymą. Naujoji įmonė dabar bus klientų išplečiamajame sąraše.

  • Norėdami įtraukti prekių į užsakymą, pasirinkite šio užsakymo produkto kategoriją ir produktą ir įveskite Kiekis. Vieneto kaina užpildoma, o Kaina apskaičiuojama pagal išraišką.

  • Paankstinti užsakymo būseną ir perkelti užsakymą per darbo eigą iš Naujo > Išrašyta SF > Išsiųsta > Uždaryta naudojant mygtukus, esančius užsakymo formos viršuje.

  • "Invoicing" gali įvykti tik tuo atveju, jei tam užsakymui priskirtas produktas. Jei eilutės elemento būsena yra Nėra atsargų arba Užsakyta, įvyks tikrinimo klaida. Vartotojas gali sukurti to produkto pirkimo užsakymą ir jį gauti, o užsakymo prekės būsena bus pakeista į Priskirta.

  • Norint išsiųsti užsakymą, reikia įvesti siuntėjo ir pristatymo mokestį . Jei pamiršite tai padaryti, įvyks tikrinimo klaida. Siuntimo mokestis pridedamas prie užsakymo sumos.

  • Neišsiųstus užsakymus galima panaikinti naudojant mygtuką Naikinti užsakymą.

  • Užsakymo eilutės elementų negalima modifikuoti, kai užsakymas yra už būsenos Naujas .

  • "Northwind Starter" versijoje užsakymo procesas yra neįtikėtinai paprastas (pvz., atsargos visada pasiekiamos, niekada neišsibaigia ir jų įsigyti nereikia). Dabar šiame "Dev" leidime realesnis procesas išsprendžia bent kai kurias tokias problemas. Atminkite, kad demonstruojame "Access" funkcijas ir geriausią praktiką, o ne realų taikomąją programą. 

  • Įrodymai, kad šiuo metu neįgyvendinsime realios taikomosios programos, apima faktą, kad datos nėra tikrinamos. Taigi, galima įvesti nelogines datas, pvz., siuntimo datą , esančią prieš užsakymo datą. 

Šiame skyriuje aprašoma užsakymo formos, frmOrderDetails, dėmesio įgyvendinimo informacija:

Užsakymo forma gauna duomenis iš paprastos užklausos qryOrder (žr. ypatybę RecordSource ). Duomenų įvedimo formos susiejimas su paprasta vienos lentelės užklausa yra geriausia praktika. Atkreipkite dėmesį, kad į šią užklausą nebūtina įtraukti OrderDetails lentelės. Užsakymo informaciją apdoroja papildoma forma.

Forma OrderList gali atidaryti kelis užsakymo formos egzempliorius. Tai patogu, nes pardavėjai susiduria su daugybe trukdžių ir dirbdami su pirmuoju gali reikėti atidaryti kitą užsakymą arba palyginti jį su trečiuoju užsakymu. Technika yra dokumentuota čia.

Įvairūs ID laukai gauna reikšmes iš dviejų stulpelių pasirinktinio įvedimo laukų: paslėpto ID stulpelio ir matomo stulpelio Aprašas. Šie pasirinktinio įvedimo langeliai yra susieti su paprastomis dviejų stulpelių užklausomis: žr. ypatybę RowSource .

Darbo eigos mygtukai turi su jais susietą verslo logiką, o tai verčia vartotoją pereiti prie kito užsakymo nuo 1 iki 4. "Northwind Development" komanda žino, kad kai kurios įmonės gali taikyti skirtingas taisykles. Tokiu atveju mygtuko spustelėjimo įvykiai būtų skirtingai diegiami, taip pat iš naujo svarstoma, kada pavedimas yra apibrėžtas ir kada užsakymą vis dar galima panaikinti.

Antrinė forma sfrmOrderDetails susieta su sudėtingeste užklausa. To priežastys aptariamos tolesnėje sekcijoje Pakopinių pasirinktinio įvedimo dėžučių. Tikriname atsargas Form_AfterUpdate įvykyje, kai eilutė įrašoma, ir galime vykdyti efektyvesnes duomenų bazės užklausas.

ProductCategory ir Product yra pakopiniai pasirinktinio įvedimo langeliai: pasirinkus iš pirmojo (ProductCategory), susiaurėja kitas, o tik atitinkami antriniai produktų įrašai. Čia naudojamas metodas išsamiai aprašytas toliau.

Įrašant įrašą reikia užpildyti reikiamus laukus. "Starter" leidime leidžiame nustatyti "Access" numatytąjį veikimą; šiame "Dev" leidime įdiegta patogesnė vartotojui technika. Čia naudojamas metodas išsamiai aprašytas toliau.

Kiekvienai užsakymo eilutės prekei turimos atsargos tikrinamos ir atitinkamai nustatoma būsena. Pagrindinė šios funkcijos idėja aprašyta čia.
 

PAKOPINIAI PASIRINKTINIO ĮVEDIMO DĖŽES

Produktų kategorijos ir produkto išplečiamųjų sąrašų įgyvendinimas kaip pakopinių pasirinktinio įvedimo laukų yra sudėtingas dalykas, nes "Access" nepalaiko šios funkcijos. Šiame technikoje būtini keturi žingsniai:

Forma turi veikti nepertraukiamų formų režimu (ne duomenų lapu). Teksto laukeliai persidengia su kiekvieno pasirinktinio įvedimo lauko teksto dalimi, todėl matomos tik išplečiamosios rodyklės. 

Formos įrašo šaltinio užklausa qryOrderLineItems naudoja lentelę OrderDetails pagal įprastą, bet taip pat sujungia su lentelėmis Produktai ir ProductCategories, kad paimtų ProductName ir ProductCategoryName. Du persidengiantys teksto laukeliai yra susieti su šiais laukais.

Pasirinktinio įvedimo lauke "RowSource ", skirta "Products", vėl peržiūri " cboProductCategories" , kad būtų pateikti tik tame pasirinktinio įvedimo lauke pasirinktos kategorijos produktai. Atkreipkite dėmesį į sintaksę "[Forma]! [cboProductCategories]" kriterijų išraiškoje, kuri yra lankstesnė nei tikslios formos! Formos pavadinimas! ControlName sintaksė, kuri nurodo vieną formą pagal pavadinimą.

Pasirinktinio įvedimo lauke Nesusietosios ProductCategories pasirinkus produkto kategoriją, įvykis AfterUpdate nustato pasirinktinio įvedimo lauką Produktai kaip pirmąją reikšmę sąraše. Taip sukuriama nauja formos RecordSource eilutė, kuri užpildo CategoryName , kad ją būtų galima rodyti persidengiančiuose teksto laukuose.
 

TIKRINIMO

Naudojant tikrinimo kodą, realų "Northwind Dev" leidime, reikia tik 3 kodo eilučių:

  • In Form_BeforeUpdate:
       Cancel = ValidateForm(Me)

  • Programoje Form_AfterUpdate ir Form_Current:
        ValidateForm_RemoveHighlights man

Padaryti kodas labai savarankiškai yra geras modelis sekti, nes ji leidžia lengvai įgyvendinti visur. Profesionalūs kūrėjai gali tai padaryti dar labiau, pvz., naudodami formos poklasį. (Tai nėra "Northwind Dev" tikslai.)

Formos objektas perduodamas į savarankišką tikrinimo kodą, kad būtų galima patikrinti. Tada patikrina esamą įrašų rinkinio "RecordsetClone" laukus, kad sužinotų, kurie valdikliai susieti su reikiamais laukais, ir tikrina, ar jie turi reikšmę. Jei jie to nepažymės, jie bus paryškinti.

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.

Ar ši informacija buvo naudinga?

Ar esate patenkinti kalbos kokybe?
Kas turėjo įtakos jūsų įspūdžiams?
Paspaudus mygtuką Pateikti, jūsų atsiliepimai bus naudojami tobulinant „Microsoft“ produktus ir paslaugas. Jūsų IT administratorius galės rinkti šiuos duomenis. Privatumo patvirtinimas.

Dėkojame už jūsų atsiliepimą!

×