Izvinjavam se ukoliko ponavljan rešenje koje je neko već možda ponudio.
Zadatak:
Citat:
Moje pitanje bi bilo kako da selektujem nekoliko faktura klikom na broj fakture (BrojFakture) i time u queriju koji može
da bude i neki novi query dobijem to što sam izabrao, tj. da mi u queriju izlista one fakture koje sam izabrao sa svim
kolonama
koje mu pripadaju, dakle (IDFakture, BrojFakture, DatumFakture, Kupci, Adres, Grad..)
Radi se o tome da na nekom mestu mogu da posle manipulišem sa samo onim fakturama koje mi trenutno trebaju.
Kada to završim uradim deselect ponovnim klikom na BrojFakture i sve ostaje neselektovano i spremno za novu selekciju.
Resenje nije tako komplikovano, ali nije ni trivijalno. Predlažem da uradiš ovako:
1) napravi lokalnu tabelu, tblIzbor u fajlu sa front endom, koja ima kolone tačno one kolone koje zeliš da vidiš pri izboru faktura - (IDFakture, BrojFakture, DatumFakture, Kupci, Adres, Grad..). Dodaj još jednu kolonu, Izbor, tipa Yes/No tipa, default = 0 (FALSE).
2) Kad hoces da izabiraš fakture za štampu uradiš ovo:
2.1 Isprazniš tabelu tblIzbor ( DELETE * FROM tblIzbor)
2.2 Upises u tabelu tblIzbor, iz nekog kverija ili tabele koji sadrže sve kolone koje ti trebaju, ovako nekako
(INSERT INTO tblIzbor (IDFakture, BrojFakture, DatumFakture, Kupci, Adres, Grad..)
SELECT IDFakture, BrojFakture, DatumFakture, Kupci, Adres, Grad FROM tvojaTabela)
U ovom INSERT izrazu ne treba da bude kolone Izbor, ona se popunjava sama od sebe, je smo stavili Default 0 FALSE
Sada imas izbornu listu iz koje može da se odabira, čekiranjem kolone Izbor.
3) Sada tblIzbor prikazes korisniku, kroz neku formu, datasheet, na kojoj se vidi i check-box kolona Izbor
4) Korisnik izabere fakture koje želi da štampa ili radi nešto s njima, tko što ih čekira
5) Sada možeš da kažeš ovako, na primer:
DoCmd.OpenReport ReportName:="ime tvog izvestaja", wherecondition:= "BrojFakture IN (SELECT BrojFakture FROM tblIzbor)"
Ovim si postigao:
a) ne diraš postojeće izveštaje i forme - pozivaš ih tako što u DoCmd Open... dodaš WhereCondition onako kao u primeru
b) pošto je tblIzbor lokalna tabela, u fajlu aplikacije, svaki korisnik radi sa svojom tabelom, ne brišu jedan drugome izbor
Trebaće tu i tamo malo kodiranja, kod otvaranja objekata na osnovu izabranih fakture, pozivanje forme za izbor, pražnjenje tblIzbor, INSERT INTO.. ali to ne bi trebalo da bude problem. Nikakvi IIF ili petlje, Bože sačuvaj. Zato smo rekli da nije trvijano rešenje, ali nije ni preteško.
Nadam se da je pomoglo.