$FiStatL

From m204wiki
Revision as of 17:01, 13 September 2016 by JAL (talk | contribs) (add subhead)
Jump to navigation Jump to search

Retrieve set of files' statistics into list

Note: Many $functions have been deprecated in favor of Object Oriented methods. There is no OO equivalent for the $FiStatL function.

This function allows retrieval of statistics for a set of files into a $list. $FiStatL accepts three arguments and returns a numeric error code.

Syntax

%result = $FiStatL(list_identifier, stat_list, criterion)

Syntax terms

%result A positive number that is the milliseconds since the Online was brought up, or it is a negative return code.
list_identifier The identifier of the $list that is to receive the results. The current contents of the $list are deleted and replaced with the requested statistics. The format of each $list item is:
Byte 1-10 Blank padded file name
Byte 11-12 Binary file number
Byte 13- Returned statistics
stat_list A string of blank-delimited words indicating the statistics to be returned. The length of each returned statistic is always a multiple of 4 bytes. This facilitates the use of $StatLD with the returned $list. For more information on available statistics, see the SirMon wiki pages.
criterion A selection criterion that indicates which files, of all those that are currently open (by some user or by some subsystem), are to be included in the output $list. The following criteria are allowed:
FILE=fid Include only files with filenames matching fid (wildcards allowed).
SUBSYS=subsysid include only files opened by subsystem subsysid. Wildcards are allowed.
USER=usernum include only files opened by user usernum.
Actually, all files are always included in the output $list, but the excluded files have the high order bit of their file numbers turned on. This tells $StatLD to exclude the files from the difference $list.

Return codes

-3 - CCATEMP is full -5 - Required parameter not specified -6 - Invalid $list identifier -12 - Invalid name in stat_list -13 - STAT not linked in -16 - Invalid selection criterion

Example

The following program displays some statistics for all files.

B %DATA IS STRING LEN 255 %LIST = $ListNew %DATA = $FiStatL(%LIST, 'DKIO CFRCONF CFRQUEU') IF %DATA < 0 THEN PRINT '$FISTATL ERROR... RC = ' WITH %DATA STOP END IF FOR %I FROM 1 TO $ListCnt(%LIST) %DATA = $ListInf(%LIST, %I) PRINT 'FILENAME = ' WITH $SUBSTR(%DATA, 1, 10) PRINT 'DKIO = ' WITH $UNBIN( $SUBSTR(%DATA, 13, 4) ) PRINT 'CFRCONF = ' WITH $UNBIN( $SUBSTR(%DATA, 17, 4) ) PRINT 'CFRQUEU = ' WITH $UNBIN( $SUBSTR(%DATA, 21, 4) ) PRINT END FOR END