The ACCTINFO service retrieves
the information about an SCLM-controlled member into ISPF variables
and tables. The information is retrieved from the accounting file
defined in the project definition for the group specified to the service.
The service can search up the hierarchy for the member, search a group
for the next matching member, or retrieve the information for a specific
member. See ISPF variables for a list of
the variables updated by this service.
Command invocation format
>>-FLMCMD--ACCTINFO,project--,-+---------+--,group--,type------->
'-prj_def-'
>--,member--,-+-----------------+--,-+---------------+---------->
'-user_info_table-' '-include_table-'
.-SEARCH--.
>--,-+-------------------+--,-+--------------+--,-+---------+--->
'-change_code_table-' '-ada_cu_table-' +-FORWARD-+
'-MATCH---'
>--,-+---------+-----------------------------------------------><
'-dd_msgs-'
Call invocation format
>>-lastrc--:=--FLMLNK('ACCTINFO--',sclm_id,--,group--,type------>
>--,member--,user_info_table--,include_table-------------------->
.-SEARCH--.
>--,change_code_table--,ada_cu_table--,-+---------+------------->
+-FORWARD-+
'-MATCH---'
>--,$msg_array);-----------------------------------------------><
ISPF interface panel
Figure 1. ACCTINFO Service panel Menu SCLM Utilities Help
──────────────────────────────────────────────────────────────────────────────
SCLM FLMCMD ACCTINFO Service - Entry Panel
More: +
SCLM Library:
Project . . . SCLMTEST
Alternate . .
Group . . . . DEV1
Type . . . . SOURCE
Member . . .
Names of open tables for service output:
User Info . . . . . . .
Includes . . . . . . .
Change Codes . . . . .
Compilation Units . . .
Search type . . 1. Search
2. Forward
3. Match
Command ===>
F1=HELP F2= F3=END F4=DATASETS F5=FIND F6=CHANGE
F9=SWAP F10=LEFT F11=RIGHT F12=SUBMIT
Parameters
- project
- The project name. The maximum parameter length is 8 characters.
This parameter is used for FLMCMD only.
- prj_def
- The project definition name. It defaults to the project name.
The maximum parameter length is 8 characters. This parameter is used
for FLMCMD only.
- sclm_id
- An SCLM ID associated with a given project and project definition.
The INIT service generates the SCLM ID. The maximum parameter length
is 8 characters. This parameter is used for FLMLNK only.
- group
- The group associated with the accounting record. The maximum parameter
length is 8 characters.
- type
- The type associated with the accounting record. The maximum parameter
length is 8 characters.
- member
- The member under SCLM control. The maximum parameter length is
8 characters.
- user_info_table
- The name of the ISPF table to contain the user entries from the
account record. The table must be open before calling the ACCTINFO
service. A TBADD will be performed for each user entry in the account
record. The maximum parameter length is 8 characters. The following
ISPF variables must be used in the table definition in order to have
their value stored in the table:
- ZSUNUM - the user entry number
- ZSUENTRY - the user entry data
- include_table
- The name of the ISPF table to contain the includes from the account
record. The table must be open before calling the ACCTINFO service.
A TBADD will be performed for each include in the account record.
The maximum parameter length is 8 characters. The following ISPF variables
must be used in the table definition in order to have their value
stored in the table:
- ZSIMBR - the include member name
- ZSIISET - the include set name
- change_code_table
- The name of the ISPF table to contain the change codes from the
account record. The table must be open before calling the ACCTINFO
service. A TBADD will be performed for each change code in the account
record. The maximum parameter length is 8 characters. The following
ISPF variables must be used in the table definition in order to have
their value stored in the table:
- ZSCCODE - the change code
- ZSCDATE - the change code date
- ZSCDAT4 - the change code date in 4-character date format
- ZSCTIME - the change code time
- ada_cu_table
- The name of the ISPF table to contain the ADA compilation units
from the account record. The table must be open before calling the
ACCTINFO service. A TBADD will be performed for each ADA compilation
unit in the account record. The maximum parameter length is 8 characters.
The following ISPF variables must be used in the table definition
in order to have their value stored in the table:
- ZSDNAME- the ADA compilation unit name
- ZSDTYPE - the ADA compilation unit type
- SEARCH|FORWARD|MATCH
- SEARCH indicates that SCLM is to look up the hierarchy to find
the accounting record if it does not exist at the specified group.
This is the default.
MATCH indicates to check only the specified
group for the accounting record.
FORWARD indicates that if
the member and type names do not exactly match an accounting record
the information from the next accounting record in the group is to
be returned.
To retrieve all of the accounting records within
a group use FORWARD and start with the member and type names set to
all blanks. If an accounting record is found increment the last character
of the member name before calling the ACCTINFO service again. Repeat
this process until the service indicates that no record was found.
The
maximum parameter length is 8 characters.
- dd_msgs
- The ddname indicating the destination of the messages generated
by the ACCTINFO service. If you specify a blank ddname, SCLM routes
the ACCTINFO messages to the default output device, such as your terminal.
Otherwise, before you call the ACCTINFO service, you must allocate
the ddname. The following attributes should be used: RECFM=F,
LRECL=80, BLKSIZE=80. The maximum parameter length is 8 characters.
This parameter is used for FLMCMD only.
- $msg_array
- An output parameter pointing to the message array. See Pointer parameter descriptions for more information about
$msg_array. This parameter is used for FLMLNK only.
Return codes
Additional special services
messages are written to the FLMMSGS ddname. See SCLM service messages for more information.
Other
return codes might be produced by the FLMCMD or the FLMLNK processor.
See SCLM service return codes for more information.
Possible
return codes are:
- 0
- Normal completion. An account record exactly matching the specified
criteria was found and the information was stored successfully.
- 8
- Error completion. No account record was found for the specified
member.
- If FORWARD was specified, then there are no accounting records
for the group which match or follow the specified type and member
name.
- If MATCH was specified, then there is not an account record with
the specified group, type and member name.
- If SEARCH was specified, then there are no matching account records
found when searching up the hierarchy starting from the specified
group.
- 12
- Error completion. Refer to the messages for more information.
Example of command invocation format
This
service command gets the accounting information from PROJ1.DEV1.SOURCE
member COB. The MATCH keyword indicates that the accounting record
must be for the COB member of the requested library.
parms="PROJ1,PROJ1,DEV1,SOURCE,"
parms=parms||"COB,,,,,MATCH"
address ispexec 'select cmd(flmcmd acctinfo,'parms')'
This
REXX exec is an ISPF edit macro that you can execute from within an
SCLM edit session. The edit macro determines the member and data set
name that is being edited, which is then passed to the ACCTINFO service.
The exec then writes the contents of several ACCTINFO variables to
the screen.
/* REXX */
Address isredit 'MACRO'
Address isredit '(MEMBER) = MEMBER'
Address isredit '(DS) = DATASET'
Parse Var ds project'.'group'.'type
'FLMCMD ACCTINFO,'project',,'group','type','member
Say 'acctinfo rc = ' rc
Say 'member name = ' zsambr
Say 'language = ' zsalang
Say 'change date = ' zsaldat4
Example of call invocation format
This
service call retrieves the accounting information from the project
represented by the sclm_id, the group, type, and member. inc_table
is the name of a previously opened table, the ACCTINFO service provides
the names of included members and their include set names. The FORWARD
keyword means that if an exact match is not found in the given library,
the next member in the member list is returned.
lastrc := FLMLNK('ACCTINFO', sclm_id, group, pds_type, srch_mem,
' ', inc_tabl, ' ', ' ', 'FORWARD ', $msg_array);