A field reference file is a physical file which is used for defining most of your commonly used fields. Then when you need to create / modify a physical file you can use the definitions from the field reference file by using the REF(reference file) and REFFLD (reference field) keywords. If you then need to change a field definition globally, you can change it in the field reference file and recompile everything that uses that field.
<b>Field Reference File</b>
REFNUM 9S0 COLHDG(‘Reference’ ‘number’)
TEXT 20A COLHDG(‘Text’ ‘Field’)
<b>Your Physical File</b>
INVNUM R REFFLD(REFNUM)
INVTXT R REFFLD(TEXT)
If you change the length of your reference number in the field reference file, then recompile the field reference file and the physical file, then the length will change in the physical file. This seems like a lot of work for 1 file, but if you have lots of files which use the same field reference it makes it very easy to make changes to many files and programs.