9.20 COMPILE_PROCESS
Compiles a process and all selected functions.
This is a Specialized Built-In Function for use in a Development Environment only.
Arguments for Visual LANSA
No | Type | Req/ Opt | Visual LANSA Description | Min Len | Max Len | Min Dec | Max Dec |
|---|---|---|---|---|---|---|---|
1 | A | Req | Process name | 1 | 10 | ||
2 | L | Req | Working list to contain function names. The calling RDML function must provide a working list with an aggregate entry length of exactly 7 bytes. If you do not wish to specify any functions for compilation then you must pass an empty working list. | 1 | 7 | ||
3 | A | Opt | Name of job Ignored | 1 | 10 | ||
4 | A | Opt | Name of job description Ignored | 1 | 21 | ||
5 | A | Opt | Name of job queue Ignored. | 1 | 21 | ||
6 | A | Opt | Name of output queue Ignored. | 1 | 21 | ||
7 | A | Opt | Force compile of the process. This option forces the process to be rebuilt. If this option is NO, the process may still be compiled if changes have been made since it was last compiled. Functions are not affected. Functions are always compiled. Default NO. | 2 | 3 | ||
8 | A | Opt | Produce RDML source listing? Ignored. | 2 | 3 | ||
9 | A | Opt | Produce RPG & DDS source listings? This option is treated as the Keep Source option in LANSA/PC. | 2 | 3 | ||
10 | A | Opt | Optimize compiled program(s)? Ignored. | 2 | 3 | ||
11 | A | Opt | Ignore decimal data errors in program(s)? Ignored. | 2 | 3 | ||
12 | A | Opt | Allow debug / Remove Program observability? Only the first character is checked. If this is Y then debug is enabled. Default Y | 6 | 6 | ||
13 | A | Opt | Dump code generator work areas? Ignored. | 2 | 3 | ||
14 | A | Opt | Produce Documentor details? Ignored. | 2 | 2 | ||
15 | A | Opt | Generate HTML pages? YES = Generate HTML pages NO = Do not generate HTML pages Default : YES Note: This argument is only applicable to Web enabled processes. | 2 | 3 | ||
16 | A | Opt | Generate HTML editor extension details? This option is treated the same as "Validate Numeric Values" YES = Generate details to support HTML editor extension. NO = Do not generate details. Note: This argument is only applicable to web enabled processes. If this option is YES, the Generate HTML Pages option must also be YES. | 2 | 3 |
Arguments for LANSA for i
No | Type | Req/ Opt | LANSA for i Description | Min Len | Max Len | Min Dec | Max Dec |
|---|---|---|---|---|---|---|---|
1 | A | Req | Process name | 1 | 10 | ||
2 | L | Req | Working list to contain function names. The calling RDML function must provide a working list with an aggregate entry length of exactly 7 bytes. If you do not wish to specify any functions for compilation then you must pass an empty working list. Each returned list entry is formatted as follows: Bytes 1-7: Function name | 1 | 7 | ||
3 | A | Opt | Name of batch job Default: Process name | 1 | 10 | ||
4 | A | Opt | Name of job description Default: the job description from the requesting job's attributes. | 1 | 21 | ||
5 | A | Opt | Name of job queue Default: the job queue from the requesting job's attributes. | 1 | 21 | ||
6 | A | Opt | Name of output queue Default: the output queue from the requesting job's attributes. | 1 | 21 | ||
7 | A | Opt | Compile process as well as functions? YES = compile process NO = do not compile process Default: the "compile process default" value at position 461 in the system definition data area DC@A01. See Note | 2 | 3 | ||
8 | A | Opt | Produce RDML source listing? YES = produce RDML listing NO = do not produce listing Default: the "source listing default" value at position 146 in the system definition data area DC@A01. | 2 | 3 | ||
9 | A | Opt | Produce RPG & DDS source listings? YES = produce RPG & DDS listings NO = do not produce listings Default: the "source listing default" value at position 146 in the system definition data area DC@A01. See Note | 2 | 3 | ||
10 | A | Opt | Optimize compiled program(s)? YES = optimize program(s) NO = do not optimize Default: the "optimize compile default" value at position 147 in the system definition data area DC@A01. See Note | 2 | 3 | ||
11 | A | Opt | Ignore decimal data errors in program(s)? YES = ignore decimal data errors NO = do not ignore errors Default: the "decimal data error default" value at position 148 in the system definition data area DC@A01. See Note | 2 | 3 | ||
12 | A | Opt | Allow debug / Remove Program observability? YESYES = Allow program(s) to be used in debug and do not remove observability. NO NO = Do not allow debug and remove program observability NO YES = Do not allow debug but do not remove the programs observability. Default: the "enable debug default" value at position 400 in the system definition data area DC@A01. Warning: Do not specify YESNO for this parameter. The DEBUG facility cannot work if a program is not observable. | 6 | 6 | ||
13 | A | Opt | Dump code generator work areas? YES = Dump work areas NO = Do not dump work areas Default: YES | 2 | 3 | ||
14 | A | Opt | Produce Documentor details? YES = Produce Documentor details NO = Do not produce Documentor details Default: YES if Documentor is enabled at the partition level, otherwise NO. | 2 | 2 | ||
15 | A | Opt | Generate HTML Pages? YES = Generate HTML pages NO = Do not generate HTML pages Default : YES Note: This argument is only applicable to Web enabled processes. | 2 | 3 | ||
16 | A | Opt | Validate numerics YES = Generate details to support HTML editor extension. NO = Do not generate details. Note: This argument is only applicable to web enabled processes. If this option is YES, the Generate HTML Pages option must also be YES. | 2 | 3 | ||
17 | A | Opt | Generate XML? YES = Generate XML NO = Do not Generate XML Default: YES Note: This argument is only applicable to XML enabled processes | 2 | 3 |
Return Values
No | Type | Req/ Opt | Description | Min Len | Max Len | Min Dec | Max Dec |
|---|---|---|---|---|---|---|---|
1 | A | Req | Return code | 2 | 2 |
Notes for LANSA for i Arguments
No | |
|---|---|
9 | Produce RPG & DDS source listings? |
10 | Optimize compiled program(s)? |
11 | Ignore decimal data errors in program(s)? |
Example
A user wants to control the compilation of processes and functions using their own version of the "Compile / Re-Compile a Process" facility.
********* Define arguments and lists
DEFINE FIELD(#PROCES) TYPE(*CHAR) LENGTH(10)
DEFINE FIELD(#FUNCTN) TYPE(*CHAR) LENGTH(7)
DEFINE FIELD(#RETCOD) TYPE(*CHAR) LENGTH(2)
DEF_LIST NAME(#WKFUNL) FIELDS((#FUNCTN)) TYPE(*WORKING)
DEF_LIST NAME(#BWFUNL) FIELDS((#FUNCTN))
********* Clear working and browse lists
BEGIN_LOOP
CLR_LIST NAMED(#WKFUNL)
INZ_LIST NAMED(#BWFUNL) NUM_ENTRYS(10) WITH_MODE(*CHANGE)
********* Request Process and Functions
REQUEST FIELDS(#PROCES) BROWSELIST(#BWFUNL)
********* Move Functions from the browselist to the working list
SELECTLIST NAMED(#BWFUNL)
ADD_ENTRY TO_LIST(#WKFUNL)
ENDSELECT
********* Execute built-in-function - COMPILE_PROCESS
USE BUILTIN(COMPILE_PROCESS) WITH_ARGS(#PROCES #WKFUNL) TO_GET(#RETCOD)
********* Check if submission was successful
IF COND('#RETCOD *EQ ''OK''')
MESSAGE MSGTXT('Compile Process submitted successfully')
CHANGE FIELD(#PROCES) TO(*BLANK)
ELSE
MESSAGE MSGTXT('Compile Process submit failed with errors, refer to additional messages')
ENDIF
END_LOOP