![]() |
![]() |
| |||||
|
Az On Error Goto Hibakezelo sor megadja, hogyan működjön a StarOffice Basic, ha hiba történik. A Goto Hibakezelo utasítás biztosítja, hogy a StarOffice Basic befejezi az aktuális programsort, és végrehajtja a Hibakezelo: kódot. A Resume parancsA Resume Next parancs folytatja a program futását a hibát okozó sor utáni sorban, miután a hibakezelő kód befejeződött:
A Resume Folytatas paranccsal megadhatjuk, honnan folytatódjon a program a hibakezelés után:
Ha azt akarjuk, hogy a program folytatódjon hibaüzenet nélkül, ha hiba történik, akkor használjuk a következő formátumot:
Az On Error Resume Next parancsot körültekintően használjuk, mert a hatása globális. További információkért lásd: Tippek a strukturált hibakezeléshez. Hibainformációk lekérdezéseHibakezelésnél hasznos lehet, ha rendelkezünk a hiba leírásával, és tudjuk, miért és hol történt a hiba:
Az
utasítás megjeleníti egy üzenetablakban a hibainformációkat. Megjegyzés - Míg a VBA összefoglalja a hibaüzeneteket egy Err nevű statisztikai objektumban, a StarOffice Basic az Err, Error$ és Erl változót biztosítja. Az információk addig maradnak érvényesek, amíg a program egy Resume vagy On Error parancshoz nem ér, ahol az információk elvesznek. Megjegyzés - A VBA-ban az Err objektum Err.Clear metódusával lehet visszaállítani a hibainformációkat, ha hiba történik. A StarOffice Basic programban ezt az On Error vagy a Resume parancs végzi el. Tippek a strukturált hibakezeléshezA definíciós parancs (On Error) és a visszatérési parancs (Resume) is a Goto egyik változata. Ha világosan felépített programot akarunk létrehozni, hogy elkerüljük a hibaüzenetek megjelenését, amikor ezt a struktúrát használjuk, ne használjunk ugróutasításokat anélkül, hogy nem figyelnénk meg azokat. Az On Error Resume Next parancsot körültekintően kell használni, mert hatására a program nem jeleníti meg a hibaüzeneteket. A legjobb, ha csak egyféle hibakezelést használunk egy programon belül ? a hibakezelés legyen elkülönítve a tényleges programtól, és ne ugorjunk vissza az eredeti kódba, ha hiba történik. Az alábbiakban példát láthatunk egy hibakezelési eljárásra:
| |||||
| |||||