CSVFIELD_TO_ARG

CSVFIELD_TO_ARG 1:

Die Funktion konvertiert den Wert von einem Datenfeld im CSV-Format das als Bytepuffer vorliegt in eine SPS-Variable. Doppelte Einführungszeichen im Datenfeld werden durch einfache Einführungszeichen ersetzt. Beim gesetzten bQM-Parameter (QM = quotation marks) werden auch die äußeren (das Datenfeld einschließende) Einführungszeichen aus den Eingangsdaten entfernt. Beim Erfolg liefert die Funktion die Länge der konvertierten Daten zurück. Beim Fehler und bei der Länge der Eingangsdaten Null liefert die Funktion den Wert Null. Die Applikation muss dafür sorgen das die SPS-Zielvariable groß genug ist um den Wert aufnehmen zu können.

Die Funktion wird normalerweise zusammen mit dem Funktionsbaustein FB_CSVMemBufferReader verwendet um Datensätze im SPS-Speicher die im CSV-Format vorliegen zu lesen (parsen). Vorher werden die CSV-Datensätze meistens aus einer Datei in den SPS-Speicher eingelesen. Im Gegensatz zu der CSVFIELD_TO_STRING-Funktion lassen sich mit dieser Funktion auch CSV-Datenfelder mit Binärdaten in SPS-Variablen konvertieren.

FUNCTION CSVFIELD_TO_ARG : UDINT

VAR_INPUT

VAR_INPUT
    pInput   : POINTER TO BYTE;
    cbInput  : UDINT;
    bQM      : BOOL;
    out      : T_Arg;
END_VAR

pInput: Anfangsadresse (Pointer) auf einen Bytepuffer mit dem zu konvertierenden Datenfeld im CSV-Format. Die Adresse kann mit dem ADR-Operator ermittelt werden.

cbInput: Die Länge des zu konvertierenden Datenfeldes in Byte. Die Länge kann mit dem SIZEOF-Operator ermittelt werden.

bQM: Bei TRUE an diesem Eingang werden aus den Felddaten auch die einschließenden Einführungszeichen entfernt.

out: SPS-Zielvariable in die der Wert des Datenfeldes hineingeschrieben werden soll (Typ: T_Arg).

Beispiel:

Siehe Beispiel in der Dokumentation des ARG_TO_CSVFIELD-Funktionsbausteins.

Weitere Informationen finden Sie hier: Beispiel: Schreiben/lesen einer CSV-Datei.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, ARM)

Tc2_Utilities (System)