z/OS ISPF Services Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


LMMFIND—find a library member

z/OS ISPF Services Guide
SC19-3626-00

The LMMFIND service finds a specified member of an ISPF library or partitioned data set associated with a given data ID. You can also use LMMFIND to return member statistics to you. If the data ID represents a concatenated set of ISPF libraries, LMMFIND finds the first occurrence of the member in the set of libraries.

The LMINIT and LMOPEN services must be completed before LMMFIND can be used.

Command invocation format

Read syntax diagramSkip visual syntax diagram
>>-ISPEXEC--LMMFIND--DATAID(data-id)--MEMBER(member-name)------->

>--+------+--+------------------+--+------------------+--------->
   '-LOCK-'  '-LRECL(lrecl-var)-'  '-RECFM(recfm-var)-'   

>--+------------------+--+------------------+--+-------+-------><
   '-GROUP(group-var)-'  |        .-NO--.   |  '-NOLLA-'   
                         '-STATS(-+-YES-+-)-'              

Call invocation format

Read syntax diagramSkip visual syntax diagram
>>-CALL--ISPLINK--('LMMFINDb'--,data-id--,member-name----------->

>--,-+-'LOCKbbbb'-+--,-+-lrecl-var-+--,-+-recfm-var-+----------->
     '-'b'--------'    '-'b'-------'    '-'b'-------'   

                      .-'NObbbbbb'-.                        
>--,-+-group-var-+--,-+-'b'--------+--,-+-'NOLLAbbb'-+-);------><
     '-'b'-------'    '-'YESbbbbb'-'    '-'b'--------'      

or

Read syntax diagramSkip visual syntax diagram
>>-CALL--ISPEXEC--(buf-len,--buffer);--------------------------><

Parameters

data-id
The data ID associated with the data set to be searched. The data ID is generated by the LMINIT service. The maximum length of this parameter is 8 characters.
member-name
The name of the member to be found. The maximum length of this parameter is 8 characters.
LOCK
The LOCK parameter is no longer used since the removal of LMF from the ISPF product, but is left in for compatibility. If LOCK is specified, the LMMFIND service will fail with return code 12. If you want to be able to specify YES and have LMMFIND ignore the value, change the value of the FAIL_ON_LMF_LOCK keyword in the ISPF Configuration Table to NO.

The LMMFIND service is being used to find a member in an LMF-controlled ISPF library to either update it or prevent others from updating it. This parameter is valid only if the data set is an ISPF library or a concatenated set of ISPF libraries. The library management facility control data set must have been allocated under the ddname ISRCFIL. For more information about the LOCK parameter, refer to ISPF Library Management Facility.

lrecl-var
The name of the variable into which the data record length (or, if the record format is of variable length, the maximum data record length) is to be stored. The maximum length of this parameter is 8 characters.
recfm-var
The name of the variable into which the record format code is to be stored. An example is FB for fixed-length block data. The maximum length of this parameter is 8 characters.
group-var
The name of the variable that will store the name of the group that contains the found member. This variable contains the group name after the service is executed only if the data is an ISPF library or a set of concatenated ISPF libraries and LMINIT is used with ISPF name parameters; otherwise, the variable is set to null. The maximum length of this parameter is 8 characters.
YES|NO

Whether statistics for the member are to be returned to the dialog invoking the service. If you specify NO, no statistics are returned. If you specify YES and the data ID represents a data set that has unformatted records (RECFM=U), the statistics are returned in these dialog variables:

ZLAC
A 2-character field containing the authorization code of the member.
ZLALIAS
An 8-character field containing the name of the real member that this member is an alias of. If the member is not an alias this field is blank.
ZLAMODE
A 3-character field containing the AMODE of the member.
ZLATTR
A 20-character field containing the load module attributes. The attributes are 2-character strings separated by blanks. These strings can appear in the attribute string:
NX
Not executable
OL
Only Loadable
OV
Overlay
RF
Refreshable
RN
Reentrant
RU
Reusable
SC
Scatter Load
TS
Test
ZLLIB
Position in concatenated data set sequence; a number from 1 to 16.
ZLRMODE
A 3-character field containing the RMODE of the member.
ZLSIZE
An 8-character field containing the load module size in hex.
ZLTTR
A 6-character field containing the TTR of the member.
ZLSSI
An 8-character field containing the SSI information for a load module.

For other record formats (F or V), the statistics are returned in these dialog variables:

ZLC4DATE
Creation date in 4-character year format; a character value shown in your national format. If no value exists for this variable, ISPF sets the value to blanks.
ZLCDATE
Creation date; a character value shown in your national format. If no value exists for this variable, ISPF sets the value to blanks.
ZLCNORC
Current number of records; a number from 0 to 65 535. If no value exists for this variable, ISPF sets the value to blanks.
ZLINORC
Beginning number of records; a number from 0 to 65 535.
ZLLIB
Position in concatenated data set sequence; a number from 1 to 16.
ZLM4DATE
Last change date in 4-character year format; a character value shown in your national format. If no value exists for this variable, ISPF sets the value to blanks.
ZLMDATE
Last change date; a character value shown in your national format. If no value exists for this variable, ISPF sets the value to blanks.
ZLMNORC
Number of changed records; a number from 0 to 65 535.
ZLMOD
Modification level; a number from 0 to 99.
ZLMSEC
Seconds value of the last change time. This is a two character field.
ZLMTIME
Last change time; a character value in the format hh:mm.
ZLUSER
User ID of last user to change the given member; an alphanumeric field with a maximum length of 7 characters.
ZLVERS
Version number; a number from 1 to 99. If no value exists for this variable, ISPF sets the value to blanks.
ZSCLM
Indicates whether the member was last modified by SCLM or ISPF. A value of Y indicates the last update was made through SCLM. A value of N indicates that the last update was made through ISPF.
ZLEXT
Indicates whether extended PDS statistics are available. Possible values are blanks or YES, and the length is 3.

If ZLEXT has a value of YES, then these variables contain values in the range 0 to 2147483647 for a length of 10; otherwise they are blank:

ZLCNORCE
Current number of records.
ZLINORCE
Beginning number of records.
ZLMNORCE
Number of changed records.

The preceding variables are stored in the function pool and therefore become immediately available to command invocations. You cannot use the VGET service to retrieve these variables, since VGET accesses the shared and profile pools.

For an MVS™ partitioned data set, if the statistics are not stored in the data set directory in the same format used by Edit, only ZLLIB is set with the position in the concatenation.

NOLLA
If LLA is used to manage a cached directory entry, specify this keyword to ensure that the cached entry is not used.
buf-len
A fullword fixed binary integer containing the length of the buffer parameter.
buffer
A buffer containing the name of the service and its parameters in the same form as they would appear in an ISPEXEC invocation for a command invocation.

Return codes

These return codes are possible:
 0
Normal completion.
 8
Member not found.
10
No data set is associated with the given data ID; that is, LMINIT has not been completed.
12
One of these:
  • Data set is not open or is not open for input.
  • A parameter value is invalid.
  • Data set is not partitioned.
  • LOCK parameter was specified.
16
A truncation or translation error occurred in accessing dialog variables.
20
Severe error; unable to continue.

Example

This example:
  • Invokes the LMMFIND service to find member MYPROG in the data set associated with the data ID stored in DDVAR.
  • Stores the record length in variable LENVAR, the record format code in FORMVAR, and the name of the group that contains member MYPROG in GRPVAR.

Command invocation

ISPEXEC LMMFIND DATAID(&DDVAR) MEMBER(MYPROG)         +
                LRECL(LENVAR)  RECFM(FORMVAR)         +
                GROUP(GRPVAR)

Call invocation

CALL ISPLINK ('LMMFIND ',DDVAR,'MYPROG ',' ',
              'LENVAR ','FORMVAR ','GRPVAR ');
OR
 
Set the program variable BUFFER to contain:
BUFFER = 'LMMFIND DATAID(&DDVAR) MEMBER(MYPROG)
                 LRECL(LENVAR)  RECFM(FORMVAR)
                 GROUP(GRPVAR)';
 
Set the program variable BUFLEN to the length of the variable BUFFER. Enter the command:
CALL ISPEXEC (BUFLEN, BUFFER);

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014