You are here: LANSA for i User Guide > Appendix C. Technical Notes > User Exit Programs > User Exit CIDT Can I Do This

User Exit CIDT (Can I Do This)

When the CIDT user exit is called and how

A user-defined program can manipulate the two Return Code parameters from the LANSA CIDT (Can I Do This) user exit. The User Exit Return Code parameter will determine whether to continue with the LANSA CIDT (DC@P8096) processing or not.

The user-defined program will be executed before the CIDT check, regardless of whether Task control is active or not. (The user-defined program can determine if task control is active by checking the contents of parameter DC@EDS. If 'Y' is found in DC@EDS, parameter position 1517 - 1517, then task control is active for the partition.)

If the user exit program parameter User Exit Return Code returns a value of:

If the user exit program returns a Return Code value that is not Y or N, the LANSA CIDT will process as for a User Exit Return Code of C.

If the Partition ID is required, it can be derived from DC@IDS parameter position 910 - 912.

Description

Type

Length

Usage

DC@IDS

*CHAR

1024

Cannot be changed.

DC@EDS

*CHAR

2500

Cannot be changed.

Object Name

*CHAR

10

Cannot be changed.

Object Extension

*CHAR

10

Cannot be changed.

Object type

*CHAR

2

Cannot be changed.

Return Code

*CHAR

1

Can be changed. Valid values are Y or N.

User Exit Return Code

*CHAR

1

Will accept C or N

Validate User for Task Tracking

*CHAR

4

Passed as 'CIDT' or 'VTSK' * 

PC Name

*CHAR

15

Cannot be changed. Will only be filled if a result of Visual LANSA development.

 

 

Refer also to User defined CIDT program (positions 709-728) in the Execution and Security Settings.

*  This value indicates from where the user exit has been called.

'CIDT' = called from the CIDT (Can I Do This) routine. The Object Name, Extension and Type will contain the details of the object being checked.

'VTSK' = called when checking the Task ID is valid and the user is allowed to use this task. This call occurs if a Task ID is required when importing. The Object Name, Extension and Type will be blank. The 'VTSK' call happens if a Task ID is required when importing and is actioned when an import is requested or an import is executed.