| Find what you're looking for: | |
| A comprehensive list of RPGLIB Subprocedures | A comprehensive list of CGILIB Subprocedures |
| Product Pricing? | Help with ROI (return on investment) Justification |
The RPG xTools comes with the RPGLIB and CGILIB service programs. It includes all the source code for the prototypes as well as several examples and add-on tools. The following is a category listing of some of the features included in the RPG xTools.
| Convert to CSV | Library List | Creating Lists of Objects | ||||||||||||||||||||||||
| The ability to convert between DB2/400 and Comma Separated Values (CSV) that can be read by Microsoft Excel is easy with the included CPYTOCSV CL command. This CL command runs in less than 1/3rd the time of the CPYTOIMPF command, and there are conversion subprocedures that allow you to convert to CSV from right inside your RPG IV code! | Easily change your runtime library list with the ADDLIBLE() subprocedure. You can also easily change or retrieve any portion of the runtime library list, including the hard to get to product library list with the GETLIBL() and RTVLIBL() subprocedures. There are also SETLIBL() and CHGLIBL() subprocedures that let you modify the entire library list at once. | Wish you could use those elusive "list" APIs? With
RPGLIB's extensive support for the list APIs, you can create a list
of field, member, modules, and just about anything else such as objects,
spool files, etc. by calling one subprocedure.
For example: Creates a list of fields for the CUSTMAST file and stores them in a user space.
|
||||||||||||||||||||||||
| Converting Unit of Measure | Convert Character to Numeric | Web Programming Made Easy | ||||||||||||||||||||||||
| With the included CVTUOM() subprocedure, you can convert from any unit of measure to any unit of measure, quickly and easily. Converting between Fahrenheit and Celsius has never been easier, and you can even create your own conversion ratios to extend the provided support with the included ADDUOM CL command. | How many times have you needed an "easy way" to convert a string of numbers into a packed decimal field? Too many. With the included CharToNum()subprocedure you can convert between any character string and your own numeric fields quickly and easily without the issues associated with %DEC or atoi() and CharToNum is of the fastest conversions available. | We've long known that RPG IV can be used for
CGI/Web development, but with the included CGILIB service program, the
RPG xTools provides some of the easiest CGI programming capability
available. No longer will you need to call the CGI APIs, the CGILIB does
that work for you quickly, easily, and without the overhead of some
other packages. In addition, CGILIB is compatible with existing CGIDEV2
HTML and subprocedures so you won't have to rewrite your existing
CGIDEV2 application to use CGILIB.
|
||||||||||||||||||||||||
| Find and Replace Text | Date Routines | System Tools | ||||||||||||||||||||||||
| The included FindReplace() subprocedure scans a character field for a pattern and replaces it with a new value. In addition, you can control the find/replace function with parameter options to force it to search for any of several user-specified characters and replace them with a single value. This is the only find/replace subprocedure you'll need. | The year 2000 has come and gone, but date
arithmetic will stay with us forever. The RPG xTools's date routines
provide easy interfaces that allow you to extract:
|
What xTools would be complete without system tools? The RPG xTools provides subprocedures that allow you to retrieve information about your AS/400 and iSeries. While this type of information is not for every application, there are some who need to know the number of CPUs installed on their machine, information about the partition in which they are running, and how big a library actually is on disk, the system name or serial number and more! | ||||||||||||||||||||||||
| String Handling and Debugging | Message Handling | High-level Math | ||||||||||||||||||||||||
| You can easily create a formatted text string from a named constant
or a message ID and embed substitution values without resorting to
complex concatenation routines with the provided FmtText() subprocedure. In addition, you can easily write formatted or unformatted text strings to the joblog or trace log using the provided rtkJoblog() and WrtTrace() subprocedures. |
You can extract text from any predefined message of a message file and optionally format it with message data. This provides an easy way to externalize text used in your programs, display files and reports. In addition you can send messages to the user that are more detailed than the typically "Customer not found" messages found in most applications. | Nearly every high-level mathematical routine is now a high-speed
subprocedure that can be easily called from RPG IV. The math functions
included in the RPG xTools are as follows:
|
||||||||||||||||||||||||
| UPC and GTIN | User Space | Misc | ||||||||||||||||||||||||
| With the so called "sunrise" coming January 1, 2005, the expanded UPC barcode schema, now referred to as GTIN, will require programming modifications similar to Y2K. The RPG xTools includes subprocedures for all current GTIN standards. These subprocedures calculate the check-digit for the UPC/GTIN code quickly and efficiently. |
The user space is probably one of the most underused
and powerful objects on the iSeries. With it you can store up to 16
megabytes of data, including the output from dozens of APIs, as well as
your own program data. User space may be used as dynamic storage so a
programmer can use dynamic arrays and data structures in RPG IV easily
and without concern for complex allocate and reallocate routines.
The RPG xTools provides the best interfaces to create, use and manipulate user spaces. Any RPG IV programmer can now use this powerful OS/400 object from within RPG IV. |
There are also several other easy-to-use subprocedures in the RPG xTools, including routines that simplify prompting a user for a response in a pop-up window, testing a field for equality against a list of values, returning the minimum or maximum number from a list of numbers, wrapping the data of a record in XML-style "tags", reading and writing data to/from the IFS, checking to see if a program is running in debug mode, issuing a delay job, or writing a message to the job log. |