Skip to content

Package Search

  • PSCH00LS—This exit allows you to pre-populate the fields on the CMNLIST0/8 panels (i.e. the package list function).

  • PSCH01LS—This exit allows you to validate fields passed from CMNLIST0/8 before they are acted on.

  • PSCH0100—This exit allows you to validate fields passed from the package search client function before they are acted on.

The exits in this functional area are intended to allow you to prevent overly generic package searches from being requested (usually accidentally). These are client-only exits as the underlying service can be legitimately used for generic component searches (for example, during reporting etc.). These exits are, potentially, passed the following series of fields (REXX variable names). Note that not all clients use all these variables as the package search implementation is different from one client to the next. Also, the data fields have been set up with a view to future requirements so there may be some fieldsthat are not populated by any client. Use the sample exits to display what is being passed from the client of interest.

LE-Language Variable Name REXX Variable Name Length Purpose Modifiable (Yes/No)
PSCHFUNC function 8 Internal exit name No
PSCHEXTN externalName 256 External routine name defined for this exit No
PSCHDBUG debugCall 1 Debug exit call (Y/N) No
PSCHORGN callOrigin 3 ISPF = SPF
XML Service = XML
PSCHZMFS zmfSubs 1 ZMF subsystem character No
PSCHPDB2 db2Subs 4 Default Db2 subsystem for this ZMF No
PSCHUSER userid 8 Userid for function calling this exit No
PSCHPKGN packageMasks 255 Package name masks separated by a semi-colon Yes
PSCHWREQ workRequest 12 Packages with this work request id Yes
PSCHDEPT department 4 Packages with this department Yes
PSCHPLSM simplePackages 1 Simple packages (Y/N) Yes
PSCHPLCX complexPackages 1 Complex packages (Y/N) Yes
PSCHPLSU superPackages 1 Super packages (Y/N) Yes
PSCHPLPT participatingPackages 1 Participating packages (Y/N) Yes
PSCHPTPP plannedPermanent 1 Packages of type planned/permanent (Y/N) Yes
PSCHPTPT plannedTemporary 1 Packages of type planned/temporary (Y/N) Yes
PSCHPTUP unplannedPermanent 1 Packages of type unplanned/permanent (Y/N) Yes
PSCHPTUT unplannedTemporary 1 Packages of type unplanned/temporary (Y/N) Yes
PSCHSTAP packageApproved 1 Approved packages (Y/N) Yes
PSCHSTBK packageBackedOut 1 Backed out packages (Y/N) Yes
PSCHSTBS packageBaselined 1 Baselined packages (Y/N) Yes
PSCHSTCL packageClosed 1 Closed packages (Y/N) Yes
PSCHSTDL packageDeleted 1 Deleted packages (Y/N) Yes
PSCHSTDV packageInDevelopment 1 Development packages (Y/N) Yes
PSCHSTDS packageDistributed 1 Distributed packages (Y/N) Yes
PSCHSTFZ packageFrozen 1 Frozen packages (Y/N) Yes
PSCHSTIN packageInstalled 1 Installed packages (Y/N) Yes
PSCHSTOP packageOpen 1 Open packages (Y/N) Yes
PSCHSTRJ packageRejected 1 Rejected packages (Y/N) Yes
PSCHSTTC packageTempCycled 1 Temp cycled packages (Y/N) Yes
PSCHRQNM requestorName 25 Package requestor’s name Yes
PSCHRQPH requestorPhone 15 Package requestor’s phone number Yes
PSCHSCNM owningPackage 10 Owning complex/super package name Yes
PSCHCTSI creatorUserIdMasks 255 Pkg creator userid masks separated by semi-colon Yes
PSCHTCDU tempChangeDuration 3 Length of temporary cycle Yes
PSCHAUDC auditRC 2 Package audit return code Yes
PSCHSDSD stagingLibsDeleted 1 Package staging libraries have been deleted (Y/N) Yes
PSCHSVAG ssvDeleted 1 Package staging versions have been deleted (Y/N) Yes
PSCHSCMN scheduledByCMN 1 Install scheduler is CMN (Y/N) Yes
PSCHSMAN scheduledByManual 1 Install scheduler in Manual (Y/N) Yes
PSCHSOTH scheduledByOther 1 Install scheduler is Other (Y/N) Yes
PSCHAUDO auditOuststanding 1 Audit is outstanding for this package (Y/N) Yes
PSCHDISO distributionOutstanding 1 Distribution is outstanding for this package (Y/N) Yes
PSCHFCDT createDateFrom 8 Package created from this date Yes
PSCHTCDT createDateTo 8 Package created up to this date Yes
PSCHFIDT installDateFrom 8 Package installed from this date Yes
PSCHTIDT installDateTo 8 Package installed up to this date Yes
PSCHFFDT freezeDateFrom 8 Package frozen from this date Yes
PSCHTFDT freezeDateTo 8 Package frozen up to this date Yes
PSCHFADT approveDateFrom 8 Package approved from this date Yes
PSCHTADT approveDateTo 8 Package approved up to this date Yes
PSCHFRDT rejectDateFrom 8 Package rejected from this date Yes
PSCHTRDT rejectDateTo 8 Package rejected up to this date Yes
PSCHFBDT baselineDateFrom 8 Package baselined from this date Yes
PSCHTBDT baselineDateTo 8 Package baselined up to this date Yes
PSCHFKDT backoutDateFrom 8 Package backed out from this date Yes
PSCHTKDT backoutDateTo 8 Package backed out up to this date Yes
PSCHFVDT revertDateFrom 8 Package reverted from this date Yes
PSCHTVDT revertDateTo 8 Package reverted up to this date Yes
PSCHLPTS lastPromoteUser 8 Package last promoted by this user Yes
PSCHLPLV lastPromoteLevel 2 Package last promoted to this level Yes
PSCHLPNM lastPromoteName 8 Package last promoted to this nickname Yes
PSCHLPST lastPromoteSite 8 Package last promoted to this site Yes
PSCHFRZO freezeOutstanding 1 Freeze is outstanding for this package(Y/N) Yes
PSCHAPRO approvalOutstanding 1 Approval is outstanding for this package(Y/N) Yes
PSCHFRPM xNodeBuildRequired 1 x-node build is required for this package(Y/N) Yes
PSCHINSO installOutstanding 1 Install is outstanding for this package (Y/N) Yes
PSCHREVO revertOutstanding 1 Revert is outstanding for this package (Y/N) Yes
PSCHBAKO backoutOutstanding 1 Back out is outstanding for this package (Y/N) Yes
PSCHXNDO xNodeBuildOutstanding 1 x-node build is outstanding for this package (Y/N) Yes
PSCHPAOS postApprovalOutstanding 1 Post-approval is outstanding for this package (Y/N) Yes
PSCHPADD postApproversAdded 1 Post-approvers added to this package (Y/N) Yes
PSCHPREJ postApprovalRejected 1 Post-approval rejected for this package (Y/N) Yes
PSCHAPLT shortApprovalList 1 Short approval list used for this package (Y/N) Yes
PSCHAPEN approvalEntity 8 Package approval entity Yes
PSCHRSIT targetSite 8 Package target remote site Yes
PSCHTITL packageTitle 72 Package title Yes
PSCHISCH searchForRecordType 1 Packages containing this record type Yes
PSCHLTYP libraryType 3 Package contains components of thislibrary type Yes
PSCHCMPN componentName-Masks 255 Component name masks separated by semi-colon Yes
PSCHSTGR stageUseridMasks 255 Staging userid masks separated by semi-colon Yes
PSCHRLSM releaseMasks 255 Attached to release masks separated by semi-colon Yes
PSCHCKIT compnentsCheckedIn 1 Packages with components checked in (Y/N) Yes
PSCHSCIP sourceInPackage 1 Packages with source components (Y/N) Yes
PSCHNSIP nonSourceInPackage 1 Packages with non-source components (Y/N) Yes
PSCHRCIP renameInPackage 1 Packages with rename utility requests (Y/N) Yes
PSCHACIP scratchInPackage 1 Packages with scratch utility requests(Y/N) Yes
PSCHCCIP customInPackage 1 Packages with custom forms (Y/N) Yes
PSCHLCIP loadInPackage 1 Packages with load components (Y/N) Yes
PSCHALKU auditLockUser 8 Packages using this userid to lock for audit Yes
PSCHPFID pkgWithFutureInstallDate 1 Packages with a future install date(Y/N) Yes
PSCHPCIP pkgWithPromoted-Components 1 Packages with promoted components (Y/N) Yes
PSCHNTUS notifyUser 8 Packages with this notify userid Yes
PSCHANID notifyUserForApproval 44 Packages with this approval notification user Yes

The following fields are set by the exit in general

LE-Language Variable Name REXX Variable Name Length Purpose Modifiable (Yes/No)
PSCHGO proceed 3 Set to 'NO' to stop the process Yes
PSCHSHRT shortMsg 24 Short error message text Yes
PSCHLONG longMsg 128 Long error message text Yes
PSCHCHNG dataChanged 3 This field must be set to YES if you wish to return changed values to ZMF. Yes

Sample exits are provided which show how to display the data items passed to these exits. They also show how to stop an overly generic package search request.

The exit can change any of the query criteria values but if a client doesn't actually use one of these variables then changing it in the exit will achieve nothing.

The exits are: