Error Handling unter Visual FoxPro. © 1999 TMN-Systemberatung GmbH ON ERROR n ON ERROR DO ERRHAND WITH error(), sys(16), message(), lineno(1) – Globales.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

C Tutorium – Fehlerbehandlung – Knut Stolze. 2 Grundsatz Also ist auch nach jedem Funktionsaufruf auf Fehler zu prüfen!! Jeder(!) Funktionsaufruf kann.
Stud.ip - Was ist das?! Kleiner Leitfaden für die ersten Schritte im System.
Vorgehensweise Website Besprechung am 11. Februar 2008 Gründung und Partnerunternehmen der Wirtschaftsuniversität Wien.
Ausnahmen HS Merseburg (FH) WS 06/07.
Abstrakte Klassen.
Ein Beispiel in Java.
Polymorphie (Vielgestaltigkeit)
Java-AG Ausnahmebehandlung Gerhard Gröger.
Programmieren mit JAVA
Die Skriptsprache Perl (8) Wolfgang Friebel DESY Zeuthen.
DVG Klassen und Objekte
Wizards & Builders GmbH Fehlerbehandlung und Debugging Aufspüren und Behandeln von Programmfehlern unter Microsoft Visual FoxPro.
Wizards & Builders GmbH Klassenbibliotheken Arbeiten mit Klassenbibliotheken in Microsoft Visual FoxPro.
Wizards & Builders GmbH Die Benutzeroberfläche Interaktives Arbeiten mit den Werkzeugen/Assistenten von Microsoft Visual FoxPro.
Wizards & Builders GmbH Einführung in die objektorientierte Programmierung Norbert Abb.
Wizards & Builders GmbH OOP in der Praxis Die wichtigsten Befehle für OO-Programmierung mit Microsoft Visual FoxPro.
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
Handling und Erstellung von: DLL, EXE, COM, DCOM
List und Combo Boxen. © 1999 TMN-Systemberatung GmbH Grundsätzliches n List und Combo Boxen sind sich im Aufbau sehr ähnlich und wurden bzgl. Datenquellen.
OLE/ OLE-Automation mit VFP Einsatz von ActiveX Controls
VFP Beispiele sowie Tools, Frameworks und Klassen
Neue DBF und DBC Befehle in Visual FoxPro
Lokal Views (Ansichten) in Visual FoxPro
Der VFP Debugger - Coverage und Profiling. © 1999 TMN-Systemberatung GmbH Der VFP Debugger n Neues Aussehen, eigene Task n Erweiterte Möglichkeiten n.
Grids - Datenblatt in Visual FoxPro
Rushmore - Einführung oder wie Sie Fehler vermeiden.
Visual FoxPro Objektorientierte Programmierung. © 1999 TMN-Systemberatung GmbH Grundbegriffe n Objekte n Eigenschaften n Methoden n Objektnamen n Klasse.
Wizards & Builders GmbH Schulung Visual SourceSafe für Visual FoxPro Norbert Abb W&B.
Netzwerkprogrammierung unter Visual FoxPro. © 1999 TMN-Systemberatung GmbH Probleme im Netzbetrieb n Mehrere Benutzer arbeiten auf den gleichen Datensatz.
Form Designer Programmierung von Forms. © 1999 TMN-Systemberatung GmbH Eigenschaften und das Eigenschafts Fenster n In Reitern nach Themen sortiert n.
Access & Assign Methoden in Visual FoxPro Zuweisungs- und Zugriffs-Methoden.
VFP Class Browser. © 1999 TMN-Systemberatung GmbH Einsatz des Class Browser n Managen von Klassen inklusive, ändern, umbenennen, löschen und umdefinieren.
Visual FoxPro 6.0 Visual FoxPro einrichten Datenbanken und Tabellen.
Definition von Klassen Umgang mit Objekten. © 1999 TMN-Systemberatung GmbH Code Definition von Klassen n Alle visuellen Klassen können auch per Code definiert.
Einstellungen im Web für Outlook
Ich möchte gerne mehrere Bilder auf ein Folie
Windows Befehlsskript
JavaScript.
IHV Benutzerverwaltung
Smart Features b Relationen b Regeln. Relationen b Definition: b Eine Relation ist eine Verbindung zwischen zwei Objekten. Diese Objekte können entweder.
Game Development mit LUA Integration und Kommunikation von LUA mit C++ Referat von Paul van Hemmen Seminar: Reusable Content in 3D und Simulationssystemen.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Einführung in die Programmierung Wintersemester 2012/13 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Uwe Habermann Venelina Jordanova Übernahme der Visual FoxPro Geschäftslogik.
Uwe Habermann Venelina Jordanova Schreiben von Visual FoxPro Code in der Oberfläche.
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Uwe Habermann Venelina Jordanova VFX in Cloud.
Tutorium PG Verbesserung Blatt 5 Beim instanziieren eines Fahrrades muss es möglich sein, alle benötigten Attribute dem Konstruktor zu übergeben.
Exception-Handling.
Objectives Verstehen was unterDelegate verstanden wird
Erste Schritte in DELPHI
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Project Hooks und _VFP Möglichkeiten. © 1999 TMN-Systemberatung GmbH Aufbau des Objekt Modells für Applications und Projects.
Technik schädlicher Software
Die Vereinsverwaltung unter Windows 2000 Anhand der folgenden Präsentation werden Sie mit der Verwaltung des Vereins unter Windows 2000 vertraut gemacht.
Java-Kurs Übung Benutzeroberflächen und Graphik Frames (Fenster)
Zufallsprogrammierung
Der Taskmanager ist Bestandteil des Betriebssystems, der als Prozessmanager Prozessmanager unter anderem die aktuell laufenden Programme und Prozesse.
242/102/49 0/51/59 181/172/166 Primary colors 248/152/29 PMS 172 PMS 137 PMS 546 PMS /206/ /227/ /129/123 Secondary colors 114/181/204.
How to Pipelining DEVOP PART I: WINDOWS POWERSHELL.
1 Prozesse im Studiengangsmanagement Kontext: Neues Abschlussziel erstellen Neues Studienfach erstellen.
1 Prozesse im Studiengangsmanagement Kontext: Neues Abschlussziel erstellen Neues Studienfach erstellen.
Excel-Tool: Beschwerdeanalyse  Folie 1 von Bitte Makros aktivieren Das Excel-Tool funktioniert nur mit eingeschalteten Makros. Eventuell erhalten.
Tutorium Software-Engineering SS14 Florian Manghofer.
Schnaps oder Fusel – Auslegung thermischer Trennapparate anhand realistischer Stoffdaten aus dem Thermodynamikpaket Props Elena Aulich Januar 2011.
Tutorium Software-Engineering SS14 Florian Manghofer.
Dynamischer Speicher malloc wird in c++ eher nicht mehr verwendet.
 Präsentation transkript:

Error Handling unter Visual FoxPro

© 1999 TMN-Systemberatung GmbH ON ERROR n ON ERROR DO ERRHAND WITH error(), sys(16), message(), lineno(1) – Globales Error Handling wie unter FoxPro2.6 existiert in identischer Weise weiterhin. n Der ON ERROR Routine können beliebige Parameter übergeben werden. n Ist keine ON ERROR Routine definiert, so erscheint die VFP Standard Fehlermeldung.

© 1999 TMN-Systemberatung GmbH Errorhandling Funktionen n ERROR() – Gibt die Nummer des Fehlers zurück, der eine ON ERROR-Routine erzeugt hat. n MESSAGE([1]) – Gibt entweder die aktuelle Fehlermeldung als Zeichenfolge zurück (keine Parameter) oder den Inhalt der Programmzeile, die den Fehler verursachte (Parameter: 1) n SYS(16) – Gibt den Dateinamen des ausgeführten Programms zurück.

© 1999 TMN-Systemberatung GmbH Errorhandling Funktionen n LINENO([1]) – Gibt die Zeilennummer relativ zur ersten Zeile des Hauptprogramms zurück, die gerade ausgeführt wird. Wird der Parameter (1) mit übergeben, so wird die Zeilennummer relativ zum aktuellen Programm / Prozedur zurückgegeben. n SYS(2018) – Gibt den Parameter der Fehlermeldung für den zuletzt aufgetretenen Fehler zurück. Bestimmte Fehler geben solche Parameter mit.

© 1999 TMN-Systemberatung GmbH Errorhandling Funktionen n AERROR() – AERROR() ermöglicht es Fehler Informationen in ein Array zu stellen. Einige der hier zur Verfügung gestellten Meldungen sind nirgendwo anders verfügbar. (OLE, ODBC und Trigger Fehler Meldungen)

© 1999 TMN-Systemberatung GmbH Errorhandling der Objekte n Error Methode der Objekte – Fast alle VFP Objekte verfügen über einen Error Event. In diesen kann sehr explizit auf den jeweiligen Fehlerfall abgestimmter Code programmiert werden. – Das Problem hierbei ist jedoch, daß man nicht für jedes Objekt eine eigene Fehler Routine schreiben möchte und kann. Abhilfe schafft hier die Vererbung, so daß diverse Fehlerfälle in den Basisklassen abgefangen werden können. Hier gilt es Vor- und Nachteile gegenüber dem global Handling abzuwägen.

© 1999 TMN-Systemberatung GmbH Errorhandling der Objekte n Tritt ein Fehler auf, so reagiert das Error Event des Objekts, in deren Code der Fehler aufgetreten ist. – Bsp..: Syntaxfehler im Click des Buttons stößt den Error Event des Buttons an. – Fehler werden grundsätzlich nicht an das jeweilige Container Objekt weitergegeben. Wer dieses Verhalten möchte, muß es programmieren. Bsp.: Error im Button soll in dessen Container Objekt (z.B.: der Form) behandelt werden : This.Parent.Error(nError, cMethod, cLine)

© 1999 TMN-Systemberatung GmbH Errorhandling der Objekte n Für spezielle Objekte, bei denen Fehler wahrscheinlich sind, sollte der Error Event programmiert werden. Bsp: dbfsteuer n Alle anderen Fragen zur Konzeption des Error Handlers müssen am speziellen Projekt analysiert werden.

© 1999 TMN-Systemberatung GmbH Fehler behandeln n CANCEL – Beendet die Anwendung. Achtung: unter VFP kann dies dazu führen, daß alle Fenster auf dem Schirm stehen bleiben. Objekte müssen aufgeräumt werden ! n RETRY – Die Fehlerzeile erneut ausführen. Macht in der Regel nur Sinn bei Locking Befehlen oder z.B. Prüfung auf Diskette... n RETURN TO MASTER | TO PROGRAM – Aus dem fehlerhaften Programm herausspringen und zum Hauptprogramm bzw. zu einem expliziten Programm zurückkehren. Auch hier sollte die Umgebung aufgeräumt werden.

© 1999 TMN-Systemberatung GmbH Fehler - Was tun ? n Anhand der Fehlermeldungen kann man die Fehler in Klassen einteilen und so entscheiden, wie man den Fehler weiter behandeln möchte. n Detaillierte Fehlermeldung an Benutzer ausgeben. n Grundsätzlich sollte man Fehler protokollieren – Textdatei oder Tabelle ? – LIST MEMORY – AUSED() - Alle verwendeten Tabellen protokollieren – Eventuell Screenshot machen.....

© 1999 TMN-Systemberatung GmbH Fehler - Was tun ? n Oftmals empfiehlt es sich auch direkt einen Fehlerbericht zu drucken, den der Anwender dann weitergeben kann. Aus der Praxis mit dem Anwender: Ja wir hatten einen Fehler ! Wo weiß ich nicht ! Was da stand ??? Aber es war ein rotes Fenster ! n Anwendung beenden ? – In der Regel beenden wir bei Fehlern unsere Anwendung, um Folgefehler zu vermeiden. – Sind Fehler einkalkuliert, z.B. Locking Fehler, so bemühen wir nicht das normale Fehlerhandling sondern fangen diese im Objekt ab. – Bei diesem Konzept sind auftretende Fehler immer unerwünscht und müssen programmatisch bereinigt werden.

© 1999 TMN-Systemberatung GmbH Fehler - Umgebung aufräumen n Umgebung aufräumen: – Alle offenen Transaktionen per Rollback beenden – Alle Tabellen in allen Arbeitsbereichen per TableRevert() in klaren Zustand bringen und nachfolgend schließen. – Hierbei müssen alle offenen Private Datasessions beachtet werden. – Es empfiehlt sich der Einsatz eines Form Handlers. – Buffers per FLUSH leeren – Erst dann funktioniert in der Regel RELEASE ALL, CLOSE ALL sowie QUIT oder CLEAR EVENTS!

© 1999 TMN-Systemberatung GmbH Zusammenfassung n ON ERROR Routinen n Error Handling Funktionen n Error Handling bei Objekten n Fehler behandeln, was ist zu tun n Umgebung aufräumen

© 1999 TMN-Systemberatung GmbH Anregungen und Fragen TMN-Systemberatung GmbH Allee Heilbronn