DELETE LE command
Use the DELETE command (with the LE keyword) to delete Language Environment® (LE) runtime options that have previously been defined by the UPDATE command (with the LE keyword).
Subsections:
Environment
The following table lists the environments (DB/DC, DBCTL, and DCCTL) in which you can use the command and keywords.
| Command / Keywords | DB/DC | DBCTL | DCCTL |
|---|---|---|---|
| DELETE LE | X | X | X |
| LTERM | X | X | X |
| PGM | X | X | X |
| TRAN | X | X | X |
| USERID | X | X | X |
Syntax
Keywords
- LTERM()
- Specifies the 1 - 8 character name of the LTERMs that match the generic or wildcard parameter.
- PGM()
- Specifies the 1 - 8 character name of the programs that match the generic or wildcard parameter.
- TRAN()
- Specifies the 1 - 8 character name of the transactions that match the generic or wildcard parameter.
- USERID()
- Specifies the 1 - 8 character name of the user IDs that match the generic or wildcard parameter.
Usage notes
The delete can use filters on transaction code, LTERM name, user ID, or program name. Any combination of parameters can be used to qualify the application instance to which the runtime parameters are deleted. All matches found are deleted. The entry is logically deleted. The entry is then immediately available for reuse by the next UPDATE LE command. There is a small window of time where it is possible for an entry to be deleted and reused before LE uses it, that could cause LE to use the wrong set of parameters.
This command may be specified only through the Operations Manager API. The command syntax for this command is defined in XML and is available to automation programs that communicate with OM.
OM overrides the routing on the command and routes the command to all IMS systems in the IMSplex. The user-specified route list is ignored.
- If a filter is specified in the command for a particular resource it must match the resource filter defined in the entry. The resource in the DELETE LE command can be specified with wildcards as defined previously.
- A resource filter that is not specified on a DELETE LE command will match on any filter for the specific resource defined in the entry. A non-specified filter is treated as a wildcard. For instance if the LTERM filter is not specified on a DELETE LE command it will match on any LTERM resource defined in an entry, as if LTERM(*) was specified on the command.
If an existing set of LE runtime options are found for the specified TRAN, LTERM, USERID, or PGM, the existing parameter string is deleted. The string is deleted only when the specified filters are an exact match for the existing entry. The entry is logically deleted. The entry is available for reuse on the next UPDATE LE command.
The following keywords support a generic or wildcard character. A generic parameter is a 1 - 8 character alphanumeric name that includes one or more special characters and an asterisk or a percent sign. An asterisk can be replaced by a zero or more characters to create a valid resource name. A percent sign can be replaced by exactly one character to create a valid resource name.
Requirement: At least one of the resource filters (LTERM, PGM, TRAN, or USERID) must be specified on the UPDATE LE command.
Output fields
- Short label
- Contains the short label generated in the XML output.
- Keyword
- Identifies the keyword on the command that caused the field to be generated. N/A appears for output fields that are always returned.
- Meaning
- Provides a brief description of the output field.
| Short label | Keyword | Meaning |
|---|---|---|
| CC | N/A | Completion code for the line of output. Completion code is always returned. |
| LTRM | LTERM | LTERM name affected by the DELETE. |
| MBR | N/A | IMSplex member (IMS identifier) that built the output line. Member name is always returned. |
| PGM | PGM | Program name affected by the DELETE. |
| TRAN | TRAN | Transaction name affected by the DELETE. |
| UID | USERID | Userid affected by the DELETE. |
Return, reason, and completion codes
The following table includes the return and reason codes and a brief explanation of the codes. The return or reason code returned for the command might also indicate an error from a CSL request.
| Return code | Reason code | Meaning |
|---|---|---|
| X'00000000' | X'00000000' | The DELETE LE command completed successfully. |
| X'00000008' | X'00002008' | No keywords were specified on the command. At least one keyword is required. |
| X'00000008' | X'0000200C' | No resources found to delete. Either the entry was previously deleted or a keyword filter was typed incorrectly. |
| X'00000008' | X'00002014' | An invalid character was specified in the filter name. |
| X'00000010' | X'00004040' | The parameter override header has not been initialized. Retry the command after restart is complete. |
| X'00000014' | X'00005000' | Unable to get storage from IMODULE GETSTOR. |
| X'00000014' | X'00005010' | Unable to obtain latch. |
| X'00000014' | X'00005FFF' | Internal IMS Error - should not occur. |
The following table contains the completion code that can be returned on a DELETE LE command and the meaning of the code.
| Completion code | Meaning |
|---|---|
| 0 | The DELETE LE command completed successfully for the specified resource. |
Examples
The following are examples of the DELETE LE command:
Example 1 for DELETE LE command
| Entry# | TRAN | LTERM | USERID | PROGRAM | LERUNOPTS |
|---|---|---|---|---|---|
| 1 | PART | DFSSAM02 | aaaa | ||
| 2 | PART | BETTY | bbbb | ||
| 3 | PART | TERM1 | cccc | ||
| 4 | DFSSAM02 | dddd | |||
| 5 | PART | TERM1 | BARBARA | eeee | |
| 6 | PART | TERM1 | BOB | ffff | |
| 7 | TERM2 | BETTY | gggg | ||
| 8 | PART | TERM2 | iiii |
| Filters active on command | Resulting action |
|---|---|
| TRAN(PART) | Deletes entries #1, 2, 3, 5, 6, 8 |
| TRAN(PART) LTERM(TERM1) | Deletes entries #3, 5, 6 |
| LTERM(TERM2) USERID(BETTY) | Deletes entry #7 |
| TRAN(PART) LTERM(TERM1) USERID(BETTY) | Does not delete any entries |
| TRAN(PART) LTERM(TERM*) | Deletes entries #3, 5, 6, 8 |
| USERID(B*) | Deletes entries #2, 5, 6, 7 |
Example 2 for DELETE LE command
The following TSO SPOC and OM API input and output sets up the scenario for the DELETE LE command examples. The UPDATE commands are used to add entries to the table; the QUERY command shows the resulting entries.
UPD LE TRAN(IAPMDI27) USERID(USRT003) SET(LERUNOPTS(cccc))
UPD LE TRAN(IAPMDI27) USERID(USRID01) SET(LERUNOPTS(bbbb))
UPD LE TRAN(IAPMDI26) USERID(USRID01) SET(LERUNOPTS(aaaa))
QRY LE SHOW(ALL)MbrName CC Trancode Lterm Userid Program LERunOpts
SYS3 0 IAPMDI26 USRID01 AAAA
SYS3 0 IAPMDI27 USRID01 BBBB
SYS3 0 IAPMDI27 USRT003 CCCCCMD(UPD LE TRAN(IAPMDI27) USERID(USRT003) SET(LERUNOPTS(cccc)))
CMD(UPD LE TRAN(IAPMDI27) USERID(USRID01) SET(LERUNOPTS(bbbb)))
CMD(UPD LE TRAN(IAPMDI26) USERID(USRID01) SET(LERUNOPTS(aaaa)))
CMD(QRY LE SHOW(ALL))OM API output (for QUERY command):
<imsout>
<ctl>
<omname>OM1OM </omname>
<omvsn>1.1.0</omvsn>
<xmlvsn>1 </xmlvsn>
<statime>2002.163 18:10:14.974557</statime>
<stotime>2002.163 18:10:14.974985</stotime>
<staseq>B7C4CD747AC5DC85</staseq>
<stoseq>B7C4CD747AE09D25</stoseq>
<rqsttkn1>USRT002 10111014</rqsttkn1>
<rc>00000000</rc>
<rsn>00000000</rsn>
</ctl>
<cmd>
<master>SYS3 </master>
<userid>USRT002 </userid>
<verb>QRY </verb>
<kwd>LE </kwd>
<input>QRY LE SHOW(ALL) </input>
</cmd>
<cmdrsphdr>
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="A" key="1" scroll="NO" len="8"
dtype="CHAR" align="left" />
<hdr slbl="CC" llbl="CC" scope="LCL" sort="N" key="0" scroll="YES" len="4"
dtype="INT" align="right" />
<hdr slbl="TRAN" llbl="Trancode" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
<hdr slbl="LTRM" llbl="Lterm" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
<hdr slbl="UID" llbl="Userid" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
<hdr slbl="PGM" llbl="Program" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
<hdr slbl="PRM" llbl="LERunOpts" scope="LCL" sort="N" key="0" scroll="YES" len="*"
dtype="CHAR" align="left" />
</cmdrsphdr>
<cmdrspdata>
<rsp>MBR(SYS3 ) CC( 0) TRAN(IAPMDI26) LTRM( ) UID(USRID01 ) PGM( )
PRM(AAAA ) </rsp>
<rsp>MBR(SYS3 ) CC( 0) TRAN(IAPMDI27) LTRM( ) UID(USRID01 ) PGM( )
PRM(BBBB ) </rsp>
<rsp>MBR(SYS3 ) CC( 0) TRAN(IAPMDI27) LTRM( ) UID(USRT003 ) PGM( )
PRM(CCCC ) </rsp>
</cmdrspdata>
</imsout> Example 3 for DELETE LE command
DEL LE TRAN(IAPMDI27) USERID(USRID01)MbrName CC Trancode Lterm Userid Program
SYS3 0 IAPMDI27 USRID01 CMD(DEL LE TRAN(IAPMDI27) USERID(USRID01))<imsout>
<ctl>
<omname>OM1OM </omname>
<omvsn>1.1.0</omvsn>
<xmlvsn>1 </xmlvsn>
<statime>2002.163 18:12:21.932813</statime>
<stotime>2002.163 18:12:21.933334</stotime>
<staseq>B7C4CDED8E70D786</staseq>
<stoseq>B7C4CDED8E916246</stoseq>
<rqsttkn1>USRT002 10111221</rqsttkn1>
<rc>00000000</rc>
<rsn>00000000</rsn>
</ctl>
<cmd>
<master>SYS3 </master>
<userid>USRT002 </userid>
<verb>DEL </verb>
<kwd>LE </kwd>
<input>DEL LE TRAN(IAPMDI27) USERID(USRID01) </input>
</cmd>
<cmdrsphdr>
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="A" key="1" scroll="NO" len="8"
dtype="CHAR" align="left" />
<hdr slbl="CC" llbl="CC" scope="LCL" sort="N" key="0" scroll="YES" len="4"
dtype="INT" align="right" />
<hdr slbl="TRAN" llbl="Trancode" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
<hdr slbl="LTRM" llbl="Lterm" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR " align="left" />
<hdr slbl="UID" llbl="Userid" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR " align="left" />
<hdr slbl="PGM" llbl="Program" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
</cmdrsphdr>
<cmdrspdata>
<rsp>MBR(SYS3 ) CC( 0) TRAN(IAPMDI27) LTRM( ) UID(USRID01 ) PGM( )
</rsp>
</cmdrspdata>
</imsout>Explanation: This command specifies two filters- transaction and userid. A table entry is deleted if both of these filters are defined and match what was specified in the command. This command deletes one entry from the table. That entry is shown in the command output.
Example 4 for DELETE LE command
DEL LE USERID(USRT00%)MbrName CC Trancode Lterm Userid Program
SYS3 0 IAPMDI26 USRID01
SYS3 0 IAPMDI27 USRT003 CMD(DEL LE USERID(USRT00%))<imsout>
<ctl>
<omname>OM1OM </omname>
<omvsn>1.1.0</omvsn>
<xmlvsn>1 </xmlvsn>
<statime>2002.163 18:19:45.616468</statime>
<stotime>2002.163 18:19:45.616972</stotime>
<staseq>B7C4CF94AFA54304</staseq>
<stoseq>B7C4CF94AFC4C704</stoseq>
<rqsttkn1>USRT002 10111945</rqsttkn1>
<rc>00000000</rc>
<rsn>00000000</rsn>
</ctl>
<cmd>
<master>SYS3 </master>
<userid>USRT002 </userid>
<verb>DEL </verb>
<kwd>LE </kwd>
<input>DEL LE USERID(USRT00%) </input>
</cmd>
<cmdrsphdr>
<hdr slbl="MBR" llbl="MbrName" scope="LCL" sort="A" key="1" scroll="NO" len="8"
dtype="CHAR" align="left" />
<hdr slbl="CC" llbl="CC" scope="LCL" sort="N" key="0" scroll="YES" len="4"
dtype="INT" align="right" />
<hdr slbl="TRAN" llbl="Trancode" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
<hdr slbl="LTRM" llbl="Lterm" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR " align="left" />
<hdr slbl="UID" llbl="Userid" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR " align="left" />
<hdr slbl="PGM" llbl="Program" scope="LCL" sort="N" key="0" scroll="YES" len="8"
dtype="CHAR" align="left" />
</cmdrsphdr>
<cmdrspdata>
<rsp>MBR(SYS3 ) CC( 0) TRAN(IAPMDI26) LTRM( ) UID(USRID01 ) PGM( )
</rsp>
<rsp>MBR(SYS3 ) CC( 0) TRAN(IAPMDI27) LTRM( ) UID(USRT003 ) PGM( )
</rsp>
</cmdrspdata>
</imsout>Explanation: This command specifies only one filter, userid. A wildcard is used, so any table entry where the USERID filter matches the string will be deleted. The command output shows that both of the remaining table entries were deleted.
