Diese Aktion wird unmittelbar nach einem Klick auf eine Schaltfläche oder ein Menü ausgeführt.
Fenstererfassung
Sie ermöglicht die Ausführung einer Verarbeitung nach einem Klick auf eine Schaltfläche oder ein Menü. Für die meisten Schaltflächen hat die Vorlage keine einfache Verarbeitung. Die Verarbeitung muss in dieser Aktion geschrieben werden. Folgende Schaltflächen werden von der Vorlage berücksichtigt:
"FIN", "IMPRIME", "LISTE", "PIECES JOINTES", "COMMENTAIRE", "PROPRIETES".
Diese Aktion erfolgt vor den Aktionen der Schaltfläche (AVANT_BOUTON, BOUTON und AVANT_XXX, XXX), wobei XXX der Identifikator der vordefinierten Schaltfläche ist.
Diese Aktion erfolgt vor den Aktionen des Menüs (AVANT_MEN, MEN)
Die Variable REPONSE enthält den Status der Schaltfläche und gibt uns daher die vom Benutzer aktivierte Schaltfläche an.
Für die vordefinierten Schaltflächen finden Sie hier unten die Variablen, die die Schaltfäche identifizieren:
REPONSE | Status | Schaltfläche |
GSTAESC | 7 | FIN |
GSTANEW | 91 | Neu |
GSTAENR | 92 | Speichern |
GSTACRE | 93 | Anlegen |
GSTAANU | 94 | Löschen |
GSTASEL | 95 | Auswahl |
GSTAFIR | 96 | Anfang |
GSTALAS | 97 | Ende |
GSTASUI | 98 | Nächste |
GSTAPRE | 99 | Zurück |
GSTAOK | 1029 | OK |
GSTAFIN | 1792 | Abbruch |
GSTACHG | 1793 | Codeänderung |
GSTAJOI | 1794 | Anlagen |
GSTACOM | 1795 | Kommentare |
GSTAEDI | 1796 | Druck |
GSTALIS | 1797 | Liste |
GSTADAT | 1798 | Eigenschaften |
GSTARAF | 1799 | Aktualisierung Auswahlleiste |
Für die anderen Schaltflächen enthält die Variable REPONSE einen Status, der wie folgt beginnt:
1101für die freigebenden Schaltflächen
1801für die nicht freigebenden Schaltfächen
2001für die Menüs
Hat man 2 freigebende Schaltflächen gefolgt von einer nicht freigebenden Schaltfläche, hat man die folgenden Status in REPONSE:
1101
1102
1803
Dieser Status wird nicht direkt verwendet, da er von der Position der Schaltfläche im Fensterdictionary abhängt. Zuerst sucht man die Position der Schaltfläche im Fensterdictionary, dann erhält man daraus abhängig von dieser Position den Code der Schaltfläche. Es stehen zwei Tabellen zur Verfügung: LBOUT(n) enthält den Status der Schaltflächen, CBOUT(n) enthält den Code der Schaltflächen (n ist die Position der Schaltfläche im Fensterdictionary).
Beispiel:
$AP_CHOIX
When "M"
Local Integer I
I=find(REPONSE,LBOUT)
If I<1 : Return : Endif
Case CBOUT(I-1)
When "R"
When "E"
Endcase
Return
Es werden häufiger die Aktionen AVANT_BOUTON und AVANT_MEN verewendet, für die der Code Schaltfläche / Menü von der Variable BOUT verwendet werden kann.