Query Component (QCMP0100)
There is only one exit for this area and it is intended to allow you to prevent overly generic component searches from being requested (usually accidentally). This is a client-only exit as the underlying service can be legitimately used for generic component searches (e.g. during reporting etc.). This exit is, potentially, passed the following series of fields (REXX variable names). Note that not all clients use all these variables as the query component 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 fields that 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) |
---|---|---|---|---|
QCMPFUNC | function | 8 | Internal exit name | No |
QCMPEXTN | externalName | 256 | External routine name defined for this exit | No |
QCMPDBUG | debugCall | 1 | Debug exit call (Y/N) | No |
QCMPORGN | callOrigin | 3 | ISPF = SPF XML Service = XML ZDD = ZDD ZMF4ECL = ECL |
No |
QCMPZMFS | zmfSubs | 1 | ZMF subsystem character | No |
QCMPPDB2 | db2Subs | 4 | Default Db2 subsystem for this ZMF | No |
QCMPUSER | userid | 8 | Userid for function calling this exit | No |
QCMPCOMP | componentName | 256 | Component name | Yes |
QCMPTYPE | componentType | 3 | Component library type | Yes |
QCMPPKGN | packageId | 10 | Component package | Yes |
QCMPUPID | lastChangeUserid | 8 | Component last changed by this userid | Yes |
QCMPLANG | language | 8 | Component language | Yes |
QCMPPROC | buildProcedure | 8 | Component build procedure | Yes |
QCMPDATF | dateChangedFrom | 8 | Component last changed from this date | Yes |
QCMPDATT | dateChangedTo | 8 | Component last changed up to this date | Yes |
QCMPBDTF | dateBaselinedFrom | 8 | Component last baselined from this date | Yes |
QCMPBDTT | dateBaselinedTo | 8 | Component last baselined up to this date | Yes |
QCMPZDTF | dateTempCycledFrom | 8 | Component temp cycled from this date | Yes |
QCMPZDTT | dateTempCycledTo | 8 | Component temp cycled up to this date | Yes |
QCMPSCKO | componentCheckedOut | 1 | Component in checked out status (Y/N) | Yes |
QCMPSDEL | componentDeleted | 1 | Component in deleted status (Y/N) | Yes |
QCMPSTCC | componentTempCycled | 1 | Component in temp cycled status (Y/N) | Yes |
QCMPSPRM | componentPromoted | 1 | Component in promoted status (Y/N) | Yes |
QCMPSDEM | componentDemoted | 1 | Component in demoted status (Y/N) | Yes |
QCMPSBAS | componentBaselined | 1 | Component in baselined status (Y/N) | Yes |
QCMPSDEA | componentDeletedArchived | 1 | Component in D/A status (Y/N) | Yes |
The following fields are used by the ISPF client only.
LE-Language Variable Name | REXX Variable Name | Length | Purpose | Modifiable (Yes/No) |
---|---|---|---|---|
QCMPPSAP | packageApproved | 1 | Associated pkg has approved status | Yes |
QCMPPSBK | packageBackedOut | 1 | Associated pkg has backed out status | Yes |
QCMPPSBS | packageBaselined | 1 | Associated pkg has baselined status | Yes |
QCMPPSCL | packageClosed | 1 | Associated pkg has closed status | Yes |
QCMPPSAR | packageArchived | 1 | Associated pkg has archived status | Yes |
QCMPPSDL | packageDeleted | 1 | Associated pkg has deleted status | Yes |
QCMPPSDV | packageInDevelopment | 1 | Associated pkg has development status | Yes |
QCMPPSDS | packageDistributed | 1 | Associated pkg has distributed status | Yes |
QCMPPSFZ | packageFrozen | 1 | Associated pkg has frozen status | Yes |
QCMPPSIN | packageInstalled | 1 | Associated pkg has installed status | Yes |
QCMPPSOP | packageOpen | 1 | Associated pkg has open status | Yes |
QCMPPSRJ | packageRejected | 1 | Associated pkg has rejected status | Yes |
QCMPPSTC | packageTempCycled | 1 | Associated pkg has temp cycled status | Yes |
QCMPPTPP | packagePlannedPermanent | 1 | Associated pkg is of type planned/permanent | Yes |
QCMPPTPT | packagePlannedTemporary | 1 | Associated pkg is of type planned/temporary | Yes |
QCMPPTUP | packageUnplannedPermanent | 1 | Associated pkg is of type unplanned/permanent | Yes |
QCMPPTUT | packageUnplannedTemporary | 1 | Associated pkg is of type unplanned/temporary | Yes |
The following fields are set by the exit in general.
LE-Language Variable Name | REXX Variable Name | Length | Purpose | Modifiable (Yes/No) |
---|---|---|---|---|
QCMPGO | proceed | 3 | Set to 'NO' to stop the process | Yes |
QCMPSHRT | shortMsg | 24 | Short error message text | Yes |
QCMPLONG | longMsg | 128 | Long error message text | Yes |
QCMPCHNG | 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 QCMP0100. They also show how to stop an overly generic component query 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:
-
HXCQCMP - COBOL
-
HXPQCMP - PL/I
-
HXRQCMP - REXX