Change Request Callouts


Callouts are not available on Solo Edition.

The following callouts relate to actions associated with change requests. Some of the callouts can be set up using a dialog as described below. Others required direct setting of nodes in the ^%vcvc global.

1. Navigate in the folders panel to Setup -> Properties -> Change Requests.

2. In the new dialog, enter the details of each callout into the relevant field. See below for more details.

Change Request Validation


This callout is called when a change request is updated. It must be written as an extrinsic function.

Usage

set err=$$label^routine(fcode,obv,lcode1,lcode2,.chref,.chdesc,.chtype,.chdatex,chrefs(key))

Inputs

fcode Function code for the transfer (or CHMAINT)
obv Object being transferred (or null)
lcode1 From location code (or null)
lcode2 To location code (or null)
chref Change request code
chdesc Change request description
chtype Change request type
chdatex Change request date in a valid input format
chrefs(key) Array of change requests for the object version
Note: When this callout is called from the change request maintenance function, fcode is CHMAINT and the values for obv, lcode1 and lcode2 are null.

Outputs

$$ 1\errorMessage = Change request is not valid
0 = Change request is valid
chref Change request code
chdesc Change request description
chtype Change request type
chdatex Change request date in DD-MMM-[CC]YY format

Change Request Status Validation


This callout is called when a change is made to the status of a change request. It must be written as an extrinsic function.

Usage

set ok=$$label^routine(chtype,chref,chostat,chstat,.err)

Inputs

chtype Change request type
chref Change request code
chostat Old change request status
chstat New change request status

Outputs

$$ 1 = Status change is valid
0 = Status change is not valid
err Error message if status change is not valid

Change Request Commit


This callout is called when details of a change request are saved. It must be written as a line label or routine call. The empty parameters exist for back-compatibility.

Usage

do label^routine("CHMAINT","","","",chref)

Inputs

chref Change request code

Validate Adding Object to Change Request


This callout is called when an object is being added to a change request. It must be written as an extrinsic function. To install the callout, set ^%vcvc("changeRequestValidate.AddObject")="label^routine"

Usage

set ok=$$label^routine(obv,chref,.error)

Inputs

obv Object being added
chref Change request code

Outputs

$$ 1 = Operation is valid
0 = Operation is not valid
error Error message

Validate Removing Object from Change Request


This callout is called when an object is being removed from a change request. It must be written as an extrinsic function. To install the callout, set ^%vcvc("changeRequestValidate.RemoveObject")="label^routine"

Usage

set ok=$$label^routine(obv,chref,.error)

Inputs

obv Object being removed
chref Change request code

Outputs

$$ 1 = Operation is valid
0 = Operation is not valid
error Error message

Validate Adding Change Request to Change Request


This callout is called when a change request is being added to a change request. It must be written as an extrinsic function. To install the callout, set ^%vcvc("changeRequestValidate.AddCR")="label^routine"

Usage

set ok=$$label^routine(obv,chref,.error)

Inputs

chref2 Change request being added
chref Change request code

Outputs

$$ 1 = Operation is valid
0 = Operation is not valid
error Error message

Validate Removing Change Request from Change Request


This callout is called when a change request is being removed from a change request. It must be written as an extrinsic function. To install the callout, set ^%vcvc("changeRequestValidate.RemoveCR")="label^routine"

Usage

set ok=$$label^routine(obv,chref,.error)

Inputs

chref2 Change request being removed
chref Change request code

Outputs

$$ 1 = Operation is valid
0 = Operation is not valid
error Error message