Datenbank: ETECPPF
PHP-Code:
TPKDN TPKW01 TPKW02 TPKW03 TPKW04 TPKW05 TPKW06 TPKW07 TPKW08 TPKW09 TPKW10 TPKW11 TPKW12 TPKW13 TPKW14 TPKW15 TPKW16
2402235 AAAAAA BBBBBB CCCCCC DDDDDD EEEEEE FFFFFF GGGGGG HHHHHH
entspr. Pgm.
PHP-Code:
H Option(*SrcStmt : *NoDebugIO) Datedit(*DMY) DatFmt(*ISO) Indent('| ')
H DftActGrp(*No) actgrp(*caller) expropts(*resdecpos)
FETecPPFIF E K Disk UsrOpn Rename(ETF1:ETF1s)
*Konstanten & Variablen
D Pos9 s 2 0
D PosX s 10i 0
D DS
D TPKw 1 240 dim(16) ascend
D TPKw01 1 15
D TPKw02 16 30
D TPKw03 31 45
D TPKw04 46 60
D TPKw05 61 75
D TPKw06 76 90
D TPKw07 91 105
D TPKw08 106 120
D TPKw09 121 135
D TPKw10 136 150
D TPKw11 151 165
D TPKw12 166 180
D TPKw13 181 195
D TPKw14 196 210
D TPKw15 211 225
D TPKw16 226 240
/free
Open ETecPPF;
TPKw = *blank;
Chain(en) 2402235 ETecPPF;
If %found(ETecPPF);
Pos9 = %lookup(*blank:TPKw);
Pos9 = %lookup(' ':TPKw);
Pos9 = %lookup(*blank:TPKw:1:16);
Pos9 = %lookup(' ':TPKw:1:16);
PosX = %lookup(*blank:TPKw);
PosX = %lookup(' ':TPKw);
PosX = %lookup(*blank:TPKw:1:16);
PosX = %lookup(' ':TPKw:1:16);
EndIf;
Close ETecPPF;
*InLR = *on;
/end-free
mit diesem Programm möchte ich das erste Element der DS (TPKW) finden, welches mit *blank gefüllt ist.
mein Problem ist hier, dass, falls die Tabelle (wie im Beispiel) mit mehr als 8 (AAAAAA - HHHHHH) gefüllt ist,
ich immer in den Variablen Pos9 bzw. PosX eine "0" zurück bekomme und nicht "9".
sind in der Tabelle nur max. sieben Felder gefüllt, dann bekomm ich in den Variablen Pos9 bzw. PosX den Wert "08" bzw "8"
=> kann mir jemand sagen, wo hier mein Problem (Fehler) liegt?
thx
Bookmarks