Progress ABL code is normally stored in files with different ending depending on what they contain. The endings are optional but rather a defacto standard:
| Filename extension | Contains |
|---|---|
| .p | A Progress program. Can contain several internal procedures, functions etc |
| .i | Include file to be included in other files |
| .w | A file containing a graphical representation of a Window or Dialog, WinForm-based. |
| .r | The compiled result of any file containing Progress 4GL. Called r-code. |
| .cls | A Progress Object Oriented Class |
| .wrx | A container for ActiveX data whenever needed (generated by compiling in "AppBuilder"). |
To run a program-file in Progress 4GL the RUN-statement is used:
RUN program.p. //Will run program.p without parameters.
RUN program.w (INPUT true). //Will run program.w with input parameter set to true.
RUN program. //Will run program.r if present otherwise internal procedure "program".
To include another file in a Progress-program the {}-directive is used:
{program.i} //Includes program.i in the current program