fin(sql).exe Parameter: COVERAGELOG, COVERAGEFILENAME

Veröffentlicht: 22. September 2010 in Allgemein, Code Coverage, Debugging, Dynamics NAV Classic Client, Tipp, Trick

Die Parameter COVERAGELOG und COVERAGEFILENAME sind sehr nützliche Parameter die einem bei der Fehlersuche helfen können. Mit Hilfe dieser, können für gewisse Abläufe (oder grundsätzlich) der/die Code Coverage gestartet werden. Zum Beispiel, wenn beim Starten von NAV ein Fehler auftritt sodass vorher Code Coverage gar nicht gestartet werden kann, kann eine Verknüpfung der fin(sql).exe erstellt werden, die den (zusätzlichen) Parameter COVERAGELOG bekommt.

Mit Hilfe dieses Parameters wird der Code Coverage vor NAV gestartet sodass jede Aktion mit geloggt wird.

Falls allerdings nur gewisse Abschnitte mit geloggt werden sollen, kann der Parameter ignoriert (bzw. brauch dieser nicht gesetzt werden) werden und es kann die folgende Code Zeile an die entsprechende Stelle geschrieben werden:

COVERARGELOG([boolean value]);

Damit wird der Code Coverage gestartet. Respektive mit COVERAGELOG(FALSE) wieder beendet. Wenn ein Anwender also nur gelegentlich ein Fehler bei der (Beispielsweise) Angebotserstellung hat und das Problem nicht rekonstruierbar ist, kann diese Funktion helfen. Es kann (beispielsweise) beim OnOnit der Form COVERAGELOG gesetzt werden, sodass jedes Mal, wenn ein Angebote erstellt werden, das Code Coverage mit läuft. Sobald der Fehler wieder auftritt, könnte man sich diesen anschauen um dem Fehler evtl. auf die Schliche zu kommen. Hier könnte einem allerdings auch schon ein kleines Problem auffallen: Man muss sich direkt mit dem Kunden Verbinden und die Code Coverage Form mit ihm zusammen analysieren. Aber auch dafür gibt es eine Lösung: COVERAGEFILENAME!

Wenn der Client mit diesem Parameter gestartet wird, wird alles was im Code Coverage gesichert wird, als binary in diese Textdatei gespeichert. Außerdem wird diese Datei beim Start auch geladen! Das heißt, dass wenn dies ein Netzlaufwerkpfad wäre, auf man auch Zugriff hat, dieses Log bequem und in Ruhe von dem eigenen Arbeitsplatz analysiert werden kann.

Selbstverständlich können diese Parameter (+Funktion) miteinander kombiniert werden.

Mit freundlichen Grüßen,

Matthias König

Advertisements
Kommentare
  1. Wayne sagt:

    Hallo Matthias,

    das ist ein sehr hilfreicher Tipp, allerdings stelle ich mir die Frage, wie ich denn dieses Log auslesen kann?
    Mit Notepadd++ oer ähnlichen Editoren bekomme ich nur Kauderwelsch und NAV 4.0 hat in der Code Coverage Form keine Import Funktion…

    Wie nutzt du denn dieses Log?

    Viele Grüße
    Wayne

  2. König sagt:

    Hi Wayne,

    Wenn du dir eine solche Verknüpfung mit dem Pfad zu dieser Log Datei anlegst, läd er diese direkt in deine Code Coverage Form. Er importiert diese dann sozusagen automatisch!

    Gruß,
    Matthias

    • Wayne sagt:

      Hallo Matthias,

      vielen Dank! Klappt ja wunderbar 🙂

      Viele Grüße
      Wayne

      • Chrom sagt:

        Hallo zusammen,

        ja die Funktion ist an sich ganz nett. Nur ist die Rückgabe des durchlaufenen
        Codes nicht gerade optimal dargestellt…im Code Coverage insgesamt meine ich damit.

        Gibt es eine Möglichkeit den durchlaufenen Code,
        und nur den durchlaufenen Code in korrekter Reihenfolge mitzuschneiden?

        Das wäre doch die einzig annehmbare Möglichkeit auch mal längere Verarbeitungen zu
        analysieren und Unterschiede zwischen zwei gleichen Verarbeitungsschritten zu erkennen.

        Danke und viele Grüße,

        Christian

      • Hi Chrom,

        entschuldige das ich nun erst Antworte aber irgendwie kam ich nicht dazu 🙂
        Aber nun zu deiner Frage:

        Für sowas benutze ich den Erweiterten Client Monitor (Extendend Client Monitor). Dieser ist (soweit ich weiss) im „Database Resource Kit“.
        Mit diesem können Client Monitor in Kombination mit Code Coverage sehr gut analysiert werden. Außerdem kann hiermit z.B. die Performance einer Entwicklung überprüft werden. Dieses Tool kann allerdings noch sehr viel mehr. Schaus dir einfach mal an 🙂

        (benötigt einen Partner Log-In)
        https://mbs.microsoft.com/partnersource/downloads/supplements/databaseresourcekit.htm?printpage=false&sid=ftoj2vytegj0z5wzoa2gbf0y&stext=Database Resource Kit

        ich glaube ich sollte hierdrüber auch einen Artikel verfassen 🙂

        Mit freundlichen Grüßen,
        Matthias König

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s