Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Ortrun Raimer Geändert vor über 11 Jahren
1
Wizards & Builders GmbH Fehlerbehandlung und Debugging Aufspüren und Behandeln von Programmfehlern unter Microsoft Visual FoxPro
2
Wizards & Builders GmbH Diese Schulung dient der Einführung in das Aufspüren und Behandeln von Fehlern in Anwenden unter Microsoft Visual FoxPro
3
Wizards & Builders GmbH Themenübersicht Aufspüren von Fehlern Aufspüren von Fehlern Assertions, Debuggen, Debugger, Trace, Debugout, Breakpoints, Eventtracking, Coverage Profiler, Fehlerprotokoll Assertions, Debuggen, Debugger, Trace, Debugout, Breakpoints, Eventtracking, Coverage Profiler, Fehlerprotokoll Behandeln von Fehlern Behandeln von Fehlern Auftreten von Fehlern, Fehlerbehandlung, Fehlerinformation, Fehlerreaktion, Reaktionsentscheidung, Kaskadieren, Fehlerobjekt Auftreten von Fehlern, Fehlerbehandlung, Fehlerinformation, Fehlerreaktion, Reaktionsentscheidung, Kaskadieren, Fehlerobjekt Fehlerbereiche Fehlerbereiche Dateien, Netz, Buffer, Validierung, Trigger, Ausgabe Dateien, Netz, Buffer, Validierung, Trigger, Ausgabe Diverse Probleme Diverse Probleme
4
Wizards & Builders GmbH Aufspüren von Fehlern Arbeiten mit dem Debugger, Coverage Profiler, Assertions in Microsoft Visual FoxPro
5
Wizards & Builders GmbH Assertions SET ASSERT ON SET ASSERT ON ASSERT MESSAGE ASSERT MESSAGE Performanter als Parameterprüfung auf allen Vererbungs- ebenen... Performanter als Parameterprüfung auf allen Vererbungs- ebenen... Systemfunktionen! Systemfunktionen!
6
Wizards & Builders GmbH Interaktives Debuggen SYS(1270) SYS(1270) Object Location Object Location SYS(1271) SYS(1271) Object SCX-File Object SCX-File SYS(1272) SYS(1272) Object Hierarchy Object Hierarchy SYS(1269) SYS(1269) Property Changed from Default Value Property Changed from Default Value Message() Message() Message(1) Message(1) Error() Error() SYS(2018) (Para.) SYS(2018) (Para.) aError() aError() Achtung: Diverse SETs werden zurückgesetzt! Achtung: Diverse SETs werden zurückgesetzt!
7
Wizards & Builders GmbH Debugger Programmverfolgung(Trace) Programmverfolgung(Trace) Überwachung(Debug) Überwachung(Debug) Aufruf-Stack(Program) Aufruf-Stack(Program) Debug-Ausgabe (Debugout) Debug-Ausgabe (Debugout) Aktuelle Variablen(Display Memo) Aktuelle Variablen(Display Memo) Extras Extras Haltepunkte, Ereignisüberwachung, Protokoll Haltepunkte, Ereignisüberwachung, Protokoll
8
Wizards & Builders GmbH Trace SET STEP ON SET STEP ON Step OutShift+F7 Step OutShift+F7 Step OverF6 Step OverF6 Step IntoF8 Step IntoF8 Run to CursorF7 Run to CursorF7 Set Next Statement Set Next Statement
9
Wizards & Builders GmbH Debugout DEBUGOUT Text DEBUGOUT Text Anzeige im Debugout-Fenster im Debugger Anzeige im Debugout-Fenster im Debugger Trick für Debugging mit Debugout: Trick für Debugging mit Debugout: #DEFINE DEBUGOUT NOTE #DEFINE DEBUGOUT NOTE
10
Wizards & Builders GmbH Breakpoints Möglichkeiten im Breakpoint-Fenster: Location Location Location und Expression Location und Expression Expression Expression Expression Changed Expression Changed Pass Counter! Pass Counter!
11
Wizards & Builders GmbH Eventtracking SET EVENTTRACKING ON SET EVENTTRACKING ON SET EVENTLIST TO SET EVENTLIST TO
12
Wizards & Builders GmbH Coverage Profiler _COVERAGE _COVERAGE SET COVERAGE TO SET COVERAGE TO DO (_COVERAGE) WITH DO (_COVERAGE) WITH Zusatzparameter: UI Zusatzparameter: UI Zusatzparameter: AddIn Zusatzparameter: AddIn
13
Wizards & Builders GmbH Fehlerprotokoll Protokolldatei für Fehlermeldungen Protokolldatei für Fehlermeldungen CREATE TABLE HISTORY CREATE TABLE HISTORY ( ( ) ) ( ( ) ) Ggf. umfangreiche Ausgaben Ggf. umfangreiche Ausgaben LIST STAT, LIST MEMO, Program(), SET LIST STAT, LIST MEMO, Program(), SET Ggf. Versand per eMail Ggf. Versand per eMail Zippen und eMail anlegen, ggf. bei nächstem Start Zippen und eMail anlegen, ggf. bei nächstem Start
14
Wizards & Builders GmbH Behandeln von Fehlern Abfangen und Behandeln von allgemeinen/Objekt-Fehlern unter Microsoft Visual FoxPro
15
Wizards & Builders GmbH Auftreten von Fehlern Programmcode Programmcode Menücode Menücode Objekte auf Maske mit Error-Methode Objekte auf Maske mit Error-Methode Objekte auf Maske ohne Error-Methode Objekte auf Maske ohne Error-Methode Datenumgebung Datenumgebung Buffer, Validierungen, Trigger Buffer, Validierungen, Trigger
16
Wizards & Builders GmbH Fehlerbehandlung Error-Methode: Error Event( ) Error Event( ) Für Fehler im Objekt Für Fehler im Objekt Manchmal kein RETRY möglich (bei leeren FoxPro- Methoden) Manchmal kein RETRY möglich (bei leeren FoxPro- Methoden) Globaler Handler: ON ERROR ON ERROR Für prozeduralen Code und Menüs Für prozeduralen Code und Menüs Immer RETRY oder RETURN TO MASTER möglich Immer RETRY oder RETURN TO MASTER möglich
17
Wizards & Builders GmbH Fehlerinformationen Parameter: Error() Error() Message() Message() Message(1) Message(1) Lineno() Lineno() Program() Program() Sys(16) Sys(16) Sys(2018) Sys(2018)Informationen: Aerror() Aerror() Wichtig: Eigenes Fehlerprotokoll! Wichtig: Eigenes Fehlerprotokoll!
18
Wizards & Builders GmbH Fehlerreaktionen RETRY RETRY RETURN RETURN RETURN TO RETURN TO RETURN TO MASTER RETURN TO MASTER CANCEL CANCEL QUIT QUIT
19
Wizards & Builders GmbH Reaktionsentscheidung Ignorieren und Fortsetzen (Warning) Ignorieren und Fortsetzen (Warning) Beseitigen und Fortsetzen (Error) Beseitigen und Fortsetzen (Error) Anwenderbeseitigung und Fortsetzen Anwenderbeseitigung und Fortsetzen Modulabbruch Modulabbruch Programmabbruch Programmabbruch Anwenderentscheidung Anwenderentscheidung
20
Wizards & Builders GmbH Kaskadieren von Fehlern Alternative: Weiter-leitung an Parent Parent suchen Parent suchen Auswertung Rückgabe-wert Auswertung Rückgabe-wert
21
Wizards & Builders GmbH Fehlerobjekte Erzeugen eines Fehlerobjekts in der Fehlermethode, Weitergabe Objekt Erzeugen eines Fehlerobjekts in der Fehlermethode, Weitergabe Objekt Problematisch bei CREATEOBJ-Fehlern und bei Speichermangel Problematisch bei CREATEOBJ-Fehlern und bei Speichermangel Sollte ggf. an globalen Errormanager weiterleiten (Parameter Direktaufruf) Sollte ggf. an globalen Errormanager weiterleiten (Parameter Direktaufruf) siehe ErrorObject (Comp.Gallery) siehe ErrorObject (Comp.Gallery)
22
Wizards & Builders GmbH Fehlerbereiche Typische Fehlerbereiche und die jeweilige Fehlerbehandlung unter Microsoft Visual FoxPro
23
Wizards & Builders GmbH Typische Fehler Dateien Dateien Netzwerk Netzwerk Buffer Buffer Validierung Validierung Trigger Trigger Ausgabe Ausgabe UDF-SQL oder Filter UDF-SQL oder Filter
24
Wizards & Builders GmbH Behandlung Dateifehler Tabelle oder Datenbank nicht in Datenumgebung, ggf. korrigierbar Tabelle oder Datenbank nicht in Datenumgebung, ggf. korrigierbar Zugriff verweigert, ggf. Wiederholung Zugriff verweigert, ggf. Wiederholung Indexfehler, ggf. Reindex/Reorganisation Indexfehler, ggf. Reindex/Reorganisation Reset: Userlogin/logout-Logdatei mit entsprechender Warnmeldung (!) Reset: Userlogin/logout-Logdatei mit entsprechender Warnmeldung (!) Komplexe Dateifehler: Einsatz FoxFix Komplexe Dateifehler: Einsatz FoxFix
25
Wizards & Builders GmbH Behandlung Netzwerkfehler Satz/Header durch User gesperrt Satz/Header durch User gesperrt SET REPROCESS SET REPROCESS Eigene RLOCK-Funktion mit Schleife Eigene RLOCK-Funktion mit Schleife Ggf. User-Feld in Datensatz betreff Satzsperre Ggf. User-Feld in Datensatz betreff Satzsperre Dateisperren vermeiden (FLOCK) Dateisperren vermeiden (FLOCK) Überlauf Satzsperren unter Novell Überlauf Satzsperren unter Novell MAXRECORDLOCKS, MAXPERSESSION MAXRECORDLOCKS, MAXPERSESSION
26
Wizards & Builders GmbH Behandlung Buffer-Fehler Datensatz während Löschen von anderem Anwender geändert Datensatz während Löschen von anderem Anwender geändert Datensatz während Änderung von anderem Anwender geändert Datensatz während Änderung von anderem Anwender geändert siehe Conflict Catcher (Comp.Galery) siehe Conflict Catcher (Comp.Galery) Feldweise Updaten oder Neuerfassung Feldweise Updaten oder Neuerfassung
27
Wizards & Builders GmbH Behandlung Validierungsfehler Feld-Valid Feld-Valid Wiederholung oder Speichern mit Fehler Wiederholung oder Speichern mit Fehler Tabellen-Valid Tabellen-Valid Wiederholung oder Speichern mit Fehler (?) Wiederholung oder Speichern mit Fehler (?) Primärschlüssel / Candidate-Schlüssel Primärschlüssel / Candidate-Schlüssel Korrektur erzwingen Korrektur erzwingen Normalerweise abgefangen (abstrakte Keys) Normalerweise abgefangen (abstrakte Keys)
28
Wizards & Builders GmbH Behandlung Trigger-Fehler Trigger versagt Trigger versagt Triggerart Triggerart Triggerlevel Triggerlevel immer problematisch immer problematisch Freundliche Ausgabe für Anwender Freundliche Ausgabe für Anwender ggf. RI-Fehlertexte ablegen und setzen ggf. RI-Fehlertexte ablegen und setzen Wiederholungsversuch nur bedingt sinnvoll Wiederholungsversuch nur bedingt sinnvoll
29
Wizards & Builders GmbH Behandlung Ausgabefehler Bildschirmausgabe Bildschirmausgabe Koordinatenfehler, Fontprobleme Koordinatenfehler, Fontprobleme Druckerausgabe Druckerausgabe Statusmeldungen weiterleiten und User fragen Statusmeldungen weiterleiten und User fragen Speichern in Datei Speichern in Datei Ggf. kein Speicherplatz Ggf. kein Speicherplatz Datenübertragung Datenübertragung
30
Wizards & Builders GmbH Behandlung UserDefined-Fehler In selbstdefinierten SQL-Statements oder Ausgabeabfragen ggf. ignorieren In selbstdefinierten SQL-Statements oder Ausgabeabfragen ggf. ignorieren notwendig: Modusflag für Userabfragen und andere LowPrio-Aktivitäten notwendig: Modusflag für Userabfragen und andere LowPrio-Aktivitäten ggf. globale Severity-Level-Variable ggf. globale Severity-Level-Variable
31
Wizards & Builders GmbH Diverse Probleme Spezieller Trigger-Fehler in RI-Delete Spezieller Trigger-Fehler in RI-Delete llRetVal=pnerror=0 verschieben llRetVal=pnerror=0 verschieben Fehlerhafte Fehlermeldung Field-Valid Fehlerhafte Fehlermeldung Field-Valid ??? ??? Fehler in SKIP-FOR-Klauseln in Menüs Fehler in SKIP-FOR-Klauseln in Menüs landen nicht in Fehlerbehandlung... landen nicht in Fehlerbehandlung...
32
Wizards & Builders GmbH Was ist zu beachten? Kl. Tricks merken Kl. Tricks merken Fehlerprotokoll Fehlerprotokoll Error-Strategie Error-Strategie Behandlung von Standardfehlern Behandlung von Standardfehlern Korrektur von kl. FoxPro-Fehlern Korrektur von kl. FoxPro-Fehlern
33
Wizards & Builders GmbH Vielen Dank! Das waren die Themen: Aufspüren von Fehlern Aufspüren von Fehlern Assertions, Debuggen, Debugger, Trace, Debugout, Breakpoints, Eventtracking, Coverage Profiler, Fehlerprotokoll Assertions, Debuggen, Debugger, Trace, Debugout, Breakpoints, Eventtracking, Coverage Profiler, Fehlerprotokoll Behandeln von Fehlern Behandeln von Fehlern Auftreten von Fehlern, Fehlerbehandlung, Fehlerinformation, Fehlerreaktion/entscheidung, Kaskadieren, Fehlerobjekt Auftreten von Fehlern, Fehlerbehandlung, Fehlerinformation, Fehlerreaktion/entscheidung, Kaskadieren, Fehlerobjekt Fehlerbereiche Fehlerbereiche Dateien, Netz, Buffer, Validierung, Trigger, Ausgabe, UDF, Diverse Dateien, Netz, Buffer, Validierung, Trigger, Ausgabe, UDF, Diverse
34
Wizards & Builders GmbH Wenn Fragen bestehen: Wizards & Builders Methodische Software- Entwicklung GmbH Frankfurter Str. 21b 61476 Kronberg Tel.: 06173-950906 Fax: 06173-950907 CIS: 101605,175
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.