Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Wizards & Builders GmbH Fehlerbehandlung und Debugging Aufspüren und Behandeln von Programmfehlern unter Microsoft Visual FoxPro.

Ähnliche Präsentationen


Präsentation zum Thema: "Wizards & Builders GmbH Fehlerbehandlung und Debugging Aufspüren und Behandeln von Programmfehlern unter Microsoft Visual FoxPro."—  Präsentation transkript:

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


Herunterladen ppt "Wizards & Builders GmbH Fehlerbehandlung und Debugging Aufspüren und Behandeln von Programmfehlern unter Microsoft Visual FoxPro."

Ähnliche Präsentationen


Google-Anzeigen