Lade...
 

Debugging

Debugging von AppsWH Modulen

  1. VSCode - Debugger
  2. Profiling
  3. Tracing

1. VSCode-Debugger

Der VSCode-Debugger empfiehlt sich vor allem bei folgenden Situationen:

  • VSCode steht zur Verfügung
  • AppsWH-Code soll übersichtlich debugged werden

 

2. Profiling

Das Profiling empfiehlt sich vor allem bei folgenden Situationen:

  • dem Debugging von harten Abstürzen, da hier im Hintergrund der entsprechende Prozess unauffällig bis zum Absturz mitlaufen kann. Durch den letzten Eintrag der erstellten Datei kann man dann ermitteln, in welchem Modul und Makro der Absturz verursacht wurde.
  • zum Analysieren, wo bei auffällig langen Prozessen die Zeit bleibt. Dies kann man durch das Profiling besonders gut tun, da in der Profilingdatei auch die Zeit angegeben ist, die Benötigt wird, um ein Makro zu durchlaufen. 

 

3. Tracing

Über das Menü der Toolbar Info -> Revision gelangt man zum Tracingtool. Hier kann man über den Startbutton die Revisionsaufzeichnung beginnen. Bevor aber im entsprechenden Fenster die vorgenommenen Abläufe angezeigt werden können, muss zuvor der durchlaufenen AppsWH-Code angepasst worden sein. Somit werden nur mehrsprachige Strings angezeigt, die durch den InstantView®-Befehl Trace wieder vom Stack geholt wurden.   ( Bsp.: T("Überprüfe Saldo", "Check balance") Trace )

Im Fenster werden dann noch zur Laufzeit die entsprechenden Kommentare angezeigt, sowie die Zeit, welche zwischen zwei Kommentaren vergangen ist. Nachdem die Aufzeichnung beendet ist, kann man die einzelnen Einträge in der Liste auswählen, um sich die angefassten Objekte anzeigen zu lassen.  

Das Tracing empfiehlt sich vor allem bei folgenden Situationen:

  • ! Es lohnt sich nur, Code zu debuggen, der mit Trace-Anweisungen bestückt ist.
  • zum Analysieren, wo bei auffällig langen Prozessen die Zeit bleibt. Der Unterschied zum Profiling liegt bei dieser Methode darin, dass man sich selbst Messpunkte setzen kann (zum Beispiel zum Begin und Ende eines Makros), um die Ausgabe/Anzeige übersichtlicher zu halten.