Barvna shema: Svetla
Trenutno dejavna stran: start » sl » Dokumentacija » Orodja za Microsoft Access » WKL Forms Object Library » Pogledi podatkov » WklGrid » Mreža strank z naročili

Mreža strank z naročili

V tej vadnici ustvarite tabelo strank in tabelo njihovih naročil, na obrazec postavite dva kontrolnika WklGrid, prvega vežete z oblikovalnikom, drugega pa brez kode povežete s prvim. Nato dodate podrobni pogled ter v pogledu obrazca preizkusite skupine in filtre. Za vse skupaj potrebujete približno petnajst minut.

Predpogoji

  • Microsoft 365 Access ali Access Runtime, v 32- ali 64-bitni različici, z nameščenim paketom WKL Forms Object Library 1.23 ali novejšim, registriranim za trenutnega uporabnika sistema Windows (Namestitev izdanega paketa).
  • Nova podatkovna zbirka na zaupanja vrednem mestu.
  • Vsak kontrolnik WKL odpre svoj oblikovalnik na enak način: v pogledu načrta list z lastnostmi (F4), zavihek Drugo (Other), vrstica Po meri (Custom), [...] (Odpiranje oblikovalnika kontrolnika).

Koraki

1. Ustvarite vzorčni tabeli

V oknu Immediate (Ctrl+G) izvedite te vrstice, eno za drugo:

CurrentDb.Execute "CREATE TABLE tblStranke (StrankaID COUNTER PRIMARY KEY, Podjetje TEXT(50), Kraj TEXT(50), Promet CURRENCY)"
CurrentDb.Execute "CREATE TABLE tblNarocila (NarociloID COUNTER PRIMARY KEY, StrankaID LONG, Artikel TEXT(50), Kolicina LONG)"
CurrentDb.Execute "INSERT INTO tblStranke (Podjetje, Kraj, Promet) VALUES ('Adria', 'Koper', 120)"
CurrentDb.Execute "INSERT INTO tblStranke (Podjetje, Kraj, Promet) VALUES ('Bistra', 'Maribor', 80)"
CurrentDb.Execute "INSERT INTO tblStranke (Podjetje, Kraj, Promet) VALUES ('Cvet', 'Koper', 300)"
CurrentDb.Execute "INSERT INTO tblNarocila (StrankaID, Artikel, Kolicina) VALUES (1, 'Vijaki', 100)"
CurrentDb.Execute "INSERT INTO tblNarocila (StrankaID, Artikel, Kolicina) VALUES (3, 'Matice', 50)"
CurrentDb.Execute "INSERT INTO tblNarocila (StrankaID, Artikel, Kolicina) VALUES (3, 'Podložke', 20)"

2. Vstavite dve mreži

Ustvarite prazen obrazec, ga shranite kot frmStranke in ostanite v pogledu načrta. Izberite Načrt obrazca › Kontrolniki › Kontrolniki ActiveX (Form Design › Controls › ActiveX Controls), označite WKL Grid in kliknite V redu. Kontrolnik narišite čez zgornjo polovico obrazca in ga poimenujte Grid1. Pod njim vstavite še eno mrežo WKL Grid in jo poimenujte Grid2. Shranite obrazec.

3. Z oblikovalnikom vežite stranke

Izberite Grid1, odprite list z lastnostmi, zavihek Drugo, in v vrstici Po meri kliknite [...]. V oblikovalniku:

  1. Stran Vir zapisov: kot tabelo izberite tblStranke, kot polje ključa StrankaID, nato kliknite Ustvari stolpce iz polj.
  2. Stran Stolpci: izberite Promet, Oblika nastavite na Currency in Skupna vrednost v nogi na Vsota.
  3. Stran Združevanje in vsote: vklopite Noga z vsotami.
  4. Stran Videz: vklopite Predogled v živo z resničnimi podatki.

Predogled na desni prikaže tri stranke z vsoto. Kliknite V redu in shranite obrazec.

4. Povežite naročila z izbrano stranko

Izberite Grid2 in na enak način odprite njegov oblikovalnik:

  1. Stran Vir zapisov: tblNarocila, polje ključa NarociloID, Ustvari stolpce iz polj.
  2. Stran Povezava: kot Glavno polje izberite Grid1 (seznam ponudi druge mreže obrazca in njihova polja), kot Podrobno polje pa StrankaID.

Kliknite V redu in shranite obrazec. Koda ni potrebna: Grid2 prikazuje naročila stranke, ki je izbrana v Grid1.

5. Dodajte podrobni pogled

Znova odprite oblikovalnik mreže Grid1, stran Podrobni pogledi, kliknite Dodaj in vnesite: tabela tblNarocila, polje ključa NarociloID, podrobno polje StrankaID, glavno polje StrankaID, napis Naročila. Kliknite V redu in shranite obrazec.

Enako dosežete s kodo, na primer v Form_Load:

Me.Grid1.Object.AddDetailView "Narocila", "tblNarocila", "NarociloID", "StrankaID", "StrankaID", "Naročila"

6. Preizkusite obrazec

Odprite frmStranke v pogledu obrazca:

  1. V Grid1 kliknite Cvet: Grid2 prikaže dve naročili.
  2. Kliknite puščico levo od Cvet (ali pritisnite Ctrl in +): naročila se odprejo pod zapisom na zavihku Naročila.
  3. Glavo Kraj povlecite v vrstico združevanja nad glavami: stranke se združijo po mestih, vsaka vrstica skupine pa prikazuje število svojih zapisov in vsoto.
  4. Z desno tipko miške kliknite glavo stolpca in izberite Prikaži vrstico filtra, nato pod Promet vnesite >= 100: ostaneta samo Adria in Cvet; vrstica s pogoji filtra pod mrežo prikazuje pogoj.
  5. Z desno tipko miške kliknite mrežo in izberite Izvozi …, da mrežo shranite kot Excelov delovni zvezek s skupinami kot orisom.

Pričakovani rezultat

Obrazec z dvema mrežama, ki delujeta skupaj brez ene same vrstice kode: naročila sledijo izbrani stranki, vsaka stranka se razširi v svoja naročila, skupine, filtri in vsota pa se na uporabnikova dejanja odzovejo takoj. Nastavitve oblikovalnika se shranijo skupaj z obrazcem.

Naslednji koraki

sl/wiki/msaccess/comctl/data-views/grid/tutorial.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille