|
Škola Accessa |
|
|
Čas 11 - Dodatno uređenje programaZavršna faza kreiranja aplikacije je ujedno i najzanimljivija: glavni moduli su gotovi, preostaje da uredimo pokretanje aplikacije i da rešimo "sitnice" koje su pretekle iz prethodnih časova. Na glavnom modulu - komandnoj tabli, ostala su dva tastera "nerešena". Zadržaćemo se na prvom Pregled dužnika i za njega kreirati jednu vrstu upita (Query). Iskoristićemo neka svojstva upita i videti kako se postavljaju kriterijumi po kojima se podaci izdvajaju i sortiraju. Pređimo na karticu upita i pritisnimo taster New. Iz ponuđenog menija biramo Design View i pritiskamo taster OK. Zadržimo se na moment na ovom meniju. Primetimo da samo Design View nema sufiks Wizard. Access je, kako smo već pomenuli, prepun ovih "čarobnjaka", što su, u stvari, poluautomatizovane procedure za postizanje određenog cilja uz minimalno angažovanje korisnika. Ovaj put ćemo samo pomenuti namenu ostalih opcija, jer kada upite savladamo kreirajući ih samostalno od početka, shvatanje ostalih opcija je jednostavno. Značenje opcija:
Posle klika na taster OK dobijamo spisak svih tabela i upita naše baze. Upit može podatke preuzimati direktno iz tabela ili iz drugih upita. Kliknimo na tabelu Citaoci i na taster Add. Zatim kliknimo na tabelu Poslovanje i opet na Add i konačno ponovimo postupak za tabelu Knjige. Zatvorimo ovaj meni pritiskom na taster Close. Na ekranu bi trebalo da dobijemo upit nalik slici: Ovaj upit za sada ne radi ništa, jer nismo naveli iz koje tabele će se koji podaci izdvajati za prikaz. Tabele koje se postavljaju u upit moraju biti povezane preko određenih podataka koji će biti isti za tabele u relaciji. Pogledajmo naš upit: iz tabele Poslovanje kolona ID_Citalac je u direktnoj relaciji sa istoimenom kolonom tabele Citaoci i podaci koji će se pojavljivati u ove dve kolone su direktno zavisni. Praktično, iz ove dve tabele možemo izdvojiti bilo koju kolonu iz bilo koje tabele, dok god su one preko nekog ključa direktno povezane, a to je u ovom slučaju ID_Citalac. Pogledajmo kako to radi (pretpostavimo da, kao uz bazu sa primerom iz ovog časa, postoji zapis u tabeli Poslovanje). Dvokliknimo na polje Prezime_ime iz tabele Citaoci i zatim dvokliknimo na Naslov iz tabele Knjige: Kliknimo na taster za izvršavanje upita i pogledajmo rezultat: Upit je izdvojio čitaoca (prikazuje samo ime i prezime, kako smo i zahtevali) i naziv knjige sa kojom je čitaoc u vezi. Kliknimo sada na taster za prelazak u Design View i vratimo se na dizajniranje upita. Promenimo sada upit tako da odredišna polja budu:
U koloni Prezime_ime smo za način sortiranja postavili prikaz na rastući redosled, odnosno po ovoj koloni će biti sortirani rezultati. Na upit smo postavili dva kriterijuma po kojima će podaci biti izdvojeni. Za datum izdavanja knjige, upit izdvaja one knjige koje su izdate u odnosu na tekući datum (Date()) pre onoliko dana koliko korisnik odredi (-[Za knjige izdate pre koliko dana?]). Drugi kriterijum je na statusu knjige - tu se izdvajaju samo one koje imaju oznaku "i", tj. samo izdate knjige. Pokrenimo upit. Pre prikazivanja rezultata upitani smo da odredimo vremenski rok, pre koga smatramo da je on prekoračen. Rezultat upita ima oblik tabele: Na osnovu ovog upita kreiraćemo izveštaj pod nazivom rptPregledDuznika. Record Source ćemo postaviti na qryPregledDuznika i izveštaj prilagoditi tako da zadrži format već kreiranog rptPregledSvihKnjiga.
Na komandnoj tabli za taster Pregled dužnika postavljamo odgovarajući program na događaj OnClick:
Kompresija i arhiviranje programaNamena ovog tastera jeste da pokrene program ili određenu proceduru koja će kreirati arhivu od postojeće baze. Arhiva treba da je najveće veličine koliki je slobodan prostor jedne diskete i u idealnom slučaju, zbog uštede prostora, arhiva treba da bude maksimalno kompresovana. Navedene uslove ispunjava više pomoćnih programa, mi ćemo se oprediliti za ARJ, koga svakako moramo registrovati za upotrebu u poslovne svrhe. Pređimo na karticu makroa i kreirajmo nov pod imenom Arch. U koloni Action postavimo prvu naredbu RunApp i u Command Line upišimo sledeće:
Uslov da bi se arhiva uspešno kreirala je taj da se baza nalazi na particiji C: i da se zove bibl_11.mdb. Ako nije tako, prilagodite putanju do baze i njeno ime u komandi za arhiviranje. Nakon završenog arhiviranja korisnika ćemo obavestiti porukom. U drugom redu kolone Action upišimo MsgBox i parametre postavimo prema sledećem:
Ostaje još da ovaj makro pridružimo tasteru Kompresija i arhiviranje programa tako što ćemo za događaj OnClick ovog tastera upisati samo naziv makro programa: Arch. Sa ovim časom, naš jednostavan program je gotov, ali nije još spreman za distribuciju. Ostaje nam još da dodatno podesimo pokretanje programa, da sakrijemo prozor baze, da onemogućimo korisnika da menja kód programa i da pripremimo ostale "sitnice" koje čine jednu aplikaciju. O ovome više na sledećem času.
REZIME ČASA 11Gradnja upita predstavlja realnu nadgradnju aplikacije, onaj "živi" deo aplikacije koji prostu evidenciju čini celishodnom. U neku ruku, obim neke aplikacije nad bazom podataka bi pre trebalo meriti po broju upita i njihovim mogućnostima, nego prema fizičkom obimu podataka. Ali, mora se misliti i na fizičku zaštitu aplikacije, pa smo izveli i proceduru za povremeni backup podataka. Našoj aplikaciji preostaje samo "udaranje mašnice". Čas 12 - Završne radnje uređenja programa
|
|
Vrh stranice Prethodna stranica Naslovna strana Mapa sajta Pretraga |
| AFORIZAM ZA DANAS | OVIH DANA SLUŠAMO... |
| Copyright © Praktikum na Webu, 2000-2011; Valinor Design; sva prava pridržana. |