Microsoft Office Access |
|
|
Tipovi grananja u Access programuNivo:
Postoji nekoliko načina da definišete odlučivanje u svom programu u Accessu. Koji od njih je optimalan za trenutnu potrebu? Svi koji se bave programiranjem koriste jednu od procedura za ispitivanje sadržaja neke vrednosti, kako bi na osnovu rezultata ispitivanja definisali grananje u odlučivanju u programu. Uobičajena (i najjednostavnija) procedura za proveru vrednosti je niz
Iza klauzule If može slediti više programskih redova ako je uslov zadovoljen, odnosno iza Else, ukoliko uslov nije zadovoljen. Ispitajmo ocene učenika i dajmo deskriptivan opis ocene:
Klauzula IIf (Immediate If) je nešto komplikovanija za shvatanje. Provera se sastoji iz jednog programskog reda gde se vrednost promenljive ispituje i na osnovu rezultata postoje dva izbora: Yes (promenljiva zadovoljava uslov) i No (ne zadovoljava uslov). Ovde se ne može upisati više programskih redova iza provere. Proverimo prolaznost učenika sa dekriptivnim opisom: IIf (X = 1; [Ocena] = "Ne zadovoljava"; [Ocena] = "Zadovoljava") Pravo grananje postoji kod Select Case ... End Select petlje, a naročito kod slučajeva kada se treba ispitati više vrednosti jedne promenljive i na osnovu rezultata izvršiti drukčiji program. U Accessu se najčešće koristi kod provere veće grupe opcija. Ukoliko promenljiva ne zadovolji ni jednu granu Case provere, ostale vrednosti se mogu svesti pod granu Case Else:
Dosadašnji načini ispitivanja se manje-više veoma često koriste. Interesantna funkcija za ispitivanje, koja se veoma retko koristi (verovatno zato što nije postojala u ranim verzijama Basica ili zbog svog ograničenja) je Switch. Funkcija Switch ispituje vrednost promenljive nalik na IIf, s tim da može operisati sa do osam alternativa. Ova funkcija je zgodna za brzo konvertovanje teksta u brojeve i obrnuto. Ispitujemo ocene učenika (od 5 do 1) i dajemo tekstualni opis Odličan, Vrlo dobar, itd: Ocena: Switch (X = 5, "Odličan", X = 4, "Vrlo dobar", X = 3, "Dobar", X = 2, "Dovoljan", X = 1, "Nedovoljan") (ovo bi trebalo da stane u jedan red) Funkcija Choose je zgodnija od Switch, ali samo ako se ispituje promenljiva koja ima numeričku vrednost koja odgovara rednom nabrajanju (1, 2, 3,...). Ona nije ograničena u broju alternativa. Konvertovanje cifara ocena učenika možemo konvertovati u deskriptivni tekst: Ocena: Choose ([X], "Nedovoljan", "Dovoljan", "Dobar", "Vrlo Dobar", "Odličan") 'gde X uzima vrednosti 1-5 (ovo bi trebalo da stane u jedan red) Najfleksibilniji metod ispitivanja je upotreba Lookup tabele. Možete kreirati tabelu u kojoj će biti zapisani tekstualni podaci (dugački) sa pridruženom šifrom (ID) koje će se kasnije, na osnovu kratke provere numeričke vrednosti, prozvati po svojoj šifri. Postoji mnogo načina da se "izvade" vrednosti iz tabele; često korišćena je funkcija DLookup. Ispitajmo vrednost polja [Ocena] forme [frmOcene] i dajmo tekstualni opis sadržane u polju [Opis ocene] tabele [tblOcene]: DLookup ("[Opis ocene]", "tblOcene", "[Ocena] =" & Forms![frmOcene]![Ocena]) (ovo bi trebalo da stane u jedan red) Iako načelno najmoćnija zbog svoje fleksibilnosti, ova funkcija (kao uostalom i sve ostale "domain aggregate" funkcije) radi nesrazmerno sporo u odnosu na direktno odlučivanje u If i Select Case klauzulama. Zato je preporučljivo da, kada god je to moguće, upotrebite neku od drugih nabrojanih procedura ili funkcija.
|
|
Vrh stranice Prethodna stranica Naslovna strana Mapa sajta Pretraga |
| AFORIZAM ZA DANAS | OVIH DANA SLUŠAMO... |
| Copyright © Praktikum na Webu, 2000-2009; Valinor Design; sva prava pridržana. |