Insert

TwinCAT TIA
Werkzeuge String Funktionen

ns=2;s=DEPRAG Smart/Utilities/StringOperations/Insert

Fügt in einen Text an einer angegebenen Indexposition in einen weiteren Text ein und gibt das Ergebnis zurück.

Parameter:

    Value
    Der Text der in StringToInsertIn eingefügt werden soll.
    StartIndex
    Die nullbasierte Indexposition in der Value in StringToInsertIn eingefügt werden soll.

Rückgabewert:

    Insert
    Eine Struktur-Variable vom Typ OpcMethodReturnValueString. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Eine Zeichenkette, in der der Value in StringToInsertIn eingefügt ist.

Beispiele:

Neben den bereits erläuterten Parametern sind für die Implementierung in TwinCAT 3 nachfolgende Variablen anzulegen / zu übergeben:

Beckhoff Parameter:

    bStringInsert
    Eine boolesche Variable, über welche die Ausführung des Insert-Befehls getriggert werden kann.
    OutputDataStringInsert
    Eine Instanz der "ST_StringOutputData" Struktur in welche der Rückgabewert der Insert-Methode geschrieben wird.
    hrStringInsert
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ "HRESULT".
    fbStringOperations
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_StringOperations" Funktionsbausteins.
    StringToInsertIn
    Der Text in der der Text aus Value eingefügt werden soll.
    StringToInsertInLength
    Die Länge der Zeichenkette in der eine weitere Zeichenkette eingefügt werden soll.
    StringToInsert
    Die Zeichenkette vom Typ "STRING(80)", die in eine weitere Zeichenkette eingefügt wird.
    StringToInsertLength
    Die Länge der Zeichenkette, die in eine weitere Zeichenkette eingefügt wird.
    StartIndex
    Die nullbasierte Indexposition in der Value in StringToInsertIn eingefügt werden soll.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
     bStringInsert   : BOOL;
     OutputDataStringInsert : ST_StringOutputData;
     hrStringInsert   : HRESULT;

     fbStringOperations : FB_StringOperations;
END_VAR

hrStringInsert := fbStringOperations.StringInsert(
      bExecute     := bStringInsert, 
      ConnectionHandle  := depragSmartConnection.ConnectionHandle,
      StringToInsertIn  := 'IamATestString',
      StringToInsertInLength := SIZEOF('IamATestString'),
      StringToInsert    := 'Beautiful',
      StringToInsertLength   := SIZEOF('Beautiful'),
      StartIndex    := 4, 
      OutputData    => OutputDataStringInsert);
IF hrStringInsert <> S_FALSE THEN 
      bStringInsert := FALSE;
END_IF
                                                    

Für Beispiele und Erklärungen bezüglich der Aufrufe von Knoten via Siemens TIA Portal sei an dieser Stelle auf den Unterpunkt "Siemens TIA Portal" in Abschnitt "Erste Schritte" verwiesen.