Stringlänge vergleichen

jensel

Level-1
Beiträge
61
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo Leute,

ich hab mal eine gute Frage und hoffe das mir einer von euch helfen kann.

Ich habe einen String für SAP mit einer Länge von 32 Zeichen wobei nur die ersten 10 Stellen erstmal beschrieben werden da länger noch nicht nötig ist.

die ersten 4 Zeichen werden mit einer Vorbestzung beschrieben K123
dann erzeuge ich aus einen INT länge 5 zb 12345 ein String dieser sieht dann so aus +12345 und besetze das vorzeichen mit einer 0.
Und füge dann einen String zusammen der dann so aussieht K123012345.

So jetzt kommt meine Frage wie kann ich ünerprüfen ob der Zusammengefügte String auch 10 Zeichen enthält.

Gibt es den im STEP 7 einen FC bzw FB der String auf Länge prüft???

Danke schon mal im Vorraus
 
Die Frage ist inkonsistent....
Du machst was und dann wird das so sein.....
Ist so wie wenn Du fragst:

L DBD 0
L DBD 4
+R
T DBD 8

Wie kann ich feststellen, dass im DBD8 eine RealZahl steht.

Oder verstehe ich es nicht...:confused:
Du baust bewusst was zusammen, das 10 Zeichen haben MUSS... wozu dann prüfen?

Und wenn schon: was ist denn im 32Zeichen-Array im 11 Feld, damits kein Zeichen ist? 16#W#0?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
nein du verstehtst das vielleicht etwas falsch.

ich bekomme aus einen IBM System (AS400) eine nummer geschickt die manuell eingegeben wird also sprich den INT mit 5 Stellen z.B. 12345.
und bau dann denn String wie gesagt zusammen auf K123012345

und wenn in diesen IBM System nur ein 4 stelliger INT eingegeben wird wo ich dann den String wie gesagt erstelle wäre ja dieser nur K12301234.
und samit ja inkonssietent und wie kann ich dieses den Prüfen.

Die String länge 32 wurde von unseren SAP Leuten so gewollt.
 
Dividier den INT durch 10000
wenn Ergebnis 0 -> 4 stellig.

edit: oder weniger!

edit2: oder, mann ich schlaf heute schon, Abfrage >=10000 geht ja auch.....
 
Zuletzt bearbeitet:
So jetzt kommt meine Frage wie kann ich ünerprüfen ob der Zusammengefügte String auch 10 Zeichen enthält.
Hole Dir mal aus der Standard Bibliothek > IEC Function Blocks den FC21 "LEN".
Der liest die Länge eines Stings, weiß jetzt aber nicht ob der nun 32 ausgibt oder wirklich nur die tatsächliche beschriebene Länge.

Beachte aber auch den Einwand von borromeus, wie stellst Du sicher dass der hinter Teil wirklich leer ist!
 
Zurück
Oben