SubstringWithLength

TwinCAT TIA
Werkzeuge String Funktionen

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

Gibt einen Teil des angegebenen Textes zurück. Der Teil beginnt ab den Parameter Startindex und endet bei Startindex+Length.

Parameter:

    StartIndex
    Der nullbasierte Index für die Anfangsposition in ContainString.
    Length
    Die Länge der zu lesenden Zeichen.

Rückgabewert:

    SubstringWithLength
    Eine Struktur-Variable vom Typ OpcMethodReturnValueString. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Der Teiltext vom Parameter ContainString.

Beispiele:

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

Beckhoff Parameter:

    bStringSubstringWithLength
    Eine boolesche Variable, über welche die Ausführung des SubstringWithLength-Befehls getriggert werden kann.
    OutputDataStringSubstringWithLength
    Eine Instanz der "ST_StringOutputData" Struktur in welche der Rückgabewert der SubstringWithLength-Methode geschrieben wird.
    hrStringSubstringWithLength
    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.
    ContainString
    Der Text aus dem ein Teiltext extrahiert wird.
    ContainStringLength
    Länge der Zeichenkette, aus der die Teilzeichenkette extrahiert werden soll.
    StartIndex
    Der nullbasierte Index für die Anfangsposition in ContainString.
    Length
    Die Länge der zu lesenden Zeichen.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
    bStringSubstringWithLength   : BOOL;
    OutputDataStringSubstringWithLength : ST_StringOutputData;
    hrStringSubstringWithLength   : HRESULT;

    fbStringOperations : FB_StringOperations;
END_VAR

hrStringSubstringWithLength := fbStringOperations.StringSubstringWithLength(
      bExecute     := bStringSubstringWithLength, 
      ConnectionHandle  := depragSmartConnection.ConnectionHandle,
      ContainString   := 'Ich bin ein String',
      ContainStringLength  := SIZEOF('Ich bin ein String'),
      StartIndex    := 8,
      Length     := 3, 
      OutputData    => OutputDataStringSubstringWithLength);
IF hrStringSubstringWithLength <> S_FALSE THEN 
      bStringSubstringWithLength := 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.