Interpreter: Unterschied zwischen den Versionen

Aus bafbal.de
Zur Navigation springen Zur Suche springen
Zeile 44: Zeile 44:
  
 
=Log=
 
=Log=
 +
 +
==#log==
 +
 +
Schreibt einen Text in das Log.
 +
 +
'''Parameter'''
 +
 +
* c ("caption") - Text, der in das Log geschrieben wird; Funktionen werden ersetzt; default ist ''#log, Parameter c nicht gesetzt''
 +
* y - Typ des Log-Eintrags; default I. Vorgesehen sind die folgenden Typen:
 +
** E - Error
 +
** I - Info
 +
** W - Warning
 +
 +
'''Beispiel'''
 +
 +
#log  y=W  c="Ermittelte Summe untypisch gering"
 +
 +
==#logi==
 +
 +
Schreibt einen Text als Info in das Log.
 +
 +
'''Parameter'''
 +
 +
Die Prozedur #logi hat keine benannten Parameter. Der komplette Text nach dem #logi und dem folgenden Leerzeichen wird in das Log geschrieben; Funktionen werden ersetzt.
 +
 +
'''Beispiel'''
 +
 +
#logi  Berechnung beendet
 +
  
 
=Neuer Tab=
 
=Neuer Tab=
Zeile 51: Zeile 80:
  
 
   else if FLineF = '~' then SetFilterStatus                                    // Interpretiert die Filter-Bedingungen
 
   else if FLineF = '~' then SetFilterStatus                                    // Interpretiert die Filter-Bedingungen
  else if FLineF = '#log' then WriteLog                                        // Schreibt einen Eintrag ins Log
+
 
  else if FLineF = '#logi' then WriteLogI                                      // Schreibt einen Eintrag ins Log
 
 
   else if FLineF = '#newtabcmd' then NewTabCmd                                // Führt ein Kommando in einem neuen Tab aus
 
   else if FLineF = '#newtabcmd' then NewTabCmd                                // Führt ein Kommando in einem neuen Tab aus
 
   else if FLineF = '#tab_new' then NewTabCmd     
 
   else if FLineF = '#tab_new' then NewTabCmd     

Version vom 24. Dezember 2020, 14:30 Uhr

Im Interpreter sind nur wenige Prozeduren und Funktionen direkt implementiert. Die meisten Routinen finden sich in den Modulen.

Values

Im Gegensatz zu Variablen ist der Gültigkeitsbereich von Values auf das jeweilige (Primär- oder Sub-) Kommando beschränkt. Values haben Nummern, während Variable Namen haben.

#val_set

Setzt der Wert für einen Value.

Parameter

  • ie ("if empty) - Wenn der Wert von z leer ist, dann wird ersatzweise der Wert von ie verwendet; ähnlich NVL bei SQL; Funktionen werden ersetzt
  • n - Nummer des Values
  • z - Wert der Variablen, Funktionen werden ersetzt, default ist ein leerer String

Beispiel

#val_set   n=7   z=$GUID()

#val_clearall

Löscht alle Values. Wird selten benötigt, da die Values mit Ende des (Primär- oder Sub-) Kommandos ohnehin ihre Gültigkeit verlieren.

Parameter

(keine)

Beispiel

#val_clearall

$VAL()

Gibt den Inhalt eines Values zurück

Parameter

  1. Nummer des Values

Beispiel

#cout c=$VAL(3)

Log

#log

Schreibt einen Text in das Log.

Parameter

  • c ("caption") - Text, der in das Log geschrieben wird; Funktionen werden ersetzt; default ist #log, Parameter c nicht gesetzt
  • y - Typ des Log-Eintrags; default I. Vorgesehen sind die folgenden Typen:
    • E - Error
    • I - Info
    • W - Warning

Beispiel

#log   y=W   c="Ermittelte Summe untypisch gering"

#logi

Schreibt einen Text als Info in das Log.

Parameter

Die Prozedur #logi hat keine benannten Parameter. Der komplette Text nach dem #logi und dem folgenden Leerzeichen wird in das Log geschrieben; Funktionen werden ersetzt.

Beispiel

#logi   Berechnung beendet


Neuer Tab

Verzweigungen

 else if FLineF = '~' then SetFilterStatus                                    // Interpretiert die Filter-Bedingungen
 else if FLineF = '#newtabcmd' then NewTabCmd                                 // Führt ein Kommando in einem neuen Tab aus
 else if FLineF = '#tab_new' then NewTabCmd    


==

Parameter

(keine)

Beispiel