Programs can use either externally described or program-described files.
However, if you choose to describe a file to the field level, the system can do more for you. For example, when you compile your programs, the system can extract information from an externally described file and automatically include field information in your programs. Therefore, you do not have to code the field information in each program that uses the file.
The following figure shows the typical relationships between files and programs on the iSeries™ server:
Externally described files can also be described in a program. You might want to use this method for compatibility with previous systems. For example, you want to run programs on the iSeries server that originally came from a traditional file system. Those programs use program-described data, and the file itself is only described to the record level. At a later time, you describe the file to the field level (externally described file) to use more of the database functions available on the system. Your old programs, containing program-described data, can continue to use the externally described file while new programs use the field-level descriptions that are part of the file. Over time, you can change one or more of your old programs to use the field-level descriptions.