Fehlerbehandlung in Action
Fehlerbehandlung in Action
von mp-one » Sa 4. Sep 2010, 10:51
Hallo,
wie ist das eigentlich mit der Fehlerbehandlung in Action, gibt es da auch so was wie "TRAP" und gibt es dann Unterschiede, je nachdem ob man das Modul oder eine Runtime verwendet?
Gruß,
Michael
Re: Fehlerbehandlung in Action
von FlorianD » Sa 4. Sep 2010, 12:05
Hi,
das geht so
- Code: Alles auswählen
PROC MYERR(BYTE err) ; in err übergibt Action den Fehlercode an die Routine
;hier kommt deine Errorbahndlung. Achtung, Du musst ALLES selber machen!
;wenn hier nichts drinsteht, macht das Programm einfach weiter (!!!)
PRINT("Error:")
PRINTBE(err) ; in err übergibt Action den Fehlercode an die Routine
RETURN
PROC MAIN()
CARD tmperr
tmperr=Error ; Error ist die Routine, die Action normalerweise anspringt, wenn es einen Error gibt, die merken wir uns einfach.
Error=MYERR ; nun hypft Action! im Fehlerfall zu Deiner Error-Routine
DO
; Dein Programm
UNTIL PROGRAMM=durch
OD
Error=tmperr ; wieder zurücksetzen
RETURN
ob das Unterschiede macht zwischen Modul und Runtime kann ich nicht 100%tig sagen, manchmal habe ich das Gefühl es ist so, denn manche Runtime hat keine Error-Routine.
Daher immer selber eine machen.
Man kann auch mehrere Routinen machen und dann je nach Bedarf umschalten. Z.B. eine bei Diskbetrieb, die immer den #Kanal zumacht, eine andere die nur die Nummer ausgibt usw.
Re: Fehlerbehandlung in Action
von mp-one » So 5. Sep 2010, 10:41
Hi Florian,
danke für die Info. Es gibt echt leistungsfähige Features in Action. Ich glaube, es lohnt sich, diese Sprache mal näher anzuschauen. Ich hoffe, es wird was mit dem Action-Workshop von cas.
Gruß,
Michael
Re: Fehlerbehandlung in Action
von eda70 » Mo 6. Sep 2010, 11:32
Re: Fehlerbehandlung in Action
von mp-one » Mo 6. Sep 2010, 15:05
Hi,
das ist wirklich eine gute Sache. Fast wie in C++, Java oder Delphi. Hast Du das schon mal probiert?
Gruß,
Michael
Re: Fehlerbehandlung in Action
von eda70 » Mo 6. Sep 2010, 15:59
Nee hab's noch nicht probiert...
Bin aber auf Testberichte gespannt