PIPE AHELP SPECS or check out SL26-0018 CMS/TSO Pipelines: Author's Edition
pdb (Doug Breneman)
z/VM System Test   IBM   Endicott, NY



From:       "Frank M. Ramaekers" <framaek...@ailife.com>
To:         IBMVM@LISTSERV.UARK.EDU
Date:       10/25/2010 03:06 PM
Subject:    Re: Spool File Backup (SFB) BCHTIMER Files
Sent by:    The IBM z/VM Operating System <IBMVM@LISTSERV.UARK.EDU>



Where can I find the reference material for this aspect of the SPECS
stage?

     '| SPECS' ,                                 /* Just the size   */
              'PRINTONLY EOF' ,                  /* Prt only total  */
              't: 77.4 .' ,                      /* Just SIZE value */
              'n: 77.3 .' ,                      /* Just nnn value  */
              'm: 80.1 .' ,                      /* Just nnn value  */
              'IF m=="K" THEN' ,
              '   SET #0+=(n*1000)' ,            /* Multiply nK * 1K*/
              'ELSEIF m=="M" THEN' ,
              '   SET #0+=(n*1000000)' ,         /* Multiple nK * 1M*/
              'ELSE' ,
              'SET #0+=t' ,                      /* Add all numeric */
              'ENDIF' ,
              'EOF' ,                            /* Mark EOF        */
              'PRINT #0 1' ,                     /* Print total     */


Frank M. Ramaekers Jr.


-----Original Message-----
From: The IBM z/VM Operating System [mailto:ib...@listserv.uark.edu] On
Behalf Of Mike Walter
Sent: Friday, October 22, 2010 3:38 PM
To: IBMVM@LISTSERV.UARK.EDU
Subject: Re: Spool File Backup (SFB) BCHTIMER Files

Excellent point, Harry!  It had only been an example, but even examples
should be reliable.

I'm pretty sure the following should work, and be as reliable as the 4K
block total supplied by 'CP QUERY queue EXP'

Mike Walter
Aon Hewitt
The opinions expressed herein are mine alone, not my employer's.

/* Prolog; See Epilog for additional information ********************
 * Exec Name     - SPOOLBLK EXEC                                    *
 * Unit Support  -                                                  *
 * Status        - Version 1, Release 1.2                           *
 ********************************************************************/

   address 'COMMAND'
   parse source xos xct xfn xft xfm xcmd xenvir .
   parse upper arg parms 1 operands '(' options ')' parmrest

   hi='1DE8'x                               /* 3270 Hilite Char     */
   lo='1D60'x                               /* 3270 Default Char    */
   Signal ON Syntax
   Signal ON NoValue
/* Signal ON ERROR */
   If parms='?' then Signal Explain

   parse upper arg queue .

   If queue='' then queue='ALL'
   SumTotal=0

   If queue='' | queue='ALL' then
      Do
        Call SumQueue 'READER'
        Call SumQueue 'PRINTER'
        Call SumQueue 'PUNCH'
      End
   Else Call SumQueue queue

   say queue 'queue 4K SPOOL block total=' SumTotal
Call Exit rc


/********************************************************************/
/*                   Sub-Routines below this point                  */
/********************************************************************/

Exit:
   parse arg exitrc todo
   If todo='?' then say 'For more help, enter:' xfn '?'
   If verify(exitrc,'-0123456789')>0 then Exit 999999
Exit exitrc


Error:
   etxt.1='+++ "ERROR:" error rtn entered in:' xfn xft xfm', rc='rc
   etxt.2='+++ from line:' sigl', which reads:'
   etxt.3='+++'sourceline(sigl)
   cmdline=strip(sourceline(sigl),'B')
   If symbol(value('CMDLINE'))='VAR'      /* e.g cmd='CP FAIL'; cmd */
      then cmdline=value( value('CMDLINE') )
      else cmdline=value('CMDLINE')       /* e.g.    'CP FAIL'      */
   etxt.4='+++ which translates to:' cmdline
   etxt.0=4
  'PIPE STEM etxt. | CONS'
Call Exit 20


Syntax:
   etxt.1='+++ "SYNTAX:" error rtn entered in:' xfn xft xfm', rc='rc
   etxt.2='+++ from line:' sigl', which reads:'
   etxt.3='+++'sourceline(sigl)
   cmdline=strip(sourceline(sigl),'B')
   cmdline=value('CMDLINE')
   etxt.4='+++ which translates to:' cmdline
   etxt.0=4
  'PIPE STEM etxt. | CONS'
Call Exit 20


NoValue:
   etxt.1='+++ "NoValue:" error rtn entered in:' xfn xft xfm', rc='rc
   etxt.2='+++ from line:' sigl', which reads:'
   etxt.3='+++'sourceline(sigl)
   etxt.4='+++ Variable with no value is:' condition('Description')
   etxt.0=4
  'PIPE STEM etxt. | CONS'
Call Exit 24


SumQueue:
   parse arg thisqueue .

  'PIPE (NAME SumQueue)' ,
     '| CP QUERY' thisqueue 'EXP' ,
     '| DROP 1' ,                                /* Drop title line */
     '| SPECS' ,                                 /* Just the size   */
              'PRINTONLY EOF' ,                  /* Prt only total  */
              't: 77.4 .' ,                      /* Just SIZE value */
              'n: 77.3 .' ,                      /* Just nnn value  */
              'm: 80.1 .' ,                      /* Just nnn value  */
              'IF m=="K" THEN' ,
              '   SET #0+=(n*1000)' ,            /* Multiply nK * 1K*/
              'ELSEIF m=="M" THEN' ,
              '   SET #0+=(n*1000000)' ,         /* Multiple nK * 1M*/
              'ELSE' ,
              'SET #0+=t' ,                      /* Add all numeric */
              'ENDIF' ,
              'EOF' ,                            /* Mark EOF        */
              'PRINT #0 1' ,                     /* Print total     */
     '| VAR queuesum'
   SumTotal=SumTotal+queuesum
Return


Explain:
  'PIPE (NAME Explain)' ,
     '| <' xfn xft xfm ,
     '| INSIDE /ExplainBegin:/ /ExplainEnd:/' ,
     '| PREFACE STRLITERAL /'xfn xft xfm 'help.../' ,
     '| CONSOLE'
   Call Exit 0
/*
ExplainBegin:

SPOOLBLK total count of the number of 4K blocks reported allocated by
the
command: CP Query queue EXP



            +----ALL--------+
>>-SPOOLBLK-+---------------+-----------------------------------------><
            +--+-Printer-+--+
            +  +-PRT-----+  +
            +--+-PUnch---+--+
            +  +-PCH-----+  +
            +--+-Reader--+--+
               +-RDR-----+


Usage note:

"ALL" is not a specific queue name.  ALL (Reader, Printer, and Punch)
4K block allocations will be totaled and reported when requested.

Not every 4K block may be completely full.

ExplainEnd:
*/

/* Epilog ***********************************************************
 * Function      - Display count of 4K SPOOL blocks                 *
 * Component of  -                                                  *
 * Command format-                                                  *
 * Called by     -                                                  *
 * Dependencies  - VM/SP 3 or higher.                               *
 *               - Privclass 'D' to report on all system files.     *
 * Program Lang. - CMS REXX                                         *
 * Date Written  - 20101022                                         *
 * Author        - Michael R. Walter, Aon Hewitt                    *
 * Changed | By  | Description of Change                            *
 * --------+-----+------------------------------------------------- *
 * yyyymmdd  iii -                                                  *
 *                                                                  *
 ********************************************************************/




"A. Harry Williams" <ha...@vm.marist.edu>

Sent by: "The IBM z/VM Operating System" <IBMVM@LISTSERV.UARK.EDU>
10/22/2010 02:15 PM
Please respond to
"The IBM z/VM Operating System" <IBMVM@LISTSERV.UARK.EDU>



To
IBMVM@LISTSERV.UARK.EDU
cc

Subject
Re: Spool File Backup (SFB) BCHTIMER Files






On Wed, 20 Oct 2010 11:30:05 -0500 Mike Walter said:
>You can determine the number of 4K pages that each spool file command
is
>currently using from a Privclass "D" userid with the commands:
>
>CP QUERY RDR EXP
>CP QUERY PRT EXP
>CP QUERY PUN EXP
>
>The 'SIZE' column has the answers.  This should get you started.
>
> 'PIPE (NAME SumRdr)' ,
>    '| CP QUERY RDR EXP' ,
>    '| DROP 1' ,                           /* Drop title line */
>    '| SPECS' ,                            /* Just the size   */
>    '         PRINTONLY EOF' ,             /* Prt only total  */
>    '         a: 77.4 .' ,                 /* Just SIZE col.  */
>    '         SET #0+=a' ,                 /* Add new value   */
>    '         EOF' ,                       /* Mark EOF        */
>    '         PRINT #0 1' ,                /* Print total     */
>    '| CONSOLE'


Make sure to read the HELP file for CPQUERY READER, especially
the Note section of Response #3.  If you have large spool files,
the size gets represented by K or M.  I'm sure there are many ways
to deal with them , but I usually do a simple multistream pipe to
split them into different streams and expand them.


>
>Mike Walter
/ahw






The information contained in this e-mail and any accompanying documents
may contain information that is confidential or otherwise protected from
disclosure. If you are not the intended recipient of this message, or if
this message has been addressed to you in error, please immediately
alert the sender by reply e-mail and then delete this message, including
any attachments. Any dissemination, distribution or other use of the
contents of this message by anyone other than the intended recipient is
strictly prohibited. All messages sent to and from this e-mail address
may be monitored as permitted by applicable law and regulations to
ensure compliance with our internal policies and to protect our
business. E-mails are not secure and cannot be guaranteed to be error
free as they can be intercepted, amended, lost or destroyed, or contain
viruses. You are deemed to have accepted these risks if you communicate
with us by e-mail.

_____________________________________________________

This message contains information which is privileged and confidential and
is solely for the use of the

intended recipient. If you are not the intended recipient, be aware that
any review, disclosure,

copying, distribution, or use of the contents of this message is strictly
prohibited. If you have

received this in error, please destroy it immediately and notify us at
privacy...@ailife.com.

Reply via email to