Scratch/Rename
This section describes the scratch/rename functional area of the high-level language exits. The 4-character exit name identifier is SCRN.
Select option U Scratch/Rename from the HLL Exit Definition - Function Selection (CMNHLLMM) panel to define exits for the scratch rename function:
CMNHLLMM HLL Exit Definition - Function Selection
Option ===>_________________________________________________________
1 All Full list
2 Build Component checkin, build, recompile, relink, delete
3 Package Create Initial create of a package
4 Package Update Subsequent update of package attributes
5 File Tailoring Define customized ISPF variables for file tailoring
6 Checkout Component Checkout from baseline/promotion
7 Promote/Demote Promotion and demotion of components
8 Audit Audit job submission and audit process
9 Freeze Package freeze and selective unfreeze/refreeze
A Approve/Reject Package approve and reject
R Revert/Backout Package revert and backout
S Specific Package syslib, Standard Language, Query etc.
U Scratch/Rename Utility functions
E ERO ERO functions
M Miscellaneous HLLX procedure name
Z Modify Issue Reload, Detach, or Attach modify commands
In response, the HLL Exit Definition (CMNHLLMN) panel is displayed. Here is how a sample panel might look:
CMNHLLMN HLL Exit Definition Row 1 to 8 of 8
Command ===>__________________________________________________ Scroll ===> CSR
Internal External + Active 1=LE Description +
Name Name 2=REXX Debug Userids +
------------------------------------------------------------------------------
SCRN00XM NO 2 pre service call for pkg_util
Debug: NO 2
------------------------------------------------------------------------------
SCRN01XM NO 2 post service call for pkg_util
Debug: NO 2
------------------------------------------------------------------------------
SCRN0101 NO 2 post package selection
Debug: NO 2
------------------------------------------------------------------------------
SCRN0002 NO 2 pre baseline selection
Debug: NO 2
------------------------------------------------------------------------------
SCRN0102 NO 2 post baseline selection
Debug: NO 2
------------------------------------------------------------------------------
SCRN0103 NO 2 post baseline member list
Debug: NO 2
------------------------------------------------------------------------------
SCRN0104 NO 2 post package member list
Debug: NO 2
------------------------------------------------------------------------------
SCRN0105 NO 2 post libtype selection list
Debug: NO 2
******************************* Bottom of data *******************************
The panels around which exit points will be placed are listed below. The internal exit name (also known as function code) is SYSL0pnn, where:
- p=0 is the pre-exit
- p=1 is the post-exit
- nn is an alphanumeric identifier relating to the panel for which the exit is taken.
The pre-exit is taken before the panel is displayed. The post-exit is taken after the panel has been displayed.
An internal exit name of SCRN0p02, for example, means that both pre- and post-exits exist. That is, the name of the pre-exit is SCRN0002 and the name of the post-exit is SCRN0102. If it makes no sense to have a pre-exit, the internal name is given as SCRN0101 (post-exit only). If it makes no sense to have a post-exit, the internal name is given as SCRN0001 (pre-exit only).
Most table displays have only post-exits. That is, we do not want to have a pre-exit that manipulates the lists that ZMF generates. We may want to have a post-exit to validate the selections that the user makes from the lists.
Sample exits are provided which show how to list all the information incoming to these exits. Note that not all information is available to all exit points. Those early in the dialog will not have as much information as back-end exit points.
The samples provided are:
CMNZMF.SAMPLES Library Member | Description |
---|---|
HXCSCRN | COBOL example |
HXPSCRN | PL/I example |
HXRSCRN | REXX example |
Data Interface
There is a single data structure passed to all of these exits.
...
LE-Language Variable Name | REXX Variable Name | Length | Purpose | Modifiable | Cursor Field No. |
---|---|---|---|---|---|
SCRNFUNC | function | 8 | Internal exit name | No | |
SCRNDBUG | debugCall | 1 | Debug exit call (Y/N) | No | |
SCRNORGN | callOrigin | 3 | ISPF=SPF XML Service=XML ZDD=ZDDZMF4 ECL=ECL | No | |
SCRNZMFS | zmfSubs | 1 | ZMF subsystem character | No | |
SCRNPDB2 | db2Subs | 4 | Default Db2 subsystem for this ZM | FNo | |
SCRNUSER | userid | 8 | Userid for function calling this exit | No | |
SCRNEXTN | externalName | 256 | External routine namedefined for this exi | tNo | |
SCRNPKGN | packageId | 10 | The package being acted on | No | |
SCRNPSTA | packageStatus | 3 | Package status (DEV, FRZ,etc) | No | |
SCRNPINS | packageInsDate | 8 | Pkg Install Date yyyymmdd | No | |
SCRNWRQN | packageWorkRequest | 12 | Package Work Request | No | |
SCRNDEPT | packageDepartment | 4 | Package Department | No | |
SCRNOPTN | optionRequested | 1 | 1=baseline, 2=package | Yes | 001 |
SCRNRQST | requestType | 1 | s=scratch, r=rename,d=delete | Yes | 013 |
SCRNCOMP | componentName | 256 | Component name | Yes | 010 |
SCRNLTYP | componentType | 3 | Component library type | Yes | 011 |
SCRNNWNM | componentNewName | 256 | Component New Name(rename) | Yes | 012 |
SCRNVVMM | verModLevel | 5 | Version.mod level | No | |
SCRNCRDT | createDate | 8 | Member create date | No | |
SCRNCHDT | changeDate | 8 | Member change date | No | |
SCRNCHGT | changeTime | 6 | Member change time | No | |
SCRNCSZE | memberSize | 5 | Member change size | No | |
SCRNUSRN | Username | 8 | User name | No | |
SCRNLSZE | loadSize | 6 | Load member size | No | |
SCRNLTTR | loadTtr | 6 | Load member TTR | No | |
CKOTALAS | loadAlias | 8 | Load member alias | No | |
SCRNAC | loadAuthCode | 2 | Authorisation code | No | |
SCRNRM | loadRmode | 3 | Load Residency mode | No | |
SCRNAM | loadAmode | 3 | Load Addressing mode | No | |
SCRNATTR | loadAttributes | 8 | Load attributes | No | |
SCRNGO | proceed | 3 | Set to 'NO' to stop the process | Yes | |
SCRNLOKD | dataLocked | 3 | Fields locked? (YES/NO) | Yes | |
SCRNSHRT | shortMsg | 24 | Short error message text | Yes | |
SCRNLONG | longMsg | 128 | Long error message text | Yes | |
SCRNCURS | cursorField | 3 | For ISPF where cursor is placed on return to panel display.Field values are shown here. | Yes | |
SCRNCHNG | dataChanged | 3 | This field must be set toYES if you wish to returnchanged values to ZMF. | Yes |