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 : *NoDebugIODatedit(*DMYDatFmt(*ISOIndent('| '
H DftActGrp(*Noactgrp(*callerexpropts(*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
(16ascend
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(en2402235 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