Lovljenje napak

Pomoč pri izdelavi makrov
Odgovori
gorenjc
Prispevkov: 2
Pridružen: Če Dec 15, 2005 3:51 pm

Lovljenje napak

Odgovor Napisal/-a gorenjc »

Zdravo!

Prosil bi za na nasvet glede naslednjega problema in sicer:
Imam glavno proceduro, znotraj katere se pa kliče druga procedura.Lovljenje napak je nastavljeno tako v glavni proceduri, kakor tudi v proceduri,ki jo kličem znotraj te glavne.Zanima me, na kakšen način bi se dalo zaključiti glavno proceduro, če v klicoči proceduri pride do napake.Znano mi je sicer, da bi bil en način z End stavkom, vendar mi ta način ni všeč.
Primer:
sub a()

on error goto error_a
.
.
koda
..
call sub b()

on error goto 0
exit sub
error_a:
'koda za lovljenje napak v glavni proceduri
end sub
sub b()
on error goto error_b
.
.
koda
..
on error goto 0
exit sub
error_b:
'koda za lovljenje napak v proceduri b
end sub

Že vnaprej se zahvaljujem za odgovor.
lp
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Da bi lahko kakorkoli ukrepali v glavni proceduri, vam mora podprocedura sporočiti ali se je uspešno izvedla ali ne! Torej morate napisati FUNKCIJO (in ne proceduro), ki vrača true, če je vse ok oz. false, če se je zgodila napaka.

V primeru, da funkcija vrne falce, pač v kličoči funkciji (oz. proceduri) ustrezno ukrepate; javite napako, končate program ali kar pač želite.
lp,
Matjaž Prtenjak
Administrator
Odgovori