Partner TechTip: Work with Non-iSeries Data in iSeries Applications

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

Unfortunately, we don't live in a fairy-tale world. In the last several years, companies have placed their data in many different places. You might have an Oracle database on a UNIX box or a SQL Server database on a Windows server. If you're asked to combine data from the iSeries with information from one of these databases, you need a solution that lets you say, "Of course, I can!"

The Data Curtain Gets Built

Companies have a real need to work with data that resides on multiple database systems. At first, when the data was mostly on an AS/400 or iSeries, Windows applications could use an ODBC driver to access that data. ODBC became the effective standard for connecting from Windows applications.

Developers could also use DRDA to connect to remote databases. This method of database access is available in all IBM DB2 products.

While being able to easily access iSeries data from Windows was a breakthrough, it was also a one-way street. In effect, a wall began to grow around the iSeries that prevented the same kind of communication from the iSeries to other databases. ODBC drivers, which every database vendor was writing for Windows, would not work on an iSeries. And almost no database vendors wrote DRDA providers, which the iSeries could use.

Tearing Down the Wall

Various strategies for working with remote databases from the iSeries have been used over the years. Some have involved copying data into a variety of different text files. These files are transmitted to the database server using FTP and then imported into the relevant database. Although this works, it's hardly real-time read/write access to the data.

In more recent times, Java has entered the fray. This provides a fairly good solution, as every database vendor writes JDBC drivers, just as they do for ODBC. However, drawbacks include the need for Java skills, which may not be readily available in iSeries shops.

DRDA solutions from Oracle and IBM also exist. In both cases, you can use embedded SQL in your applications. While these solutions work, many companies find their cost prohibitive.

Then there's RPG2SQL Integrator from RJS Software Systems. This product provides a cost-effective way to read, write, and update data in remote database systems from iSeries applications in real time. RPG2SQL consists of a set of service programs on the iSeries and a middleware application that runs on a Windows PC. This middleware application relays connection and data requests from ILE RPG/COBOL programs to the remote database server and sends the results back to the iSeries program.

Using RPG2SQL Integrator with SQL Server

As a simple example, let's look at a book publisher inventory maintenance application. One of the functions might be an inquiry screen that lists the titles and lets the user show more details. The data sits in a SQL Server table, so we want to read that data live and display it on the iSeries.

Figure 1 shows the data from the 'titles' table in the SQL Server sample 'pubs' database. The ILE RPG application reads this data in real time.

http://www.mcpressonline.com/articles/images/2002/RPG2SQL%20tech%20tip_%20FinalV4--08020600.png

Figure 1: The ILE RPG application reads this SQL Server table in real time. (Click images to enlarge.)

Figure 2 shows the iSeries inquiry application that lists the title information from the SQL Server table.

http://www.mcpressonline.com/articles/images/2002/RPG2SQL%20tech%20tip_%20FinalV4--08020601.png

Figure 2: The iSeries inquiry application lists the title information from the SQL Server table.

RPG2SQL is easy to use, since standard RPG function calls, such as the ones below, are all it takes to access data from a remote database system:

Eval      Rtn = SQL_RunSQLSel(SQL_Socket : SQLStmt)


and

Eval      RtnRecord = SQL_MoveFirsBuf(SQL_Socket)


When testing an application that uses RPG2SQL, it is useful to see what is going on. Figure 3 shows the debug window of the RPG2SQL PC component. Here you see connection requests, as well as SQL statements and navigation through the data.

http://www.mcpressonline.com/articles/images/2002/RPG2SQL%20tech%20tip_%20FinalV4--08020602.png

Figure 3: In the debug window, you see connection requests and SQL statements.

Seamless Data Integration

RPG2SQL Integrator provides a reliable way to seamlessly work with remote data from the iSeries. Although other products can do this, they don't provide the combination of functionality, ease of use, and affordability that RPG2SQL does.

Learn More

If you would like to demo or receive more information about RPG2SQL Integrator, contact RJS Software at 888.757.7638. Check out the company's other offerings in the MC Press Showcase Buyers Guide.

Vern Hamberg is a senior iSeries software architect for RJS Software Systems. He can be reached at This email address is being protected from spambots. You need JavaScript enabled to view it..

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$0.00 Raised:
$