Connect With Us

Scott Klement


Scott Klement is an iPro Developer senior technical editor and a forum pro on He is also a subject matter expert (SME) at COMMON and a developer at Profound Logic Software. Before working at Profound, Scott was the IT manager at Klement Sausage Co., Inc., where he worked for 28 years. He is an IBM Champion and has won multiple awards for writing and speaking in the IBM i industry. You can learn more about Scott at his website,

Serve JSON Web Services with RPG and YAJL
Serve JSON Web Services with RPG and YAJL  2
Scott Klement shows how to use your RPG programming skills to write a REST web service that returns data in JSON format. He also introduces Yet Another JSON Library (YAJL), an indispensable tool for JSON users.
iPro Developer July 2013
Serve JSON Web Services with RPG, YAJL
Scott Klement demonstrates how to use your RPG programming skills to write a REST web service that returns data in JSON format. He also introduces Yet Another JSON Library (YAJL), an indispensable tool for JSON users.
Storing Per-User Settings 
One of the most useful features of IBM i is the ability to store settings inside a user profile. What's more, you can do so from any ILE program! From a housekeeping perspective, it's much better to store settings inside a user profile rather than in a physical file. Scott Klement shows how to use the User Application Information APIs to take advantage of this cool IBM i feature.
Simplify Pattern Checking with Regular Expressions
Simplify Pattern Checking with Regular Expressions  1
Did you know that regular expression support is natively available to the ILE environment? To help you take advantage of regular expressions, Scott Klement shows you how they work, how to use them from ILE RPG, and how to use them to search data or validate user input.
Tech Corner (September 2012) 
Converting PDF Files to Text

Q  I have been tasked with finding the best way (if there is one) to convert a PDF file back to a text file that our IBM i can read. I can open the file in Adobe and save it as a text file, so I know the process is possible, but I must automate it entirely on the IBM i, as the PDF files are in the IFS directory. Someone here said that they thought FTP might do the conversion, but that sounds strange to me.


Every Program Needs to Escape Sometimes
Every Program Needs to Escape Sometimes  1
Many developers code escape messages in CL programs, but they unfortunately fail to use them in their RPG programs. To convince you that escape messages are just as useful in RPG as they are in CL, Scott Klement shows you why you should use escape messages, how to code them in CL and in RPG, and how to catch errors by using a catch-all error handler.
Tech Corner (August 2012) 
Defining F Spec of SRCPFs

Q  What is the proper way to define the F-spec of a SRCPF? I want to read through a SRCPF, and I see that I have the option of OVRDBF or EXTMBR to read a specific member. However, I am having problems with defining the file on the F-spec.

A  Personally, I prefer program-describing my SRCPFs. I've had three problems with using the external definitions:

RPG Supports Multiple Concurrent Threads 
Today, few RPG shops use threads, because the need to write multi-threaded programs isn't commonplace in the world of business applications. But when the need does arise, you may find it difficult to figure out where to start or how it all works. Not to worry. Scott Klement explains how to use and manage threads in RPG.
Tech Corner (July 2012) 
Joining Logical Files

Q  I’m guessing the normal join that we do with Jfile and the JOIN keyword is an inner join. By specifying JDFTVAL, is that then a left outer join? Can we achieve any other join types such as right outer or exception join through DDS?


Access External Databases from RPG with JDBCR4  5
Looking for a database driver that can work across multiple, diverse platforms? If so, check out this solution that uses an RPG service program called JDBCR4 (which stands for JDBC from RPG IV) that makes it easier to call JDBC methods from an RPG program.
Serving RESTful Web Services in RPG 
When it comes to modernizing your software, you've likely deployed web services on your IBM i with the help of the Simple Object Access Protocol (SOAP). But did you know that another web services architecture—Representational State Transfer (REST) is, in many cases, a better fit than SOAP? To help you take advantage of REST's simplicity, Scott Klement explains the philosophy of the REST architecture and walks you through the process of writing your first REST web service in ILE RPG.
UDTFs in RPG for the Win!  2
A modern system starts with the ability to write business rules as "services" that are callable from any user interface or batch process and that you can test independently from the rest of the application. One handy tool to do this is a User Defined Table Function. With DB2 for i, you can write UDTFs in any high-level language, including RPG! Scott Klement shows you how to write your business logic in a UDTF and write the UDTF in RPG, letting you take advantage of your company's existing RPG code and your staff's existing RPG skills.
Tech Corner (May 2012) 
Directing Program to Variable Libraries

Q  I want to direct a program to use either LIB1/PGMA or LIB2/PGMA, depending on some criteria. PGMA is an RPGLE program, and LIB1 is an old version of the program, while LIB2 is a new version. Both the old and new versions leave LR *OFF (for batch processing) before returning to the calling program, depending on a code passed into the program.

Meat of the Matter: In RPG, Subprocedures Are Useful  4
When it comes to new RPG development, the vast majority of shops use the ILE RPG compiler. But unfortunately, few take advantage of ILE concepts. So most shops fail to benefit from one of RPG's best features: subprocedures! Like subroutines on steroids, subprocedures are powerful yet easy to use, improve the readability of your code, and make programs easier to maintain. What's more, you don't need to use ILE to use subprocedures.
Tech Corner (June 2012) 
Dangers of OVRDBF

Q  Has OVRDBF ever caused a program failure? If so, for what message would you monitor? A member of our group is very skittish about using it, so I am investigating possible failures. I have been programming for many years and have never had an issue with it. Thanks for any information that you can provide.


iPro Forums

Get answers to questions, share tips, and engage with the iPro Community in our Forums.

From the Blogs
Application Modernization Redbook Unleashed
Mar 27, 2014

Application Modernization Redbook Unleashed  

The Application Modernization Redbook draft version has been released! Tim Rowe has the details....More
Free-Form RPG Transformation, Part 2
Mar 19, 2014

Free-Form RPG Transformation, Part 2  

Tim Rowe continues his series on ISV tools for free-form RPG with a look at Linoma Software's free-format transformation tool, RPG Toolbox....More

Sponsored Introduction Continue on to (or wait seconds) ×