Benutzer-Werkzeuge

Webseiten-Werkzeuge


                       
cimerp:0010_allgemein:0150_sonstiges:0120_scripting_cimerp

Scripting cimERP

Scripte können in cimERP je Maske oder je Feld definiert werden.

Script je Maske (Fenster)

Mit dieser Funktion kann der Anwender in cimERP für jede Maske zusätzliche Programmlogik definieren. Die Logik kann an drei Maskenereignissen definiert werden:

  1. Script Start Fenster: Dieses Skript wird abgearbeitet, wenn die Maske gestartet wird.
  2. Script Ende Fenster: Dieses Skript wird abgearbeitet, wenn die Maske beendet wird.
  3. Script Speichern/Drucken Fenster: Dieses Skript wird abgearbeitet, wenn die Maske gespeichert wird.
  4. Script Start Fenster fertig: Dieses Skript wird abgearbeitet, wenn der Aufbau und die Abarbeitung der zu startenden Maske fertig ist.

Script je Eingabefeld

Mit dieser Logik kann der Anwender für Eingabefelder zusätzliche Programmlogik definieren. Feldskripte sind immer global für ein Feld. Die Logik kann an drei Feldereignissen definiert werden:

  1. Script Feldänderung: Dieses Skript wird abgearbeitet, wenn der Feldinhalt vom Anwender geändert wird. Dazu ist es erforderlich, das entsprechende Feld zu verlassen.
  2. Script Feldinitialisierung: Dieses Skript wird abgearbeitet, wenn das Feld den aktiven Fokus (das Feld wird „betreten“) bekommt.
  3. Script Feldverlassen: Dieses Skript wird abgearbeitet, wenn das Feld verlassen wird. Der Unterschied zu Ereignis 1 (Feldänderung) liegt darin, dass dieses Ereignis auch durchlaufen wird, wenn sich der Feldwert nicht geändert hat.

Beispiel Scripte

declare
   fobj = FieldObject with null, 
   personal_nr = integer not null with default,
enddeclare
begin
    // Auslesen Feldwert
    fobj = fp.Frame.FieldByName(name = 'personal_nr'); 
    if fobj is not null then 
        // Feld gefunden - Wert holen 
        fobj.GetFieldValue(value = byref(personal_nr)); 
        if personal_nr > 0 then
            // Positionieren Cursor
            fobj = null;
            fobj = fp.Frame.FieldByName(name = 'artikel_nr'); 
            if fobj is not null then
                fp.SetInputFocusField(inpf = fobj);
            endif;
        endif;
    endif; 

    return 0; 
end
               
       
cimerp/0010_allgemein/0150_sonstiges/0120_scripting_cimerp.txt · Zuletzt geändert: von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki