Der gene­rier­te Source­code mit Trace-Statements

Der im vorigen Kapitel definierte Trace-Code wird bei der Gene­rie­rung in jeden einzelnen Zweig des IF-ELSE-Regelbaumes direkt vor den Statements der je­weils ersten Aktion eingebunden.

Wichtig: Bei der Ausführung des Programmcodes befinden sich hier noch alle Objekte und Variablen im Zu­stand vor der Verarbeitung durch die Ent­schei­dungs­ta­belle. Präziser können Informationen über Details der Verarbeitung nicht gewonnen werden: welche Zweige durchlaufen wurden und welche Zustände ausgewählte Objekte und Variablen direkt vor der Verarbeitung hatten.

L:\Projekte\LF‑ET-Demo\Cobol\COMPARE.cob (Auszug, nur der IF-ELSE-Regel-Baum)

  • Condition B01: String 1 kleiner String 2 ?

    IF ( STRING1 < STRING2 ) THEN
  • Rule R01 ---→

  • Trace ---→

    DISPLAY "COMPARE, 20100820.092305, 3, 1, "
    STRING1 " " STRING2
  • Trace ←---

  • Action A01: Ergebnis: String 1 ist kleiner als String 2

    MOVE RESULT-S1-LT-S2 TO RESULT
  • Rule end

    GO TO COMPARE-EXIT
  • Rule R01 ←---

    ELSE
  • Condition B02: String 1 größer String 2 ?

    IF ( STRING1 > STRING2) THEN
  • Rule R02 ---→

  • Trace ---→

    DISPLAY "COMPARE, 20100820.092305, 3, 2, "
    STRING1 " " STRING2
  • Trace ←---

  • Action A02: Ergebnis: String 1 ist größer als String 2

    MOVE RESULT-S1-GT-S2 TO RESULT
  • Rule end

    GO TO COMPARE-EXIT
  • Rule R02 ←---

    ELSE
  • Rule R03 ---→

  • Trace ---→

    DISPLAY "COMPARE, 20100820.092305, 3, 3, "
    STRING1 " " STRING2
  • Trace ←---

  • Action A03: Ergebnis: String 1 ist gleich String 2

    MOVE RESULT-S1-EQ-S2 TO RESULT
  • Rule end

    GO TO COMPARE-EXIT
  • Rule R03 ←---

    END-IF
    END-IF
    .