×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
From: Raul A. Jager W.
the closest to my dream I have found is CGIDEV, using a few "copy
members" I can develop a web application as fast as a green screen
one ...
HTML, CSS, and JavaScript may take more effort than display file DDS, but just to emphasize your point about the productivity of CGIDEV2, I'll share an RPG program that receives input from an HTML page, and responds with an AJAX message.
My API may be a bit more streamlined than CGIDEV2. My wtnRecGet() procedure automatically validates and maps HTML form input elements to externally described data structures. And my wtnRecWrt() procedure automatically formats and maps field values from data structures to HTML form elements. In other words, wtnRecGet() is comparable to a read opcode. wtnRecWrt() is comparable to a write opcode. I followed the lead of the Valence toolkit. I'm sure with some effort, someone could write a comparable wrapper around CGIDEV2 procedures.
h copyright('2008 Relational Data Corporation')
/copy *libl/qrpglesrc,rdwtnapi#1
d wtn e ds extname(rdwtnp) qualified import
d order e ds extname(petorder) qualified
/free
dow wtnAction('PETORDER');
if wtnRecGet('PETORDER':%addr(order));
wtnRecWrt('PETORDER':%addr(order));
wtnMsgWrt('Thank you, ' + order.firstname
+ '; your order is complete':'':*off);
endif;
enddo;
*inlr = *on;
/end-free
As an Amazon Associate we earn from qualifying purchases.