Access - Automatsko štampanje izveštaja u zadato vreme Access - Automatsko štampanje izveštaja u zadato vreme
11.04.2002
Verovatno vam nikada na pamet nije pala ideja povezivanja Access-a i Windows Scripting Host-a (o WSH-u smo pisali u jednom od pređašnjih priloga). Povezivanjem WSH-a sa izvršnim vbScript fajlom (koga pokreće WSH), u kombinaciji sa Windows Task Scheduler-om, možete podesiti da se vaši Access izveštaji automatski štampaju u određeno vreme. Da bi ovo bilo moguće, potrebno je da kreiramo vbscript (ili Jscript fajl, koji takođe podržava WSH) i pokrenemo ga koristeći skript endžin cscript.exe, iz Task Scheduler-a. Da biste pokrenuli skript iz Task scheduler-a, selektujte samo cscript.exe kada inicijalno podešavate novi zadatak (task). Zatim, kada podesite novi task, modifikujte ga i dodajte putanju do skript fajla, tako što ćete putanju do vbscript fajla smestiti unutar navodnika. Kao na primer:
cscript.exe "c:\moji skriptovi\ stampa_izvestaja.vbs" Nakon ovog podešavanja, potrebno je još samo kreirati skript fajl. Sledeći programski kod preko bilo kog tekst editora smestite u novi fajl i snimite ga pod nazivom stampa_izvestaja.vbs: '-------------------Pocetak skript koda------'Windows Scripting Host Script, za Win 95/98/NT/2000 'Kompatibilno sa WSH-om verzije 1 i 2 'Moze se pokrenuti i iz komandne linije koriscenjem cscript.exe endzina 'Pozovite cscript.exe iz Windows Scheduler-a '------------------------------------------On error resume next call RunReport("c:\moji skriptovi\baza.mdb", "Izvestaji1") Function RunReport (strPutanjaDoBaze, strImeIzvestaja) On Error Resume Next Dim objDb Set objDb = CreateObject ("Access.Application") objDb.Visible = True objDb.OpenCurrentDatabase (strPutanjaDoBaze) objDb.Docmd.OpenReport strImeIzvestaja, 0 DoEvents objDb.CloseCurrentDatabase objDb.Quit End Function