RPG xTools allows you to load an entire IFS file into memory (work field, array or data structure) in one operation. You no longer need to learn a complex set of operations in the C programming language. Simply call the ifsLoadFile procedure to open and read an entire file from the IFS into a user-supplied return variable. You can create a file on IFS using the CRTASCIIFILE procedure. CRTASCIIFILE allows you to create an empty ASCII text file on the IFS. You can retrieve the count of the number of records or number of bytes in an IFS file, create a list of files in a folder/directory on the IFS, retrieve the file creation date/time (not readily available through normal OS/400 means) or change the attributes of any IFS file
Have you ever tried to add a library to the library list while in RPG IV? How about sending a program message or retrieving a system value? What about creating a user space? There are IBM-supplied APIs that do these things for you, but using them is complicated.
RPG xTools solves this problem by allowing you to easily do many of the tasks normally performed by complicated APIs.
To add a library to the library list, do this:
Callp AddLible('MYLIB')
To convert an 8-digit zoned numeric field to a true date field, do this:
Eval OrderDate = DecToDate(ORDDTE)
To retrieve a system value, do this:
Eval dateFormat = GetSysVal('QDATFMT')
To send a message to the end-user, do this:
Callp SndStsMsg('Printing Invoice, please standby.')
To figure out next Friday's date, do this:
eval dtFriday = GetDate('NEXT':'FRIDAY')
To create a *USRSPC object named MYSTUFF in QGPL that is auto-extend enabled, do this:
Callp CrtUsrSpace('QGPL/MYSTUFF')
To create a list of field names for the CUSTMAST file and store them in a user space, do this:
Callp CrtFldList('QTEMP/FIELDS' : 'PRODLIB/CUSTMAST')
Imagine the complexities if you had to use OS/400 APIs to do these tasks.
It's never been easier to write Web application using RPG IV. The RPG xTools includes a no-charge add-on library named CGILIB. This add-on library is a complete CGI library specifically written for RPG IV and COBOL programming. Creating web-based applications in a just a few lines of code is now possible with xTools CGILIB. CGILIB does not have the limitations of earlier CGI libraries that are available for RPG. Although CGILIB is a free library, it is fully supported with your RPG xTools license.
In addition, the source code for several example CGI applications are provided free, including item inquiry, item listing (a report-like application), file maintenance and a "click-to select" listing application. Again, CGILIB and the examples are included with the RPG xTools package.
Whether you need to copy an entire file data to CSV (comma separated values) format on the IFS or selectively write CSV data records from within RPG IV, the RPG xTools make it incredibly easy. The csvOpen, csvWrite, and csvClose procedures allow you to foreget about the complexities involved in converting data to CSV format and allow you focus on the business rules behind the process.
To create a CSV file and store it on the IFS, do the following:
Here's what a typical (albeit small) file looks like when copied to CSV and loaded into MS Excel.

Need to delete some old spool files, create a list of field names for a file, or perhaps you need to list all the active users on your system, RPG xTools provides these and other capabilities in an easy-to-user interface. No more worrying about which API to use or if you have those long-lists of parameters set up correctly. Just call the RPG xTools procedures and all the low-level API calls are done for you.
You never need worry about IBM changing the APIs; RPG xTools were written so that there is never a concern about the underlying API or data structures. All RPG xTools are detect the OS/400 release on which they are running and automatically adapt to any changes, past, present and future.
By utilizing the prewritten subprocedures in RPG xTools you may complete your programming tasks faster because you don't have to reinvent the routines we've already perfected. This can only have a positive influence to your performance and productivity. Both of these attributes often play a role in programmer job review/evaluation.