Länge eines String mit der LEN-Funktion auslesen

baggerandy

Level-1
Beiträge
12
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo, habe folgendes Problem:

von einem TP wird in einen Datenbaustein ein STRING geschrieben. Im DB ist dieser als String mit 20 Zeichen max. Länge def. Dies funktioniert auch so weit. Im DB steht dann im 1.Byte die max Länge, im 2. Byte eine 0 und in den folgenden Bytes die Zeichen des String. Um den String weiter zu verarbeiten wäre es notwendig, die unbekannte Länge zu erfassen. Das wollte ich mit der Funktion "LEN" machen, bekomme aber nur eine 0 als Anzahl der Zeichen zurück. Was mache ich da falsch.

Gruß
Andy
 
StringChar vs. String

Hi, die Funktion LEN aus der Bibiothek schaut auch nur auf das 2. Byte. Wenn da 0 drin steht, gibt die Funktion das auch so zurück. Ich bin der Meinung, das das Problem bei der Übergabe vom Panel liegt. Welcher Datentyp ist im Panel eingestellt? Es sollte String sein. Ich vermute es ist StringChar! Bei StringChar werden nur die Nutzdaten übertragen, keine Info auf Länge usw.
Gruß, fohe Ostern
Stefan
 
Zuviel Werbung?
-> Hier kostenlos registrieren
hi stefan,
am panel ist so weit ich es gesehen hab string eingestellt. Muß ich nächste Woche mal noch kontrollieren. Ist kein Siemens Panel, sondern von ProFace.
Danke für den Tip. Dir auch noch schöne Ostern.

Gruß
Andy
 
Ich kenne zwar das Proface-Panel nicht, weiß aber dass es bei INTOUCH, welches ja auch ein siemensfremdes System ist, das spezielle Format "S7_String" gibt. Der "normale" Datentyp "string" unterstützt die Längenangaben-Bytes nicht.
Vielleicht verhält es sich ja mit Deinem Panel ähnlich.
.
 
Zurück
Oben