Domino 9 und frühere Versionen > ND8: Entwicklung
on error goto im "sub initialize" und in "function" notwendig?
(1/1)
Frank_B:
Hallo,
ich habe hier ein Lotusscript als Beispiel um es zu verdeutlichen:
sub initialize
[...]
on error goto fehler
Call IchbineineFunktion
[...]
exit sub
fehler:
print "Fehler"
end sub
function IchbineineFunktion
[...]
end function
---
Mit dem Errorhandler kann ich im Script Fehler abfangen.
Erkennt dieser Errorhandler generell auch eine fehlerhafte Funktion oder muss ich in der function auch einen zusätzlichen errorhandler einbauen ?
Schnubbel:
hi,
wenn du im Falle eines Fehlers die Zeile aus der Funktion haben willst, musst du das Error - Handling auch in die Funktion schreiben.
Ich schreibe in die Msgbox, die ich bei Fehlern auslöse - in Klammern - auch immer in welcher Funktion der Fehler aufgetreten ist.
Gruß
Thorsten
cg-home:
Hi,
das kann man, wenn es immer gleich ist, auch etwas automatisieren.
Den Code kannst Du im Designer bei den Vorgaben
im Bereich "Domino Designer - LotusScript-Editor - Codeschablone"
hinterlegen. Auch die Kommentare mit den Beschreibungen die ich am Anfang
immer rein machen möchte, können so hinterlegt werden.
Wenn man darin dann noch die Platzhalter verwendet, sieht es immer
gleich aus und man hat nicht mehr so viel damit zu tun - und man vergisst es nicht ;-)
Hier mein Beispiel unter Sub und Function. Ich nutze "meist" eine extra Lib für das Errorhandling.
Also ggf. noch Dein Errorhandling einbauen.
--- Code: ---%REM
------------------------------------------------------------------------------------------
Design : ${designelement_type} - ${designelement_name}
Element : ${element_type} - ${element_name}
Database : ${db_title}
Function : <Kurz-Beschreibung>
Requires : Use "libError" für Errorhandling in Options
------------------------------------------------------------------------------------------
Author : ${author}, <Firma>
Created : ${date}
Software : Lotus Notes/Domino 9.0.1
------ Änderungen ------------------------------------------------------------------------
<Platzhalter für Änderungen>
----- weitere Beschreibung --------------------------------------------------------------
<Platzhalter für Beschreibung>
------------------------------------------------------------------------------------------
%ENDREM
On Error GoTo ErrorHandler
Dim session As New NotesSession
Dim db As NotesDatabase
Dim coll As NotesDocumentCollection
Dim doc As NotesDocument
Set db = session.CurrentDatabase
Set coll = db.UnprocessedDocuments 'Alle markierten Doks in die Collection
Set doc = coll.GetFirstDocument
%REM
While Not (doc Is Nothing)
'Call DatenSammeln(doc)
Set doc = coll.GetNextDocument(doc) 'nächstes Bewertungs-Dok nehmen
Wend 'While Not (doc Is Nothing)
%ENDREM
EXITSCRIPT:
Exit Sub
ERRORHANDLER:
Select Case Err
Case 4419
MsgBox "No document selected.", 64, db.title
Resume exitScript
Case Else
Call ErrorMessage("${designelement_type}: ${designelement_name}, ${element_type}: ${element_name}")
Resume EXITSCRIPT
End Select 'Select Case Err
--- Ende Code ---
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln