Malo sam se igrao sa prvim resenjem koje je ponudio SLOJ.1973, print.mdb. Dopada mi se ideja, briljantno je reseno dobijanje liste printera, kao i izbpor default printera pozivom Windows API funkcije. Dostojno majstora, bravo.
Probao sam da upotrebim formu, i bilo je tu i tamo malih zastoja, pa sam izmenio sam nekoliko sitnica. Sada forma moze da radi sa bilo kojim izvestajem - ime zivestaja se salje kao parametar, na DoCmd.OpenFor, dodaje se argument OpenArgs i to je to.
Kad otvarate formu, posaljite u OpenArgs ime reporta koji zelite da stampate korz formu koju je napravio SLOJ.1973. Napravio sa nekoliko sitnih ispravki i dodataka, da sprecim run-time greske i pucanje koda kad korisnik ne izabere sve parametre (sve greske sam uspeo da napravim licno ;-). To ne umanjuje vrednost originalnog resenja. Da nije bila utakmica u pitanju, siguran sam da bi SLOJ sve to ionako sam uradio. (A je'l to ona utakmica sto smo izgubili sa 2:0 pre neki dan? Sva sreca te ne gledam fudbal vise...)
U primeru koji sam zakacio, izvestaji se biraju sa liste. Otvara se izvestaj u Preview rezimu, i forma - print dialog. Naslov forme je ime izvestaja. Kad kliknete ono dugme za satmpu, odstampa se izvestaj. Ukoliko je neki parametar preskocen, radi se sa default vrednostima. Ako nekoga zanimaju izmene u kodu - potrazite text 'Zidar' i trebalo bi da vidite komentare u kodu koji sam menjao, ne formi koju je radio SLOJ.1973. na formi koju sam ja dodao, za izbor izvestaja, vidi se kako se poziva izvestaj i forma istovremeno, i kako se formi salje OpenArgs. Upotreba OpenArgs je nacin da se formamma ovog tipa salju "parametri". drugi nacin je gradjenje klase, pa propertis, get, set... Meni je ovako lakse sa OpenArgs, nekako je razumljivije, i manje je posla.
:-)