-* File FILEDEF2ARRAY.fex -************************************* HISTORY ***************************************** -* By Date W/O Modification -* JPH 01/02/2008 - Originally written -* -* Parameters -* &FILEDEF Filedef to read variables from -* &FMT Format to read variable eg A80 or , for Free Format (comma and eol delimited) -* &VARNAME Variable name -* -* Returned -* &VARNAME0 = count of items &VARNAME1 = 1st item, &VARNAME2 = 2nd item etc etc -* -* Example -* -DOS DIR /B \\PANDORA\C$\WF76\IBI\APPS\IFS\NEW_*.FOC > TEMP.DAT -* -* FILEDEF INFILE DISK TEMP.DAT -* -RUN -* -SET &FILEDEF = 'INFILE' ; -* -SET &FMT = ',' ; -* -SET &VARNAME = 'FILE' ; -* -INCLUDE FILEDEF2ARRAY -* -* -SET &FILE = 0 ; -* -REPEAT :FLOOP FOR &I FROM 1 TO &FILE0 -* -TYPE &FILE.&I -* -:FLOOP -* -* TABLE FILE CAR -* PRINT COUNTRY -* ON TABLE SAVE -* END -* -RUN -* -SET &FILEDEF = 'SAVE' ; -* -SET &FMT = 'A10' ; -* -SET &VARNAME = 'COUNTRY' ; -* -INCLUDE FILEDEF2ARRAY -* -* -SET &COUNTRY = 0 ; -* -REPEAT :CLOOP FOR &I FROM 1 TO &COUNTRY0 -* -TYPE &COUNTRY.&I -* -:CLOOP -* -**************************************************************************************** -SET &VARNAME = '&' | &VARNAME ; -SET &F2A_INDEX = 0 ; -SET &F2A_INPUT = 'NO INPUT' ; -SET &F2A_READSTRING = IF &FMT | ' ' EQ ',' | ' ' THEN ', &' | 'F2A_INPUT' - ELSE ' &' | 'F2A_INPUT.' | &FMT | '.' ; -READ &FILEDEF.EVAL&F2A_READSTRING.EVAL -REPEAT :F2A_LOOP WHILE &IORETURN EQ 0 ; -SET &F2A_INDEX = &F2A_INDEX + 1 ; -SET &VARNAME.EVAL.&F2A_INDEX = &F2A_INPUT ; -READ &FILEDEF.EVAL&F2A_READSTRING.EVAL -:F2A_LOOP -SET &VARNAME.EVAL0 = &F2A_INDEX ;
In Focus since 1979///7706m/5 ;wintel 2008/64;OAM security; Oracle db, ///MRE/BID |
http://chaos/ibi_apps/WFServlet