Pragmas zur Makrosteuerung

Die Steuerungsfunktion, die ein OBAS-Programm übernimmt, wird innerhalb des Programms mit sogenannten Pragmas definiert. Ein Pragma ist eine Anweisung an das System (also INVEP) das gesamte Programm in einer bestimmten weise zuzuordnen oder zu verarbeiten. Pragmas selbst gehören also nicht zum eigentlichen Programmcode, sondern stehen einfach nur im Programmcode.

 

Pragma Parameter Bedeutung
FkeyMakro Kuerzel Definiert einen Shortcut, eine Taste oder Funktion
widget_map DLGID Es wird ein Makro definiert, das immer dann aufgerufenwird, wenn der angegebene Dialog geöffnet wird.
MakroModul Zahl Die Dialognummer, in der das Makro aktiv sein soll oder 0
KeyLabel Beschriftung Buttonbeschriftung, wenn es sich um ein FN-Tasten-Makrohandelt
MakroResult DISP oder
NODISP
Das Makro liefert ein Ergebnis an INVEP zurück (DISP) oder nicht
RAW Das Makro durchläuft nicht die übliche Zeichenkonvertierung,sondern wird direkt verarbeitet
Filename Name.obas Bei automatischen Datenübertragungen bekommt die Datei automatisch den angegebenen Namen.
LineNo Zeilennummer Die Zählung der Programmzeilen wird auf die angegebeneNummer gesetzt.
Comment Kommentar Wenn man sich OBAS-Makros mit F7 in einem Textfeld anzeigen läßt, wird als Kommentar nicht der Code, sondern der hier angegebene Kommentar gezeigt

Mit dem Pragma FkeyMakro wird die Funktion eines Makros festgelegt. Wenn hier ein einfacher Text eingegeben wird, so dient dieser Text als Kürzel, das in allen Texteingabefenstern als Auslöser für die Makroexpansion bzw. die Abarbeitung des OBAS-Scripts verwendet wird. Alternativ kann als Kürzeltext auch fkey1 bis fkey12 sowie entsprechend sfkey oder cfkey verwendet werden. In diesem Falle wird eine Funktionstaste (ohne, mit Shift oder Strg) mit dem Makro belegt.
Mit dem Pragma widget_map wird ein Mapping-Makro angelegt. Mapping-Makros werden immer dann aufgerufen, wenn ein Dialog auf dem Bildschirm erscheint. Innerhab des Mapping-Makros kann der Dialog weitreichend modifiziert oder mit Daten vorbelegt werden. Als Parameter muss bei den Mapping-Makros immer DLGxxx angegeben werden, wobei xxx für die entsprechende Dialog-Nummer steht.
Das Pragma MakroResult gibt an, ob das OBAS-Script ein ergebnis zurückliefert, das in das aktuell aktive Eingabefeld zurückgeschrieben wird. In vielen Fällen dient ein OBAS-Makro dazu, einen umfangreichere Aktion vorzunehmen, um z.B. das Ergebnis einer Berechnung als Text in die aktuelle Cursorposition zurückzuliefern. In einigen Fällen dagegen soll kein direktes Ergebnis an die Cursorposition geschrieben werden (z.B. wenn einfach andere Komponenten der Bildschirmmaske modifiziert werden).


Schatten