Prijavite se pomoću Microsofta
Prijavi se ili izradi račun.
Zdravo,
Odaberite drugi račun.
Imate više računa
Odaberite račun putem kojeg se želite prijaviti.

Odaberite bilo koju temu u nastavku da biste saznali više o upravljanju narudžbama u izdanju Northwind Developer Edition. 

Ovo izdanje za razvojne inženjere ogledne aplikacije Northwind Orders naprednije je od izdanja Starter Edition. Proširuje se na shemu baze podataka (tablice koje se koriste) i sada nudi dodatne napredne značajke. Namjera je u nastavku predstaviti vam značajke programa Microsoft Access, a ne pokrenuti određenu tvrtku.

  • Popis narudžbi dostupan je na vrpci. Sadrži nekoliko mogućnosti filtra i hiperveze za otvaranje svakog redoslijeda.

  • I popis narudžbi i vrpca imaju gumb Dodaj narudžbu za otvaranje novog praznog redoslijeda.

  • Na obrascu Nova narudžba na padajućem izborniku odaberite postojećeg klijenta. U tom će trenutku biti odabrano vaše ime zaposlenika i novi status. Datum narudžbe već je unesen. Porezna stopa čita se iz tablice SystemSettings , a zadane vrijednosti poreznog statusa iz zapisa kupca.

  • Nove narudžbenice i narudžbenice dodaju se na popis za mrU (zadnje korištene) na vrpci. Dodatne informacije potražite u odjeljku Popis za MRUu ovom članku

  • Zasad ostavite polje Datum otpremei Datum plaćanja praznima.

  • Da biste dodali narudžbe za nove korisnike, unesite naziv tvrtke i tabulator. Otvorit će se obrazac Pojedinosti o tvrtki da bi se dovršio novi zapis o klijentu. Zatim ga zatvorite i nastavite s narudžbom. Nova će se tvrtka sada nalaziti na padajućem izborniku Klijent.

  • Da biste dodali stavke u narudžbu, odaberite kategoriju proizvodai proizvod za ovu narudžbu i unesite Količina. Unesena je jedinična cijena, a Cijena se izračunava izrazom.

  • Napredno stanje narudžbe i premještajte redoslijed kroz tijek rada iz odjeljka Novo > Fakturirani > Otpremljeno > Zatvoreno pomoću gumba pri vrhu obrasca za narudžbu.

  • Fakturiranje se može dogoditi samo ako je proizvod dodijeljen za tu narudžbu. Ako je stavka retka u statusu Bez dionice ili Na narudžbi, pojavit će se pogreška provjere valjanosti. Korisnik može stvoriti narudžbu za taj proizvod i primiti je, a status artikla narudžbe prilagodit će se na Dodijeljeno.

  • Da biste otpremli narudžbu, potrebno je unijeti naknada za otpremu i otpremu. Ako to zaboravite, pojavit će se pogreška provjere valjanosti. Naknada za dostavu dodaje se u ukupnu narudžbu.

  • Poništene narudžbe mogu se izbrisati pomoću gumba Izbriši narudžbu.

  • Stavke retka narudžbe nije moguće izmijeniti nakon što narudžba prijede status Novo.

  • U verziji Northwind Starter proces narudžbe nevjerojatno je jednostavan (npr. inventar je uvijek dostupan, nikad ne ponestane i nikada se ne mora kupiti). Sada, u ovom izdanju Dev, realniji proces rješava barem neke takve probleme. Imajte na umu da prikazujemo značajke i najbolje prakse programa Access, a ne implementiranje aplikacije u stvarnom svijetu. 

  • Dokaz da ovdje ne provodimo aplikaciju u stvarnom svijetu uključuje činjenicu da se datumi ne provjeravaju. Stoga je moguće unijeti nelogične datume kao što je datum otpreme koji je prije datuma narudžbe. 

U ovom se odjeljku rješavaju pojedinosti o implementaciji koje su vrijedne pažnje obrasca narudžbe, frmOrderDetails:

Obrazac narudžbe dohvaća podatke iz jednostavnog upita qryOrder (pogledajtesvojstvo RecordSource ). Najbolje je temeljiti obrazac za unos podataka na jednostavnom upitu s jednom tablicom. Imajte na umu da u ovaj upit nije potrebno uvrstiti tablicu OrderDetails . Pojedinosti narudžbe obrađuje podobrazac.

Obrazac PopisNarudžbe može otvoriti više instanci obrasca narudžbe. To je praktično jer prodajni predstavnici posluju s mnogo prekida i možda će morati otvoriti drugu narudžbu tijekom rada na prvoj ili je usporediti s trećom narudžbom. Tehnika je ovdje dokumentirana.

Razna polja ID-a dohvaćaju vrijednosti iz kombiniranih okvira s dva stupca: skrivenog stupca ID-a i vidljivog stupca Opis. Ti su kombinirani okviri povezani s jednostavnim upitima s dva stupca: pogledajte svojstvo RowSource .

Gumbi tijeka rada imaju povezanu poslovnu logiku koja korisniku nalažu da unaprijedi narudžbu od 1 do 4. Tim za razvoj tvrtke Northwind svjestan je da neke tvrtke mogu koristiti različita pravila. To bi zatim rezultiralo različitim implementacijama događaja klikom na gumb, kao i ponovnog razmatranja kada je narudžba definirana, a kada se narudžba i dalje može izbrisati.

Podobrazac sfrmOrderDetails povezan je sa složenijim upitom. Razlozi za to navedeni su u odjeljku Kaskadni kombinirani okviri u nastavku. Provjeravamo inventar u događaju Form_AfterUpdate kada se redak spremi i možemo pokrenuti naprednije upite s bazom podataka.

ProductCategory i Product kaskadni su kombinirani okviri: odabirom prvog (ProductCategory) sljedeći se sužava na podudarne podređene zapise proizvoda. Ovdje opisana tehnika detaljno je opisana u nastavku.

Prilikom spremanja zapisa potrebno je ispuniti obavezna polja. U izdanju Starter docekat ćemo zadano ponašanje programa Access; u ovom izdanju Dev implementirana je tehnika koja je jednostavnija za korištenje. Ovdje opisana tehnika detaljno je opisana u nastavku.

Za svaku stavku retka narudžbe provjerava se dostupan inventar, a status je u skladu s tim postavljen. Osnovna ideja ove značajke opisana je ovdje.
 

KASKADNI KOMBINIRANI OKVIRI

Implementacija padajućih izbornika Kategorija proizvoda i Proizvoda kao kaskadnih kombiniranih okvira ne funkcionira jer Access ne podržava tu značajku izvan okvira. Četiri su koraka nužna u ovoj tehnici:

Obrazac mora biti u načinu neprekidnog obrasca (ne u podatkovnoj tablici). Tekstni se okviri preklapaju s tekstnim dijelovima svakog kombiniranog okvira, a vidljive su samo njihove strelice padajućeg izbornika. 

Izvorišni upit obrasca , qryOrderLineItems, koristi tablicu OrderDetails po uobičajenom, ali se i spaja s tablicama Proizvodi i Kategorije Proizvoda da bi se mogli preuzeti ProductName i ProductCategoryName. Dva preklapajući tekstna okvira povezana su s tim poljima.

The RowSource for the Products combobox looks back at cboProductCategories to return only products for the category selected in that combobox. Obratite pozornost na sintaksu "[Obrazac]! [cboProductCategories]" u izrazu kriterija, koji je fleksibilniji od eksplicitnih obrazaca! Naziv Obrasca! ControlName sintaksa koja se poziva na jedan obrazac po nazivu.

Nakon odabira kategorije proizvoda u kombiniranom okviru Slobodne kategorije proizvoda, događaj AfterUpdate postavlja kombinirani okvir Proizvodi na prvu vrijednost na popisu. Time se stvara novi redak u izvoru zapisa obrasca, koji popunjava NazivKatekatvora da bi se mogao prikazati preklapajućim tekstnim okvirom.
 

PROVJERA VALJANOSTI

Korištenje koda za provjeru valjanosti implementiran u izdanju Northwind Dev traje samo 3 retka koda:

  • U Form_BeforeUpdate: Cancel
       = ValidateForm(Me)

  • U Form_AfterUpdate i Form_Current:
        ValidateForm_RemoveHighlights Me

Izrada kod vrlo self-sadržana je dobar uzorak za praćenje, jer to olakšava implementaciju svugdje. Profesionalni razvojni inženjeri mogu to dodatno učiniti, primjerice, korištenjem podklase obrazaca. (To je izvan ciljeva za Northwind Dev.)

Objekt obrasca prosljeđuje se samostalnom kodu provjere valjanosti radi provjere valjanosti. Zatim provjerava zbirku polja RecordsetClone u pozadini da bi se utvrdilo koje su kontrole povezane s obaveznim poljima i provjerava imaju li vrijednost. Ako to ne uиinite, bit жe istaknute.

Potrebna vam je dodatna pomoć?

Želite dodatne mogućnosti?

Istražite pogodnosti pretplate, pregledajte tečajeve za obuku, saznajte kako zaštititi uređaj i još mnogo toga.

Zajednice vam pomažu da postavljate pitanja i odgovarate na njih, pošaljete povratne informacije i čujete se sa stručnjacima s bogatim znanjem.

Jesu li vam ove informacije bile korisne?

Koliko ste zadovoljni jezičnom kvalitetom?
Što je utjecalo na vaše iskustvo?
Ako pritisnete Pošalji, vaše će se povratne informacije iskoristiti za poboljšanje Microsoftovih proizvoda i usluga. Vaš će IT administrator moći prikupiti te podatke. Izjava o zaštiti privatnosti.

Hvala vam na povratnim informacijama!

×