Du kannst auch mit SQL gezielt auf Daten zugreifen und dir nur das rausholen, was Du brauchst.
File-Referenz-Variablen kannst Du mit SQL-Funktionen genau wie alphanumerische Felder behandeln, d.h. mit POSSTR oder LOCATE kannst Du positionieren und suchen, mit SUBSTR kannst Du Daten gezielt herauslesen und dann in eine (kürzere) Host-Variable ausgeben.
... und Du bist auch nicht auf 16MB beschränkt, sondern kannst die ganzen (möglichen) 2GB verarbeiten. (Die Daten werden überigens nicht kopiert)

Beispiel:
Code:
 DCL-S MyClobFile  SQLTYPE(CLOBFILE) CCSID(1208);
...
 MyCLOBFile_Name = %Trim(ParIFSFile);                               
 MyCLOBFile_NL   = %Len(%Trim(MyCLOBFile_Name));                    
 MyCLOBFile_FO   = SQFRD;                            //Read Only    
                                                                    
 For Index =  1 to 15;                                              
     Start = (Index-1) * RowLen + 1;                                
     Exec SQL Set :MyText = Substr(:MyCLOBFile, :Start, :RowLen);   
     Dsply MyText;                                                  
     If    SQLCODE = 100 or SQLCODE < *Zeros                        
        or %Len(%Trim(MyText)) = *Zeros;                            
        Leave;                                                      
     EndIf;                                                         
 EndFor;
Birgitta