Hilft wohl nur überlagerte Datenstruktur oder mit Pointer Handling zu arbeiten, wobei ich allerdings die 1. Variante vorziehen würde.

Code:
D  MyDS            DS
D   MyFileFld1
D   MyFileFld2
D   MyFileFld3
....
D   MyFileFld53
D   MyArr                                     Dim(53) Like(MyFileFld1)
D                                             Overlay(MyDS)

 /Free
     Chain (MyKey1: MyKey2: ... MyKeyN) MyFile;
     If %Found;
        For Index = 1 to 53;
             Dsply MyArr(Index);
        EndFor;
     EndIf;
 /End-Free
Birgitta