FB_XmlSrvWrite
The function block FB_XmlSrvWrite can be used for writing the value of a PLC variable into an XML file. The input variable sXPath must point to a valid node in the XML file specified via sFilePath. The symbol to be written is identified unambiguously by the symbol address and size.
VAR_INPUT
VAR_INPUT
sNetId : T_AmsNetId;
ePath : E_OpenPath := PATH_GENERIC;
nMode : WORD := XMLSRV_SKIPMISSING;
pSymAddr : DWORD;
cbSymSize : UDINT;
sFilePath : T_MaxString;
sXPath : T_MaxString;
bExecute : BOOL;
tTimeout : TIME := T#60s;
END_VAR
sNetId: String containing the network address of the TwinCAT XML Data Server. For the local computer (default) an empty string may be specified.
ePath: This input can be used to select a TwinCAT system path on the target device for opening the file.
nMode: This input can be used to specify which data are written to the XML file. XMLSRV_SKIPMISSING and XMLSRV_ADDMISSING mode are available for the XmlSrvWrite command. In XMLSRV_SKIPMISSING mode, only those sub elements of a PLC symbol that already exist in the XML file are written to the XML file. In XMLSRV_ADDMISSING mode, missing sub elements are added to the XML file.
pSymAddr: Address of the PLC variable to be written to the XML file.
cbSymSize: Size of the PLC variable to be written to the XML file.
sFilePath: Contains the path and file name for the file to be opened. Note: The path can only point to the local computer’s file system! This means that network paths cannot be used here!
sXPath: Contains the address of the tag in the XML document from which the data are to be written. The address must be a valid XPath instruction. The name of the tag must be different from the name of the symbol.
bExecute: The block is activated by a rising edge at this input.
tTimeout: Maximum time allowed for the execution of the function block.
VAR_OUTPUT
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
nErrId : UDINT;
END_VAR
bBusy: This output is set when the function block is activated. It remains set until feedback is received.
bError: This output is set up after the bBusy output has been reset if there has been an error in transmission of the command.
nErrId : If the bError output is set, this parameter returns the TwinCAT XML Data Server error number.
Requirements
Development environment | Target system type | PLC libraries to be linked |
---|---|---|
TwinCAT v2.10.0 from Build 1235 | PC or CX (x86, ARM) | TcXmlDataSrv.Lib ( Standard.Lib; TcBase.Lib; TcSystem.Lib are included automatically ) |