OBS/Makros und Scripting/Anwendungsbereiche/Vorgangsbaum: Unterschied zwischen den Versionen

Aus OBS Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 22: Zeile 22:
</syntaxhighlight>
</syntaxhighlight>
=Beispiel=
=Beispiel=
[[Datei:Vgbaum_custom.jpg|thumb|Info-Baum mit Zusatzinformationen]]
Folgendes Macro sorgt dafür, dass im Titel die Kürzel für den Lieferstatus eines Auftrags mit angezeigt werden. Bei Auftrag 2010036 wird "Hallo Welt" als Info angezeigt.
Folgendes Macro sorgt dafür, dass im Titel die Kürzel für den Lieferstatus eines Auftrags mit angezeigt werden. Bei Auftrag 2010036 wird "Hallo Welt" als Info angezeigt.
<syntaxhighlight lang="Delphi">
<syntaxhighlight lang="Delphi">

Version vom 27. November 2020, 16:49 Uhr


Per Macro können Sie die angezeigten Informationen des Info-Baums für Vorgänge beeinflussen.

Macro

Anlage

Öffnen Sie die Script-Bibliothek. Diese finden Sie über das Menü System unter J Sonderprogramme Punkt SB - Script-Biliothek. Legen Sie hier ein Script mit dem Namen VorgangsBaum an.

Funktion: AddTitle

Mit dieser Funktion können Sie den angezeigten Titel eines Knotens im Baum beeinflussen.

// Parameter:
// APara.V01 = DMS-Typ des Vorgangs (z. B. "AU" für Auftrag)
// APara.V02 = Nummer des Vorgangs
// APara.V03 = Standardzusatzinformationen von OBS für Titel (z. B. "(DMS)")
function AddTitle(oWDB: TxDB; APara: TOBSParameter): boolean;

Funktion: AddTreeInfo

Zeigt für den Vorgang zusätzliche Informationen unter dem Baum an.

// Parameter:
// APara.V01 = DMS-Typ des Wurzel-Vorgangs (z. B. "AU" für Auftrag)
// APara.V02 = Nummer des Wurzel-Vorgangs
function AddTreeInfo(oWDB: TxDB; APara: TOBSParameter): boolean;

Beispiel

Info-Baum mit Zusatzinformationen

Folgendes Macro sorgt dafür, dass im Titel die Kürzel für den Lieferstatus eines Auftrags mit angezeigt werden. Bei Auftrag 2010036 wird "Hallo Welt" als Info angezeigt.

// Titel eines Knotenpunkts bearbeiten
function AddTitle(oWDB: TxDB; APara: TOBSParameter): boolean;
var cTitle : string;
    cStatus : string;
begin
    cTitle := '';
    if (APara.V1 = 'AU') then begin
        cStatus := DB_ReadSqlValue(oWDB,'AUFTRAG','a_statusl','a_nr='+DB_SqlVal(APara.V2));
        if (cStatus = '1') then begin
            cStatus := 'TL';
        end else if (cStatus = '2') then begin
            cStatus := 'KL';
        end else begin
            cStatus := '';
        end;
        if (not Empty(cStatus)) then begin
            cTitle := ' ('+cStatus+')';
        end;    
    end;
    //Wichtig: Daten aus V10 werden angezeigt! 
    //V3 enthält die Standard-Informationen, werden diese nicht mit zurückgegeben, so werden diese verworfen.
    APara.V10 := APara.V3 + cTitle;
    //Wichtig, damit Rückgabe aus V10 auch angezeigt wird!
    Result := not Empty(cTitle);
end;

//------------------------------------------------------------------------------
// Textfeld für zusätzliche Informationen füllen
function AddTreeInfo(oWDB: TxDB; APara: TOBSParameter): boolean;
var cInfo : string;
begin
    cInfo := '';
    if (APara.V1 = 'AU') and (APara.V2 = '2010036') then begin
        cInfo := 'Hallo Welt';
    end;
    //Wichtig: Daten aus V10 werden angezeigt!
    APara.V10 := cInfo;
    //Wichtig, damit Rückgabe aus V10 auch angezeigt wird!
    Result := not Empty(cInfo);
end;