9.20 COMPILE_PROCESS

Note: Built-In Function Rules     Usage Options

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
OK = successful submission.
ER = argument details are invalid or an authority problem has occurred. In this case, return code error message(s) are issued automatically.

2

2

 

 

 

Notes for LANSA for i Arguments

 No

 

9

Produce RPG & DDS source listings?
Default: the "source listing default" value at position 146 in the system definition data area DC@A01.
Review this default setting via the Compile process option in Work with Compile and Edit Settings in the Review Systems setting facility.

10

Optimize compiled program(s)?
Default: the "optimize compile default" value at position 147 in the system definition data area DC@A01.
Review this default setting via the Produce source listing option in Work with Compile and Edit Settings in the Review Systems setting facility.

11

Ignore decimal data errors in program(s)?
Default: the "decimal data error default" value at position 148 in the system definition data area DC@A01.
Review this default setting via the Ignore Decimal data errors in RPG option in Work with Compile and Edit Settings in the Review Systems setting facility.

 

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