Debugging Scriptcode

Aus SAP-Wiki
Wechseln zu: Navigation, Suche

Der Adobe LiveCycle Designer bietet im Gegensatz zu ABAP nur wenige Möglichkeiten den Script-Code zu debuggen und eine Syntaxprüfung vorzunehmen. Hier ist noch viel Verbesserungspotential.

Debugging mit MessageBoxen

Man kann ein improvisiertes Debugging programmieren, indem man Variablen in MessageBoxen ausgibt. Dies kann jedoch gerade in Schleifen oder mit vielen MessageBoxen nervig sein, da hier alle MessageBoxen bestätigt werden müssen.

xfa.host.messageBox("Feldinhalt Objekt XY: " + this.rawValue);  //Java-Script
$host.messageBox("Variableninhalt:" + $.rawValue)   //Form-Calc

Für die Ausgabe von MessageBoxen muss der Parameter „Dynamic“ beim Formularaufruf gesetzt sein.

Debugging mit Textfeldern

Man kann sich notfalls auch behelfen, indem man Textfelder auf dem Formular platziert, die man mit Variableninhalten füllt. Diese Variablenfelder können später auch sehr schnell wieder inaktiv gesetzt werden, damit sie nicht mehr auf dem Formular erscheinen, aber trotzdem auch schnell wieder genutzt werden können, indem sie erneut aktiv gesetzt werden.

Ein Wert in 1 Textfeld

Hier wird der Wert aus der Variablen "S_OVM.GV_ANZ_VERGLEICHSMIETE" im Kontext in das Textfeld "Textfeld1" geschrieben.

Textfeld1.rawValue = xfa.record.S_OVM.GV_ANZ_VERGLEICHSMIETE.value;  //Java-Script


Das Textfeld wird nun auf dem Formular ausgegeben mit dem Variableninhalt "4". Hier sind es die vier Tabellenzeilen, die darüber zu sehen sind.

Scriptdebugging6.jpg

Mehrere Werte in 1 Textfeld (Concat)

In ein Textfeld lassen sich auch mehrere Felder schreiben unter FormCalc mit dem Befehl Concat.

$ = Concat(BUKRS.$, "/", EBELN.$, "/", EBELP.$  ) //FormCalc

Debugging-Konsole

console.show();
console.println("Inhalt Objekt XY:" + this.rawValue);

Die Debugging-Konsole bietet sich v. a. an, wenn viele Einträge erfolgen, z. B. in Schleifen.

Dafür muss die Debugging-Konsole im Acrobat Reader aktiviert sein.

Menü: Bearbeiten - Voreinstellungen.

Scriptdebugging1.jpg

Kategorie: JavaScript.

Der Haken bei "Konsole bei Fehler und Meldungen anzeigen" (bzw. "Show console on errors and messages" im Englischen) muss gesetzt sein.

Scriptdebugging2.jpg

Syntaxprüfung und Palette Bericht

Web-Links

Literatur