Tehnika Krstarice > Programiranje > Access - Filtriranje izveštaja

Access - Filtriranje izveštaja

20.07.2001.

U sledećem primeru videćemo kako možete da u vlastitim Access aplikacijama ugradite mogućnost filtriranja izveštaja, pre štampanja ili prikaza na ekranu. Ovom opcijom će korisnici vaših programa moći da sami odrede šta treba da se pojavi u izveštaju, a šta ne. U stvari, aplikacija će "pitati" korisnika za vrednost koju ćete koristiti kao filter ograničavanja slogova u izveštaju, i to pre njegovog otvaranja. Unos vrednosti filtera omogućićemo preko InputBox-a, a samu vrednost ćemo ubaciti u uslov Where. Na slici možete videti kako će izgledati forma za poziv izveštaja i InputBox. Na formi imamo samo jedno dugme kojim pokrećemo generisanje filtriranog izveštaja. Programski kod koji stoji iza ovog dugmića je sledeći:

 Private Sub Command_Click()
   Dim strRJ As String
   Dim strFilter As String
   strRJ = Inputbox ("Unesite broj radne jedinice", "Radna jedinica")
   If strRJ = " " Then
         '   u slucaju klika korisnika na Cancel
         GoTo Izlaz_iz_programa
   End If
   strFilter = "[Radna_jedinica] = " " " & strRJ & " " "  "
   DoCmd.OpenReport "Spisak radnih jedinica", asViewPreview, , strFilter
               
   Izlaz_iz_programa:
      Exit Sub
 End Sub       

Kao što se može videti, funkcija InputBox vraća vrednost koju korisnik unosi i zatim se ta vrednost smešta u promenljivu strRJ. Nakon ovoga, promenljiva se koristi za postavljanje uslova Where, kod metode OpenReport. Primetićete i jednu If...Then naredbu, ona služi za proveru da li je korisnik možda kliknuo na dugme Cancel (vraća string "nulte" dužine). Promenljivoj strFilter se dodeljuje naziv polja za filtriranje i sama vrednost promenljive strRJ, čime se gradi uslov Where. Da bi uslov Where prikazao vrednost strRJ pod navodnicima, moraćete da uključite i navodnike u filter. Nakon toga uslov Where može izgledati ovako:

 Where [Radna_jedinica] = "Proizvodnja"

Ovim filterom korisnik je selektovao sve slogove gde je vrednost polja "Radna_jedinica" - "Proizvodnja."

Preporučite ovaj članak

Članak još uvek nije ocenjen.