Saving and compiling your test procedure
- Last Updated: March 30, 2020
- 3 minute read
- OpenEdge
- Version 12.2
- Documentation
You've written your first ABL procedure. As you make changes to it, you should re-save it by selecting from the Procedure Editor menu or by just pressing F6.
This section examines what happens when you press the F2 key or select from the menu to run your procedure:
- When you tell the AVM to run your procedure in this way, the Procedure Editor creates a temporary file from the ABL code currently in the editor window and then passes this file to the ABL compiler.
- The compiler performs a syntax analysis of the procedure and stops with one or more error messages if it detects any errors in your ABL statements.
- If your procedure is error-free, the compiler then translates or compiles your procedure into an intermediate form that is then interpreted by the AVM to execute the statements in the procedure. This intermediate form is called r-code, for run-time code. It is not a binary executable but rather a largely platform-independent set of instructions (independent except for the user interface specifics, that is).
- The AVM reads and executes the r-code.
This ability to compile and run what is in the editor on the fly makes it easy for you to build and test procedures in an iterative way, making a change as you have done and then simply running the procedure to see the effects. Naturally, you want to save the r-code permanently when you have finished a procedure so that the AVM can skip the compilation step when you run the procedure and simply execute the r-code directly. Generally it is just the compiled r-code that you deploy as your finished application.
To save the source procedure itself, use the standard menu
option in the Procedure Editor, which saves the contents of the
editor out to disk and gives it a filename with a .p extension.
To compile a procedure that you have saved, you need to use the COMPILE statement
in ABL. There's a COMPILE statement rather than
just having a single key to press because the COMPILE statement
in fact has a lot of options to it, including where the compiled
code is saved, whether a cross-reference file is generated to help
you debug your application, and so forth. For now, it is sufficient
to know just the simple form of the statement you use to save your compiled
procedure.
To compile your test procedure:
- From the Procedure Editor, select .
Another editor window appears that has all the same capabilities as the one with which you started out, except that not all the menu options are available from it. You can be working with any number of procedure windows at one time, and save them independently as separate named procedures. Or you can bring up a window just to execute a statement, as you are doing now.
- In the new editor window, enter the following statement:
COMPILE h-CustSample.p SAVE. - Press F2 or select . The procedure window disappears and almost immediately returns.
The compilation of h-CustSample.p is complete. If the compiler had detected any syntax errors in the procedure, you would have seen them and the procedure would not have compiled.
If you check your working directory you can see the compiled
procedure. It has the .r extension and is commonly
referred to as a .r file.
One option for the COMPILE statement is worth mentioning
at this time. You can specify a different directory for your .r files.
This is a good idea, especially when you get to the point where
you are ready to start testing completed parts of your application. Use
this syntax:
|
If you need to recompile a large number of procedures at once, you can use a special tool to do that for you. This is available through the option on the Procedure Editor.