Utilita StartExcel - Automatický export
Utilita StartExcel - automatický (periodický) export
Automatický export umožňuje periodicky (alebo pri určitej udalosti) aktivovať určitý zošit (report) uložený na pevnom disku v súbore *.xls, vyhodnotiť ho a následne aktívnu stránku uložiť do iného *.xls súboru do špecifikovaného adresára s voliteľným menom.
Export je možné vykonať pomocou utility StartExcel (súbor startexcel.exe sa nachádza v inštalačnom adresári v podadresári Bin) s nasledovnými parametrami:
Deklarácia |
| ||||||||||||||||
Parametre |
| ||||||||||||||||
Popis | Utilita StartExcel naštartuje MS Excel. Ak je parameter /I uvedený, MS Excel bude otvorený ako viditeľný. Ak je uvedený parameter /Q, prípadné chybové hlásenia budú zapísané do súboru startexcel.log a utilita StartExcel bude ukončená. |
Poznámka:
Periodický (alebo na základe ľubovoľnej podmienky) export je možné realizovať prostredníctvom ESL skriptu nasledovne:
vytvoríme objekt typu Event, ktorý sa bude štartovať keď treba vytvoriť export (napríklad periodicky)
zdrojový kód eventu:
INT _ret
TEXT _txtMsg
TEXT _report = "c:\Reporty\test1.xls"
; report export with 50 seconds timeout
_ret := RUN "startexcel.exe" SYNC " " + _report + " StartParams EXP" TIMEOUT 50
IF _ret\VLD THEN
IF _ret = _ERR_TIME_OUT THEN
_txtMsg := "TIMEOUT pre export reportu"
ELSE
_txtMsg := "Export ExitCode = " + %IToStr(_ret)
IF _ret = 0 THEN
_txtMsg := _txtMsg + " OK"
ELSE
IF _ret = 1 THEN
_txtMsg := _txtMsg + " Init Ole Error"
ELSE
IF _ret = 2 THEN
_txtMsg := _txtMsg + " Start Excel Error"
ELSE
IF _ret = 3 THEN
_txtMsg := _txtMsg + " Open Report Error"
ELSE
IF _ret = 4 THEN
_txtMsg := _txtMsg + " Run Macro Error"
ELSE
_txtMsg := _txtMsg + " Unknown Error"
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ELSE
_txtMsg := "Nepodarilo sa spustiť startexcel.exe"
ENDIF
LOG _txtMsg, SysTime
END
Po pokuse o export dát je ošetrená návratová hodnota akcie RUN so zápisom stavu exportu do monitorovacej databázy.
Automatický štart exportu je možné dosiahnuť vhodnou konfiguráciou systémovej služby: "Scheduled Tasks" (Windows NT alebo 2000). Táto umožňuje periodicky vykonávať (štartovať) daný program.
Doporučené nastavenie parametrov zošita pre automatický export:
Dôležité sú bunky B1 až B3, bunka B5 musí mať hodnotu FALSE, bunka B11 – musí predstavovať korektné meno súboru, do ktorého bude export prebiehať. Ak súbor existuje, bude prepísaný.