SQLRPGLE Shorts – How to Call QCMDEXC with IBM i SQL Surely every RPG programmer is familiar with the QCMDEXC *API for exciting any IBM i Command from within any HLL (High Level Language) program. What is QCMDEXC? The Execute Command (QCMDEXC) API runs a single command. It is used to run a command from

Read More

wow – that has got to be the longest url yet   😉

 

QSPGETF AND QSPPUTF APIs AND COMMANDS

IBM Knowledgebase item 8011926 describes two APIs that are undocumented in the AS/400 manuals. The two APIs, Get Spooled File (QSPGETF) and Put Spooled File (QSPPUTF), copy spool files to and restore them from physical files, respectively. The advantage of QSPGETF and QSPPUTF over the well-documented Copy Spooled File command (CPYSPLF) is that the APIs are able to copy Advanced Function Printing Data Stream (AFPDS) and Intelligent Printer Data Stream (IPDS) spool files, whereas CPYSPLF cannot.

You can call the QSPGETF and QSPPUTF APIs directly, or you can call them using command wrappers over the APIs.

  • Calling the APIs Directly

The QSPGETF API call below saves spool file QPRINT to database file SPOOLDB in USER1LIB library, member MBR1, where the spool file number is 1 and the spool file job is 010160/user1/dsp03:

CALL PGM(QSYS/QSPGETF) PARM(‘QPRINT ‘ ‘SPOOLDB USER1LIB ‘ ‘DSP03 USER1 010160′ X’0001’ ‘MBR1 ‘)

...
Read More

Find the IBM i System Name Three Ways Let’s look at three techniques to find the IBM i System Name A super easy technique using SQL in an SQLRPGLE Program Just as easy in a CLLE prograam Calling the IBM i *API to get the information, an RPGLE program Let’s dive straight in: (1) Get

Read More

For any RPG programmer, writing RPGLE code (sometimes called RPG4) is fun. But, upgrading older RPG programs to the latest free form program layout is even more fun! The joy experienced when the Project is to “Modernize RPG” always puts an inane grin on my face. So lets look at a simple example: Get Sysname

Read More