Pomoću akcije Primijeni filtar možete primijeniti filtar, upit ili SQL izraz WHERE na tablica, obrazac ili izvješće te tako ograničiti ili sortirati zapise tablice ili zapise temeljne tablice ili upita obrasca ili izvješća. Za izvješća tu akciju možete koristiti samo u makronaredba koje je navelo svojstvo događaja OnOpen izvješća.
Napomena: Tu akciju možete koristiti da biste primijenili SQL izraz WHERE samo kada primjenjujete filtar poslužitelja. Filtar poslužitelja nije moguće primijeniti na izvor zapisa spremljene procedure.
Napomena: Akcija makronaredbe ApplyFilter nije dostupna u web-aplikacijama programa Access.
Postavka
Akcija ApplyFilter ima sljedeće argumente.
Argument akcije |
Opis |
Naziv filtra |
Naziv filtra ili upita koji ograničava ili sortira zapise tablice, obrasca ili izvješća. Možete unijeti naziv postojećeg upita ili filtra koji je spremljen kao upit u okvir Naziv filtra u sekciji Argumenti akcije u oknu Sastavljač makronaredbi. Napomena: Kada koristite ovu akciju za primjenu filtra poslužitelja, argument Naziv filtra mora biti prazan. |
Uvjet Where |
Valjani SQL izraz WHERE (bez riječi WHERE) ili izraz koji ograničuje zapise tablice, obrasca ili izvješća. Napomena: U izrazu argumenta Uvjet Where lijeva strana izraza obično sadrži naziv polja iz temeljne tablice ili upita za obrazac ili izvješće. Desna strana izraza obično sadrži kriteriji koje želite primijeniti na ovo polje da biste ograničili ili sortirali zapise. Kriterij, primjerice, može biti naziv kontrole na drugom obrascu koja sadrži vrijednost koju želite da se podudaraju sa zapisima u prvom obrascu. Naziv kontrole mora biti u potpunosti kvalificiran, na primjer: Forms!nazivobrasca!nazivkontrole Nazivi polja moraju se nalaziti u dvostrukim navodnicima, a slovni nizovi moraju biti u jednostrukim navodnicima. Maksimalna je duljina argumenta uvjeta Where 255 znakova. Ako morate unijeti dulji SQL izraz WHERE, upotrijebite metodu ApplyFilter objekta DoCmd u modulu Visual Basic for Applications (VBA). U VBA moguće je unijeti SQL izraze WHERE duljine do 32.768 znakova. |
Napomena: Možete koristiti argument Naziv filtra ako ste odabrali već definirani filtar koji pruža odgovarajuće podatke. Možete koristiti argument uvjet Where da biste izravno unijeli kriterij ograničavanja. Ako koristite oba argumenta, Access primjenjuje izraz WHERE na rezultate filtra. Morate koristiti jedan ili oba argumenta.
Napomene
Filtar ili upit možete primijeniti na obrazac u programu prikaz obrasca ili prikaz podatkovnog lista.
Filtar i uvjet WHERE koje primijenite postaju postavka svojstva Filtar ili Filtar poslužitelja obrasca ili izvješća.
Za tablice i obrasce ta je akcija slična kliku na Primijeni filtar/sotriraj ili Primijeni filtar poslužitelja na izborniku Zapisi. Naredba izbornika primjenjuje zadnji stvoreni filtar na tablicu ili obrazac, dok akcija ApplyFilter primjenjuje određeni filtar ili upit.
Ako u bazi podataka programa Access na izborniku Zapisi pokažete na Filtar, a zatim, nakon što pokrenete akciju ApplyFilter, kliknete Napredno filtriranje/sortiranje, Napredni filtar/prozor za sortiranje prikazuje kriterij filtra koji ste odabrali tom akcijom.
Da biste uklonili filtar i prikazali sve zapise za tablicu ili obrazac u bazi podataka programa Access, možete koristiti akciju ShowAllRecords ili naredbu Ukloni filtar/sortiranje na izborniku Zapisi. Da biste uklonili filtar u projektu programa Access (.adp), možete se vratiti u prozor Filtar poslužitelja prema obrascu i ukloniti sve kriterije filtra, a zatim na izborniku Zapisi na alatnoj traci možete kliknuti Primijeni filtar poslužitelja ili postaviti svojstvo ServerFilterByForm na False (0).
Kada spremite tablicu ili obrazac Access sprema filtar koji je trenutno definiran u tom objektu, ali neće automatski primijeniti filtar sljedeći put kada se objekt otvori (iako će automatski primijeniti sortiranje koje ste primijenili na objekt prije spremanja). Ako želite automatski primijeniti filtar kada se obrazac prvi put otvori, odredite makronaredbu koja sadrži akciju ApplyFilter ili proceduru događaja koja sadrži metodu ApplyFilter objekta DoCmd kao postavku svojstva događaja OnOpen obrasca. Filtar možete primijeniti i pomoću akcija OpenForm ili OpenReport ili njihovih metoda. Da biste automatski primijenili filtar kada se tablica prvi put otvori, tablicu otvorite pomoću makronaredbe koja sadrži akciju OpenTable nakon koje odmah slijedi akcija ApplyFilter.
Primjer
Primjena filtra pomoću makronaredbe
Sljedeća makronaredba sadrži skup akcija, od kojih svaka filtrira zapise obrasca Popis telefonskih brojeva klijenata. U njoj je prikazano kako se koriste akcije ApplyFilter, ShowAllRecords i GoToControl. Pokazuje i kako korištenjem uvjeta odrediti koji je preklopni gumb odabran u grupi mogućnosti na obrascu. Svaki redak akcije povezan je s preklopnim gumbom koji odabire skup zapisa počevši s A, B, C i tako dalje, ili sve zapise. Ta se makronaredba mora pridružiti događaju AfterUpdate grupe mogućnosti FiltarNazivTvrtke.
Uvjet |
Akcija |
Argumenti: Postavka |
Komentar |
[FiltriNazivaTvrtki]=1 |
ApplyFilter |
Uvjet Where: [NazivTvrtke] Like "[AÀÁÂÃÄ]*" |
Filtar za nazive tvrtke koji počinju slovom A, À, Á, Â, Ã ili Ä. |
[FiltriNazivaTvrtki]=2 |
ApplyFilter |
Uvjet Where: [NazivTvrtke] Like "B*" |
Filtar za nazive tvrtke koji počinju slovom B. |
[FiltriNazivaTvrtki]=3 |
ApplyFilter |
Uvjet Where: [NazivTvrtke] Like "[CÇ]*" |
Filtar za nazive tvrtke koji počinju slovom C ili Ç. |
... Retci akcije od D do Y imaju isti oblik kao retci od A do C... |
|||
[FiltriNazivaTvrtki]=26 |
ApplyFilter |
Uvjet Where: [NazivTvrtke] Like "[ZÆØÅ]*" |
Filtar za nazive tvrtke koji počinju slovom Z, Æ, Ø ili Å. |
[FiltriNazivaTvrtki]=27 |
ShowAllRecords |
Prikazuje sve zapise. |
|
[RecordsetClone].[RecordCount]>0 |
GoToControl |
Naziv kontrole: NazivTvrtke |
Ako se za odabrano slovo vrate zapisi, fokus prelazi na kontrolu NazivTvrtke. |