RPG Web Development

Transcription

RPG Web Development
RPG Web Development
Salt Lake Midrange Users Group Meeting
November 10, 2010
Presented by:
Keith Day
President
Apps ON i
kday@appsONi.com
801-808-5622
11/11/2010
1
RPG Web Development
Agenda
• My experience as an RPG programmer developing web
apps for the System i.
• What is CGIDEV2?
• How does CGIDEV2 Compare to other web
development methods available for System i?
• My personal experience with CGIDEV2.
• wikiONi – Native wiki running on System i.
• The future for CGIDEV2.
11/11/2010
2
My experience as an RPG programmer developing
web apps for the System i.
My first experience was with Net.Data
•
Net.Data is a macro language, to distinguish it from a compiled language, such as
RPG or COBOL.
•
Net.Data macros consist of Net.Data language statements, and usually some HTML
and SQL statements.
•
After coding the Net.Data macro, you invoke it from your browser, at which point the
macro is interpreted by the AS/400 Net.Data macro processor and the results
rendered in your browser.
My experience:
• Easy to develop
• Performance very slow.
11/11/2010
3
My next experience was with BCD’s WebSmart ILE
•
•
•
Downloaded a trial copy.
Had a list maintenance page up within 2 hours.
Spend 2 weeks trying to convince my boss to spend $10,000 to get it.
…that ended that.
11/11/2010
4
What is CGIDEV2?
•
CGIDEV2 is a free iSeries based development toolkit that facilitates
the development of interactive web-based programs using RPG ILE as
the back-end Common Gateway Interface language (sort of).
•
The functionality is provided by a service program that contains all of
the procedures required to read input from a browser, generate and
send the appropriate response back to the browser.
•
CGIDEV2 is commonly used to generate static or interactive
HTML/DHTML.
11/11/2010
5
Who developed CGIDEV2?
• In 1996 Mel Rothman at IBM developed the original
CGIDEV, also known as Easy400.
• Since then, CGIDEV has gone through multiple
enhancements and developments (now CGIDEV2) from
Mel and Giovanni Perotti of IBM Italy.
• Although Mel has since left IBM, you will still find him
(along with Giovanni) answering questions and offering
advice on the Easy400 group at
http://groups.yahoo.com/group/Easy400Group/.
11/11/2010
6
How to get CGIDEV2
Go to easy400.net and follow the instructions.
Giovanni B. Perotti
11/11/2010
7
11/11/2010
8
11/11/2010
9
11/11/2010
10
11/11/2010
11
11/11/2010
12
11/11/2010
13
11/11/2010
14
11/11/2010
15
11/11/2010
16
11/11/2010
17
11/11/2010
18
http://www.easy400.net
11/11/2010
19
From a 2008 Scott Klement resentation titled: Choices for Integrating RPG with the web
http://www.scottklement.com/presentations/http://www.scottklement.com/presentations/
11/11/2010
20
My personal experience with CGIDEV2
• I’m an old timer RPG programmer since 1982.
• The CGIDEV2 install was easy. Getting the “Hello World” app
running was also easy (I understood the “stateless” nature of
HTML pages from my NET.DATA experience).
• The RPG part was a snap and gave me native access to the
database (yahoo).
• My first real app was a wiki system named CMS (developed
in my spare time using CGIDEV2 and RPGLE). It was used by
iTERA from 2004 until 2009 (about 30,000 pages).
11/11/2010
21
wikiONi by AppsONi
Native wiki for System i
• Currently in the process of re-writing the wiki system on my own AS/400.
• Plan to release in January 2011 as a free, open source wiki for System i.
Why a native wiki for System i?
Aren’t wiki systems a dime a dozen?
11/11/2010
22
Advantages of a native wiki driven by RPGLE
1.
Native access to the data base (native RPG I/O ops or embedded SQL)
2.
Ability to put query data directly on a browser page.
3.
Ability to put spool file output directly on a browser page.
4.
Paperless reports. Links can be emailed and users can access report data
via their browser.
5.
System i security.
6.
Crawlers can be written to build wiki pages from application data (this is how
we ended up with 30,000 pages at iTERA).
7.
Google like search of all wiki content.
8.
Cut and paste to Word and Excel.
11/11/2010
23
11/11/2010
24
11/11/2010
25
11/11/2010
26
11/11/2010
27
11/11/2010
28
11/11/2010
29
11/11/2010
30
11/11/2010
31
The future for CGIDEV2
Other open source tools are being made available.
My favorite is Renaissance by CoralTree.
• The Renaissance Framework is an Open Source developer's platform for the
creation and deployment of robust, scalable and secure browser-based
applications on System i servers.
• CoralTree Technical Director, Kevin Turner said, "We built the Renaissance
Framework to enable our own developers to create browser-based applications
as easily and reliably as they can create 'green screen' applications. Having
achieved that, we believe that the best way to move the Framework forward is to
effectively hand it over to the vibrant System i user community."
• The Renaissance Framework, including full source code, may be freely
downloaded from the product web site www.renaissanceframework.com. Also
available at the same location are a running demo version of the Framework, and
access to the product support forum.
11/11/2010
32
Notes:
11/11/2010
33