Autor Thema: on error goto im "sub initialize" und in "function" notwendig?  (Gelesen 1620 mal)

Offline Frank_B

  • Senior Mitglied
  • ****
  • Beiträge: 275
  • Geschlecht: Männlich
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 ?
Gruß Frank

Offline Schnubbel

  • Junior Mitglied
  • **
  • Beiträge: 90
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
Client -> Notesclient 8.5.3
Betriebssystem ->Windows 7
User-> Thorsten :)

Offline cg-home

  • Aktives Mitglied
  • ***
  • Beiträge: 172
  • Geschlecht: Männlich
  • atnotes = Retter in der Not
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	


« Letzte Änderung: 17.04.15 - 13:19:22 von cg-home »
11     Server R11.0.1FP3 - Windows Server 2012R2
700   Clients R11.0.1FP3 - Windows Server 2012R2 über Citrix
Traveler R11 | PowerTools 14 | Ytria | DomNavigator

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz