iCommunity (December 2009)

Article ID: 64411

Readers are interacting online in our blogs, forums, and articles. Here, we present some excerpts of their comments unedited and in their own words.


on our website . . .

Just in Time for the Holidays: Annual RPG Wish List

I like 'em. I would like to add %GETENVIND and %PUTENVIND, which return an indicator rather than a value; this option would support a cleaner IF statement.
—from "Annual Top Ten RPG IV Requirements"

Some of these sound good, some of them not so much so. And that's fine, because we don't have to use language features that we don't want to. That sort of supports my point, though: what I'd most like to see in the RPG IV ecosystem would be a system for automatically extending RPG with user-created libraries. Bob, you've written the joblog procedure at how many shops? What if you could just run a command to download and install your service program, put your bnddir and /copy statements in, and use it? Simple, easy as pie for you to do, and you wouldn't have to petition IBM to do it. That way, some bright RPG coder could write and distribute, say a regex library in the same fashion, perhaps quicker than IBM can. And toupper/tolower? Piece of cake.

IBM's part in this would be to create the repository and commands to interact with it, and to publicize this as a new way of getting RPG features. This method (much like what's used in Rails) would allow us the power to enhance our language while greatly lowering the obstacle of finding and installing new features. It doesn't address everything on your list, but it makes it possible for us to address the first six.
—from "Annual Top Ten RPG IV Requirements"


in our blogs . . .

Darnell Video Shows the EGL Way

This is a great contribution, Dan, to the effort to promote RichUI EGL as a realistic option for the IBM i. I hope it is widely viewed.

I appreciated your mentioning at the end the alternative method of calling the RPG program (from EGL) as an external stored procedure. For some companies or under some circumstances this might be the preferred approach, and it does save you from having to make entries in the build descriptor.
—from "Video Walkthrough: Calling RPG from EGL Community Edition"

My compliments to Dan too, for an informative and nicely done video.

Regarding the interface for calling an RPG program from EGL, I couldn't help but note that the standard CGI interface is a lot more streamlined.

Just add textbox & button to a static HTML page. Include a reference to any number of AJAX toolkits. Write a javascript function to post the textbox value to the RPG program via CGI when the button is clicked, and write a javascript function to handle the AJAX callback response.

No jt400 connection needed. No EGL project definitions or descriptors. No middleware service to write, deploy, or debug under an application server.

AJAX w/ CGI would just be a simple interface between the browser and the RPG program.
—from "Video Walkthrough: Calling RPG from EGL Community Edition"

Where EGL shines at directly calling RPG is when you introduce more complex parameter lists. In the article I published ("The EGL Has Landed", System iNews, November 2008) you can see where I am using an EGL program to directly call an RPG program wherein the RPG program has a parameter list consisting of a structure containing an array of structures containing another array of structures and the nested structures have fields with a variety of data types. In my experience nothing comes close to EGL for being able to easily leverage existing RPG code without having to change that RPG code to dumb down parameter lists.

I hoped with the video to provide a simple example as a stepping-off point for those who would go on to implement more complex calls. If time allows perhaps I can follow-up with another example such that people can see how EGL and especially EGL with Rich UI simplifies coding all around when dealing with data consisting of a variety of data types and leveraging existing RPG code in a real-world business application.

As I am fond of saying, you just have to try EGL to fully appreciate it. You are obviously productive with CGI using HTML, JavaScript, Ajax, RPG for marshaling parameters, configuring the CGIDEV2 module in Apache, etc. I think you are going to be blown away by the ease with which you can rapidly create rich-client apps in EGL where you can really focus on creating business solutions and not on making languages and technologies work together. I hope you have an opportunity to give it a shot...looking forward to hearing more from you!
—from "Video Walkthrough: Calling RPG from EGL Community Edition"


Got something to say? The SystemiNetwork.com community offers many ways for you to chime in. Send us an email, comment on our blogs or articles (look for the comment function at the end of each blog entry or article), or participate in our forums. We also have a LinkedIn group—a great place to network with your peers and discuss hot "i" topics.

ProVIP Sponsors

ProVIP Sponsors