On 21 Jul 2007 06:10:13 -0700, in bit.listserv.ibm-main you wrote:

>The question how SMF records can be accessed with any generality is being 
>fudged.
>
>One can now access some of them some of the time in (modern) COBOL, which 
>does support the data type FUNCTION POINTER.
With the ability to use the construct of MOVE field-name
(relative-position, desired-length) to Group-Field, I was able to
handle the type 14, 30 and 64 records easily.  Only 1 byte binary
fields, bit switches and the need for separate DD statements for VB
and VBS files were pains.  I could code 
MOVE SMF-RECORD (Accounting-Field-offset, Accounting-field-length) TO
WORK-ACCOUNTING-FIELD.
>
>COBOL does not, however, support self-defining records, illustrated by the 
>trivial PL/I construct
>
>declare 1 SDAT based(SDATp),  /* self-defining array */
>  2 sdls signed binary fixed(31,0),  /* low element subscript */
>  2 sdhs signed binary fixed(31,0),  /* high element subscript */
>  2 sdek signed binary fixed(31,0),  /* single-element byte count */
>  2 sdea(0: refer(SDDAT.sdls):1 refer(SDAT.sdhs)) character(1 
>refer(SDAT.sdek)) ;
>
>which can be used as a sort of DSECT for any character-string array.  Such 
>self-defining records and subrecords abound in SMF output.  (COBOL types who 
>may suppose that COBOL's occurs-depending is a functioonal equivalent of 
>PL/I's refer are warned that it is not.)
>
>SMF records can be accessed and manipulated using HLASM  routines, and this 
>can be done in PL/I too.  It cannot, in general, be done in COBOL or indeed 
>in C/C++.
>
>SMF-accessing routines that are to see repeated, significant, heavy use 
>should therefore be written in assembly language.  Those written to answer 
>particular questions should be written in PL/I instead, and if they are to 
>be written in a statement-level procedural language they must be written in 
>PL/I.
>
>It is, I think, worth noting explicitly that Ed Gould, alone among 
>contributors to this thread, did identify this problem.
>
>John Gilmore
>Ashland, MA 01721-1817
>USA
>
Clark Morris, semi-retired MVS systems programming (was only in
applications on z/OS)

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to