Developer > General

Developer

Presented by:


COMMON, A Users Group

The Business of EGL

Create an EGL business application in 15 minutes

General - The Business of EGL

Bookmark and Share Print Email

I've spent a lot of time explaining the technical characteristics of Enterprise Generation Language (EGL) and why it’s such a good fit for System i developers. In this article, I'll veer away from that track and explain why EGL is a good product from a purely business aspect. By that, I mean business-application development. EGL is a fantastic way to quickly put together business applications, especially for rapid application development (which we used to call proof of concept but hey, let's get with the lingo, shall we?).

What Are We Going to Do Today?

In my world, one of the biggest responsibilities is to present business data to the user. In the green screen, that's typically in the form of tables (or subfiles to us true 5250 aficionados). But to test those programs, we also must enter the data. That's typically done through a utility such as Update Data (UPDDTA) or if we're lucky, something with a little more capability such as Bill Reger's Work With Database File utility (WRKDBF).

But with EGL, in about the time it takes you to read this article, I'm going to not only create a data-entry application over an existing file, I'm also going to enter some data and display it, both in tabular format and graphically. And in fact, I'll time the process so you get some idea of how long it really took.

And this won't be on some souped-up hypersystem in the lab. It’ll be on my real-world testing box, the kind of machine you can get for less than $500 sans monitor and operating system (a 2.4GHz P4 processor, a 7200RPM disk drive and 1GB of RAM).

No RPG?

Funny, isn't it? If you've read my recent materials I've spent a lot of time talking about EGL and RPG, but this time I won't use a line of RPG. Instead, I’m going to use all of the development tools of EGL version 7 to show you what it can do from a business-process modeling aspect. Everything will be done with simple SQL, calls and the editor won't have any real data validation. Note that we could easily put RPG business logic behind these calls, and I hope we can cover that in another article.

On with the show!

8:45 - Fire up the workbench.

8:46 - Create a database connection.

Since this is a database task, the first thing we need to do is configure a database connection. Switch to the Data Perspective and then create a new connection. You can see the basic parameters in Figure 1. Not much to it.

8:47 - Create an EGL Web Project.

This is pretty straightforward. Just make sure to include the JavaServer Faces Components facet or you'll get some errors in the build phase. Details of these first steps are also available in “Wizards That Work” (http://www.ibmsystemsmag.com/i5/september07/features/16711p1.aspx) by Claus and Inge Weiss.

8:48 - Create a create/read/update/delete application using the wizard.

This is detailed in the article I just mentioned. In my case, I'm creating a data-entry application for a four-field order header file. Obviously there’d be more than four fields in an order header, but that's okay because that's all I need for my proof of concept.

8:51 - Use the application to add records.

Yep, that's it. It takes about three minutes to generate the entire application, from soup to nuts. Now I can start entering data. Figure 2 shows the standard maintenance application, which consists of a list page equivalent to a System i Work With dialog, and a detail maintenance page.

You'll notice that the fields are quite generic in size and there's really no editing. All of that can be easily added, and we can even put RPG business logic behind these pages with just a little additional work. But let's get to the meat of our rapid deployment.

Next page: >>

Page 1 2

Joe Pluta is the founder and chief architect of Pluta Brothers Design Inc. Joe can be reached at joepluta@plutabrothers.com.

Advertisement



Buyers Guide

Browse products and services for Developer.



Advertisement