Ukoliko koristite Microsoft Access vjerovatno ste uočili mogućnost rada sa višestrukim listama podataka, kod kojih odabirom jednog podatka otvarate popunjenu drugu listu, filtriranu prema traženom sadržaju. Na primjer, ako biste birali državu, potom grad i na kraju ulicu pojednostavljen izbor postoji na GPS uređajima. Na praktičnom primjeru pokazaćemo vam kako se jednostavnije dolazi do ovakve forme.

access perperzona it bizZa početak je potrebno kreirati tri tabele i tri liste podataka i označiti ih kao države, gradove i ulice. Ono što je važno je da svaka grupa podataka na određen način hijerarhijski pripada višoj grupi, kao što grad pripada državi, a ulica gradu. Grupa podataka najvišeg nivoa – u ovom slučaju lista država – nema polje koje beleži pripadnost nekoj od grupa podataka.

Odredite praznu formu i na nju postavite listu podataka, koju možete prilagođavati po izboru. Zatim je kopirajte, a potom dva puta uz komandu Paste ubacite u formu. Nazovite ih redom lstDrzave, lstGradovi, lstUlice, a u kontrolnu opciju za label unesite nazive Države, Gradovi, Ulice. Nakon toga podesite izvore podataka za sve tri kategorije, a zatim krenite unazad sa programiranjem ponašanja lista. Odaberite listu država, otvorite prozor sa karakteristikama i u njemu odaberite opciju Row Source.

Kliknite na taster obilježen sa tri tačke i zadajte u upit tabelu država, a zatim prevucite oba polja u mrežu. U ovom slučaju potrebno je da uključite sortiranje prema imenu gradova. Kada zatvorite upit, primijetićete da osobina Row Source dobija SQL iskaz. U ovom slučaju indeksno polje korisnik ne treba da vidi, zbog čega je programu potrebno zadati opciju da ova lista koristi dvije kolone i da se vidi samo druga. Ovo ćete postići tako što ćete ukucati brojku 2 u osobinu kojom se određuje broj kolona, a označena je sa Column Count, a u izbor širine kolone koji je označen sa Column Width unesite „0cm;1cm“.

Isti postupak ponovite i kada odaberete listu gradova. U upit dodajte tabelu gradova, u njegovu mrežu postavite sva tri polja, a zatim sortirajte podatke po nazivu države. Nakon toga u Column Count unesite brojku 3, a u Column Width „0cm;0cm;1cm“. Nula, odnosno nulta širina ovdje znači da se prethodne kolone ne vide, dok naznačeni 1 centimetar pedstavlja samo okvirnu oznaku, iako je stvarna širina liste mnogo veća. Kada lista prikazuje samo jedan podatak Access automatski koristi cjelokupnu liste.

U ovom slučaju karakteristika Row Source u memoriše SQL iskaz na sljedeći način: SELECT tblDrzave.IDDrzava, tblDrzave.Drzava FROM tblDrzave ORDER BY tblDrzave.Drzava. Na kraju i kod formiranja treće liste ponovite isti postupak, kako bi SQL iskaz za treću listu sadržao: SELECT tblUlice.IDUlica, tblUlice.IDGrad, tblUlice.Ulica FROM tblUlice ORDER BY tblUlice.Ulica.

Kada se završe ovi koraci započinje se programiranje aplikacije. Nakon što se učita forma, liste sa gradovima i ulicama treba da budu prazne. Prilikom unosa naziva gradova obnavlja se i lista ulica, dok, kada mijenjate naziv države u pretrazi, modifikuju se i liste gradova i ulica. Pri učitavanju forme obje liste treba da budu prazne.

Završni korak predstavlja odabir liste koja je naslovljena sa lstDrzave, nakon čega je potrebno preći na karticu sa karakteristikama i dodati Visual Basic aplikaciju 4b u „događajAfterUpdate“. Ovdje je potrebno obratiti pažnju na to da u SQL komandi opcja za pretragu WHERE mora biti napisana ispred komande za tip sortiranja ORDER BY. Bitno je i pratiti da li se između zadatih komandi razmaci nalaze na pravim mjestima.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s