Během tvorby aplikace ale i při jejím běhu mohou nastat situace, kdy dojde k nějaké aplikační chybě. Tu je nutno zachytit, najít příčinu a opravit.
Hledání chyb ve skriptech
INFO systém:
Chyby jsou obvykle zjistitelné v INFO systému v položce
/Errors/Script. U dané chyby je popis, číslo řádku a sloupce ve skriptu.
Psaní vlastních vět ("logování") do INFO systému:
Některé chyby ve skriptu však mohou být "záludnější". Například chyba nemusí být syntaktická ale sémantická, tzn. skript běží ale né tak jak by měl.
Pro zjištění příčiny lze použít metodu
Pm.Debug (nebo metoda
Pm.InfoLogAdd) a např. tzv. "
půlení intervalu". To znamená, že někde v aplikaci ve vhodném místě (nebo na více místech) ve skriptu umístíme tuto metodu (s ladící poznámkou v prvním parametru výrazu). Pak ve spuštěné aplikaci zajistíme vykonání skriptu a v
položce Debug INFO systému zjistíme, zda je zobrazena "ladicí poznámka". Tato informace nám napoví, zda je chyba ve skriptu
před nebo
za poznámkou.
Web obrazy:
Metoda
Pm.Debug a metoda
Pm.InfoLogAdd funguje i na Web klientovi a výpis lze prohlížet ve
Web obrazu stisknutím klávesy
Shift+CtrlAlt+mezerník (nebo stisknutím klávesy
F12 v kartě
"Konzole").
Dlouhodobé sledování chyb v aplikaci
Informace o chybách, které se zapisují do
INFO systému jsou viditelné pouze ve spuštěné a zastavené aplikace (v runtime a ve vývojovém prostředí).
Při ukončení aplikace zaniknou a nelze je dohledat.
Uložení chyb do souboru LOG:
Globální chyby však mohou být zapisovány také do souboru
Aplikace.log.
Tento zápis chyb lze nastavit v souboru
Aplikace.ini v sekci
[Log].
LOG soubor lze pak studovat i po několikanásobném ukončení a spuštění aplikace.
Přednastaveno je logování pouze první vzniklé chyby daného typu.
Vlastní logování chyb:
Lze použít také událost
onAppError objektu
PmaRoot například:
- ke tvorbě vlastního logovacího souboru chyb
- k zápisu chybové události do alarmů nebo eventů
Restart aplikace
Mohou nastat situace, které se neprojeví při krátkodobém testování aplikace. Například:
- po restartu OS Windows je aplikace spuštěna dříve než služby Windows potřebné k běhu aplikace
- neobnoví se spojení s komunikačním zařízením po výpadku sítě, atd.
Oddálit spuštění aplikace lze například:
K restartu aplikace nebo OS
Windows po "zamrznutí" slouží bezpečnostní komponenta
PmRtManager jako WatchDog.