CloseXmlDocument

TwinCAT
Lokal Datei- und Ordner-Zugriff XML-Reader

ns=2;s=DEPRAG Smart/Local/FileAndDirectoryAccess/Xml/CloseXmlDocument

Der Befehl schließt das XML-Dokument und gibt den Index in der Liste ActiveXMLDocuments frei.

Parameter:

    Id
    Eindeutiger Index, um das XML-Dokument in der Liste ActiveXmlDocuments abzurufen.

Rückgabewert:

    CloseXmlDocument
    Eine Variable vom Typ OpcMethodReturnValueInt32. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Eindeutiger Index, um das XML-Dokument in der Liste ActiveXmlDocuments abzurufen.

Beispiele:

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

Beckhoff Parameter:

    bXmlCloseXmlDocument
    Eine boolesche Variable, über welche die Ausführung des CloseXmlDocument-Befehls getriggert werden kann.
    OutputDataXmlCloseXmlDocument
    Eine Instanz der "ST_VoidOutputData" Struktur, in welche der Rückgabewert der CloseXmlDocument-Methode geschrieben wird.
    hrXmlCloseXmlDocument
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ "HRESULT".
    fbXml
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_Xml" Funktionsbausteins.
    nId
    Eine DINT-Variable, die das XML-Dokument in der Liste der ActiveXmlDocuments eindeutig identifiziert.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
       bXmlCloseXmlDocument   : BOOL;
       OutputDataXmlCloseXmlDocument : ST_XmlDocumentOutputData;
       hrXmlCloseXmlDocument   : HRESULT;

       fbXml        : FB_Xml;
END_VAR

hrXmlCloseXmlDocument := fbXml.CloseXmlDocument(
        bExecute    := bXmlCloseXmlDocument,   
        ConnectionHandle := depragSmartConnection.ConnectionHandle, 
        nId     := 0,
        OutputData   => OutputDataXmlCloseXmlDocument);
IF hrXmlCloseXmlDocument <> S_FALSE THEN 
       bXmlCloseXmlDocument := 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.