[ mirkomass @ 20.04.2005. 11:08 ] @
Da li se neko sreo sa sledecim problemom:
Imam formu koja ima dva taba (stranice), na jednoj imam klasican pregled sadrzaja neke tabele, dok je na drugoj list box koji odrazava sadrzaj druge tabele koja je sa prvom vezana relacijom "vise na jedan". Sad sam query-ju koji Access formira da bi imao izvor podataka za tu listu postavio uslov u CRITERIA polja koje je identifikator, tipa: Forms!NazivOveForme.IDpoljeIdentifikator da bi mi se u listi isfiltrirali samo oni zapisi za koje je ovaj identifikator jednak (logicno da mi ne treba cela lista koja je ogromna). E Sad to radi, ali sa malom kvakom, radi samo za prvi zapis na prvom tabu i kada odem na neki sledeci, lista je i dalje za prvi. pokusao sam i "refresh" dodeliti dogadjaju "on click" ovog mog drugog taba ali ne pali.
Unapred zahvalan svakome ko odvoji malo vremena da mi odgovori.
[ mika @ 20.04.2005. 11:29 ] @
Pokušaj da umesto onClick, promeniš onChange event na combo boxu, i za taj događaj upiši: Me.requery i Me.refresh. Time ćeš osvežiti query i formu (koja je bazirana na tom query-ju.

Mada, ima i bolje rešenje: Filteri. Konkretno, u onChange event na tom combo boxu staviš sledeći kod:

Code:

Me.Filter="Ovde staviš izraz iza WHERE klauzule u upitu"
Me.FilterOn True


...time ćeš aktivirati filter, koji će naterati formu da prikaže samo one recorde koji su stavljeni u uslovu. Dakle, u telo filtera staviš onaj izraz koji ti je posle WHERE klauzule u SQL upitu.

Pozdrav, i javi ako zapneš negde.
[ mirkomass @ 20.04.2005. 14:17 ] @
Hvala Mika na kodu, ta sintaksa mi nije bila poznata, ali u cemu je problem: ja nemam kombo u ovom slucaju nego je u pitanju list box. A on nema opciju "on change" medju dogadjajima.Mislim da sam blizu resenja, bice da je refresh u pitanju,samo na koji nacin i sta osveziti da se to istovremeno odrazi na listi. Mozda je resenje u tome da nagovorim upit da pogleda ima li kakvih promena u uslovu (CRITERIA). Hvala u svakom slucaju.
[ mika @ 20.04.2005. 15:08 ] @
Ako radiš sa onClick eventom, onda ubaci isti kod (koji sam ti napisao), samo na onClick event, i radiće. Prethodno malo eksperimentiši sa filterima, da bi video kako funkcionišu. U svakom slučaju, moraš da odradiš me.requery, jer to tera upit da se ponovo "upita"

Ako zapneš, javi. Pozdrav!
[ izonic @ 20.04.2005. 17:13 ] @
dim SQL as String
Dim a as Integer
a=UslovPretrage
SQL=TabelaUListboksuURwsource
SQL=SQL & " Where ImePolja=" & a
me.ImeListboxsa.Rowsource=SQL

Ovo Uvijek radi
[ mirkomass @ 21.04.2005. 08:44 ] @
Probah i ovu soluciju sa me.requery, ali ne uspedoh. Mora da je zbog moje bezgranicne gluposti, mada ja sam tek malo zagazio u duboke vode accessa. Sto se tice izoniceve primjedbe, shvatam sta treba da ostvarim istim kodom, ali prosto ne znam za koji dogadjaj da ga vezem. Me requery uradi sledece, kad odem na bilo koji od sledecih zapisa i pogledam svoj list na drugoj stranici, ponovo automatski budem vracen na pocetak.
[ izonic @ 21.04.2005. 20:24 ] @
Kod Postavis na afterupdate polja u kojem je uslov za listbox.
Nemoj stavljati uopsete requery.
Pozdrav i sretan rad.