Válassza ki az alábbi témaköröket a Megrendelések vásárlása a Northwind Developer Edition kiadásban való megismeréséhez.
A Northwind Purchase Orders mintaalkalmazásnak ez a Dev Editionje az egyetlen Beszerzési rendelések modullal rendelkezik. A Starter Editionben a termékek soha nem fogynak el, és soha nem kell megvásárolni. Ez a Dev Edition a Northwind 2.0 Starter Edition adatbázissémán (használt táblákon) bővül, és speciálisabb funkciókat használ. Továbbra is a Microsoft Access fő funkcióit mutatja be, nem pedig egy adott vállalkozás működtetését.
-
A rendeléslista a menüszalagon érhető el. Hivatkozásokat tartalmaz az egyes megrendelések megnyitásához.
-
A Beszerzési rendelések listája és a menüszalag is rendelkezik egy Új beszerzési rendelés gombbal egy új, üres beszerzési rendelés megnyitásához. Beszerzési rendeléseket a Termékek űrlapon is létrehozhat, >Termék átrendezése gombot.
-
A fejléc gombjai tovább léptetik a rendeléseket a munkafolyamaton keresztül a Küldés, Jóváhagyás, Fogadás és Bezárás folyamaton keresztül. Az űrlap megfelelő követési mezői zárolva vannak, mert csak programozott módon, a műveletgombokra kattintva állíthatók be.
-
A rendelés jóváhagyása vásárlás-jóváhagyási jogosultságot igényel. Bejelentkezhet Andrew Cencini néven, aki rendelkezik a jogosultsággal, vagy megadhatja magának a System Rendszergazda > Privilegesban. Vegye figyelembe, hogy ez az egyik oka annak, hogy a Northwind nem éles minőségű alkalmazás. A valós világban a felhasználók nem fogják tudni megemelni a saját engedélyeiket.
-
A rendelés sortételei a mennyiségüknek megfelelően lesznek érvényesítve. Legalább a minimális átrendezett mennyiségnek kell lennie, és ideális esetben a készletet legalább a célszintre kell visszajuttatnia, az egyes termékekhez beállított módon.
-
A beszerzési rendelés fogadásakor a rendszer speciális feldolgozást hív meg a termékeknek a Nincs készlet állapotú sortételek megrendelésére való szétosztásához, és hozzárendelt értékre állítja őket. A fennmaradó mennyiséget a rendszer elküldi a készletbe. A rendszer hozzáad egy rekordot a StockTake táblához.
Ez a szakasz a megrendelési űrlap frmPurchaseOrderDetails elemének figyelemre méltó implementálási részleteit ismerteti:
-
A Beszerzési rendelés űrlap egy egyszerű lekérdezésből( qryPurchaseOrder ) olvassa be az adatait (lásd : RecordSource tulajdonság). Az adatbeviteli űrlap egyszerű lekérdezésre való alapozása ajánlott eljárás. Vegye figyelembe, hogy ebben a lekérdezésben nem szükséges belefoglalni a PurchaseOrderDetails táblát. A részleteket a segédűrlap kezeli. A lekérdezés azonban más táblákkal is összekapcsolja az írásvédett StatusName, SubmittedBy és ApprovedBy mezőket.
-
A PurchaseOrderList űrlap a Beszerzési rendelés űrlap több példányát is megnyithatja. Ez azért hasznos, mert a rendelési osztály sok megszakítással foglalkozik, és előfordulhat, hogy egy másik rendelést kell megnyitnia, miközben az elsőn dolgozik – vagy hasonlítsa össze egy harmadik rendeléssel. A technikát itt dokumentáljuk.
-
A VendorID egy kétoszlopos kombinált listából kapja meg az értékét: egy rejtett azonosító oszlopból és egy látható Leírás oszlopból. Az ilyen kombinált listák egyszerű kétoszlopos lekérdezésekhez vannak kötve: lásd a RowSource tulajdonságot.
-
Rekord mentésekor legalább a kötelező mezőket ki kell tölteni. A Starter kiadásban hagyjuk, hogy az Access alapértelmezett viselkedése megtörténjen; ebben a Dev kiadásban egy felhasználóbarátabb technikát implementálunk – az alábbiakban részletesen ismertetjük.
-
Amikor a rendelés állapotaBeérkezett, a rendszer speciális feldolgozást hív meg ( a AllocateToInventory eljárást), hogy az új leltárt elosztsa a termékekre váró rendelések között.
ÉRVÉNYESÍTÉS
A Northwind Dev kiadásban implementált érvényesítési kódhoz csak három sornyi kód szükséges:
-
In Form_BeforeUpdate: Cancel = ValidateForm(Me)
-
In Form_AfterUpdate: ValidateForm_RemoveHighlights Me
-
In Form_Current: ValidateForm_RemoveHighlights Me
Ezt a mintát érdemes követni: a kód önállóvá tétele mindenhol megkönnyíti a implementálást. A profi fejlesztők ezt még tovább is tehetik, például űrlapok alosztályozásával. (Ez meghaladja a Northwind Dev céljait.)
Az önálló érvényesítési kód egy űrlapobjektumot fogad el az ellenőrzéshez. Ezután ellenőrzi az alapul szolgáló RecordsetClone űrlapgyűjteményét, hogy megtudja, mely vezérlők vannak a kötelező mezőkhöz kötve, és ellenőrzi, hogy rendelkeznek-e értékkel. Ha nem, akkor ki vannak emelve.
-
Northwind 2.0 Developer Edition: Tudnivalók.
-
Northwind 2.0 Developer Edition: Minden témakör