Benutzer-Werkzeuge

Webseiten-Werkzeuge


bedingung_pruefen_z.b._personalnummer_muss_mit_b_beginnen

##Es wird das „IF“-Statement benutzt, das etwas speziell gehandhabt wird.

##In CVT000 kopiere ich zunächst die komplette Perso-Struktur in den Zielpuffer um, das ist quasi mein Default und Init.

CVT000= 0,213, 0,213,L ; alles kopieren

##CVT010 enthält eine „IFC“-Anweisung und ist eigentlich keine „Konverteranweisung“, weil es einen Status prüft.

CVT010= 35, 35, 35, 35,IFC00=B ;pruefe PERNO-Start='B'

##„Wörtlich“ liest sich die Anweisung etwa so: ##Wenn an Offset 35 das Zeichen ''B' steht, setze die Bedingung-00 auf den Wert 1 oder „wahr“… ##Sonst passiert in dieser Zeile gar nichts. ##…man kann auch mehr als ein Zeichen angeben (IFC00=B1234)

CVT012= 26, 33, 26, 33,IFE00=d+1J ; ENDDA +1 Jahr

##CVT012 enthält eine „IFE“-Anweisung und bezieht sich auf diese ##Bedingung-00: „wenn Bedingung-00 'wahr' ist (also PERNO mit 'B' begann), addiere 1 Jahr auf das Datumsfeld ENDDA) ##CVT012= 26, 33, 26, 33,IFE00=d+1J ; ENDDA +1 Jahr ##IFE00=<Konvertieranweisung> ##|||||+- wenn „wahr“, das Gegenteil wäre „IFE00!<Anweisung>“ ##|||++– Bedingung 00, wurde vorher durch IFC00 gesetzt ##+++—- „execute“ im Ggs. zu „IFC“ = „check“

#Ein Datensatz, bei dem die Bedingung 00 nicht erfüllt ist, durchläuft die CVT012 einfach ohne verändert zu werden.

#Es gibt max. 99 Bedingungen (IF00 … IF99) und alle werden mit dem nächsten neuen Datensatz wieder auf 0 initialisiert.

##Ergebnis: #Input: #PH4CLNT003000000011998081919980826 02710701Mann Thomas… #PH4CLNT003000000501998081919980826 B3310002internation…

#Output: #PH4CLNT003000000011998081919980826 02710701Mann Thomas… #PH4CLNT003000000501998081919990826 B3310002internation…

#Beim zweiten Satz wurde ENDDA+1Jahr gerechnet.

bedingung_pruefen_z.b._personalnummer_muss_mit_b_beginnen.txt · Zuletzt geändert: 2020/06/24 14:33 von 127.0.0.1