The API Corner: Just How Many Spool Files Do You Have?

APIs
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

The QSPSPLI API can tell you.

 

Have you ever wondered how many spool files are on your system (or more accurately, on a given auxiliary storage pool which, for many companies, is the same thing)? What about the number of spool files a particular user currently owns? If so, don't feel alone. In fact, there have been sufficient requests for this type of management data that IBM has provided the Retrieve Spool Information (QSPSPLI) API to provide you with quick access to this information. The QSPSPLI API, documented here, is standard with 7.1 of the i operating system and is also available on 6.1 with PTFs SI33959 and SI34013.

 

The QSPSPLI API follows standard system conventions for retrieving information—well, other than not having an 'R' in its name (such as with the APIs QSPROUTQ and QSPRWTRI to retrieve output queue and writer information, respectively) to indicate that the API provides a retrieve function. The first three parameters, respectively, identify the receiver variable used to return information in, the length of the receiver variable, and the format of the information to be returned. The next two parameters identify the auxiliary storage pool (ASP) to be used and the name of the user to be used when gathering the spool information. Related to the fifth parameter, user name, in addition to a specific user profile name, the special values *ALL and *CURRENT are also supported. The last parameter is the API error code.

 

The following sample program, utilizing the QSPSPLI API, demonstrates displaying the name of the ASP searched, the number of spooled files owned by the current caller of the program, and the total number of spool files in the ASP.

 

dRtvSplInfo       pr                  extpgm('QSPSPLI')      

d Receiver                   65535    options(*varsize)      

d LenRcvr                       10i 0 const                   

d Format                         8    const                  

d ASP                           10    const                  

d UsrName                       10    const                  

d ErrCde                              likeds(QUSEC)    

dReceiver         ds                  likeds(QSPI010000)           

 /copy qsysinc/qrpglesrc,qspspli                             

 /copy qsysinc/qrpglesrc,qusec                                       

 /free                                                         

  QUSBPrv = 0;                                              

  RtvSplInfo(Receiver :%size(Receiver) :'SPLI0100'

             :'*SYSBAS' :'*CURRENT' :QUSEC);

  dsply ('For ' + %trimr(Receiver.QSPASPG) + ':');

  dsply (%trimr(Receiver.QSPUN01) + ' has ' +

         %char(Receiver.QSPNOSF) + ' spool files');

                                                  

  RtvSplInfo(Receiver :%size(Receiver) :'SPLI0100'

             :'*SYSBAS' :'*ALL' :QUSEC);                         

  dsply ('All users have ' + %char(Receiver.QSPNOSF) + 

         ' spool files');                                  

  *inlr = *on;                                             

  return;           

 /end-free   

 

To compile the program, assuming that your source member is named GETSPLINFO and can be found in source file *LIBL/QRPGLESRC, you might use the command:

 

CRTBNDRPG GETSPLINFO

 

Calling the GETSPLINFO program will then display the ASP searched (the system ASP) along with the current user and system spool file totals. Pretty simple! If you need a refresher on how the sample program works, I recommend reviewing my previous articles concerning Retrieve APIs starting with "Retrieving Information, Part I."

 

As usual, if you have any API questions, send them to me at This email address is being protected from spambots. You need JavaScript enabled to view it.. I'll see what I can do about answering your burning questions in future columns.

as/400, os/400, iseries, system i, i5/os, ibm i, power systems, 6.1, 7.1, V7, V6R1

Bruce Vining

Bruce Vining is president and co-founder of Bruce Vining Services, LLC, a firm providing contract programming and consulting services to the System i community. He began his career in 1979 as an IBM Systems Engineer in St. Louis, Missouri, and then transferred to Rochester, Minnesota, in 1985, where he continues to reside. From 1992 until leaving IBM in 2007, Bruce was a member of the System Design Control Group responsible for OS/400 and i5/OS areas such as System APIs, Globalization, and Software Serviceability. He is also the designer of Control Language for Files (CLF).A frequent speaker and writer, Bruce can be reached at This email address is being protected from spambots. You need JavaScript enabled to view it.. 


MC Press books written by Bruce Vining available now on the MC Press Bookstore.

IBM System i APIs at Work IBM System i APIs at Work
Leverage the power of APIs with this definitive resource.
List Price $89.95

Now On Sale

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

Book Reviews

Resource Center

  •  

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: