Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Este artículo es se
centró en los aspectos básicos del uso RPG como un lenguaje de script del lado del servidor para
desarrollar aplicaciones Web. El uso de RPG es igual de fácil y de gran alcance como el desarrollo
Aplicaciones Web con cualquier otro idioma. Más importante aún, el desarrollo de RPG Las
aplicaciones web no requiere CGI, Java, JSP, PHP, WebSphere, PASE, y complicadas herramientas
de desarrollo.
En este artículo, un servidor HTTP / aplicación tecnología llamada Icebreak se usa que ofrece un
entorno por el lado del servidor RPG de programación. La conceptos básicos de la elaboración de
un Se discute la aplicación Web sencilla RPG que sería el equivalente a una pantalla verde carga
todo subarchivo. RPG también puede ser fácil intergraded con tecnologías como SQL, AJAX y
servicios Web, que será presentado en futuros artículos. RPG es un lenguaje de negocio que se
adapta bien al modelo de 3 niveles que se aplica a Web aplicaciones. El nivel de datos o primero
contiene la fuente de base de datos; el nivel medio o servidor de aplicaciones contiene el negocio
lógica para procesar los datos, y finalmente la tercera o la presentación de nivel es la interfaz de
usuario donde se presenta todos los datos. RPG encaja bien en este modelo. En las aplicaciones
Web de rol, el nivel de datos es la base de datos DB2 almacena en el System i. El nivel medio
contiene el lógica de negocio desarrollado en RPG que se ejecuta en el servidor de aplicaciones y
el tercer nivel es la interfaz de usuario desarrollada en HTML donde la información se procesa a
la navegador. ¿Por qué es importante seguir el modelo de 3 niveles? Una aplicación desarrollada
con este modelo se convierte en muy flexible, y se pueden realizar cambios en un nivel sin
afectar a los otros dos niveles. Usted trabaja para una pequeña o mediana Sistema i empresa y
quieren seguir desarrollando aplicaciones con RPG pero quieren migrar a las aplicaciones Web en
un formato fácil administrar el entorno. Las palabras clave aquí son "fáciles de administrar el
entorno" porque no ha sido fácil desarrollar Web RPG
aplicaciones. En el pasado, RPG aplicaciones tuvo que ser combinado con otras tecnologías para
funcionar en la Web. Peor aún, RPG hizo no tiene un servidor HTTP / aplicación nativa. Por lo
tanto, el desarrollo de nuevas aplicaciones web, era necesario para alcanzar fuera de la Ambiente
ILE RPG y combinar con otras tecnologías. Bueno, esto ya no es requerido. Vamos a echar un
vistazo a lo fácil que es para desarrollar una aplicación Web RPG nativo.
El desarrollo de una Web RPG Aplicación Hay varios pasos en el desarrollo de un Aplicación web
RPG:
2. Crear la interfaz de usuario HTML. Páginas web deben utilizar las reglas de
Para este artículo, HTML implicará XHTML. En aplicaciones de pantalla verde, la interfaz de
usuario es un archivo de pantalla. En una aplicación de navegador, la interfaz de usuario es
HTML.
Hoja de Estilo en Cascada (CSS)
Hojas de Estilo en Cascada (CSS) son un mecanismo sencillo para añadir (por ejemplo, fuentes,
tamaños de fuente, colores, márgenes y espaciado) de estilo para archivos Web.
Los estilos definen cómo mostrar los elementos HTML. Normalmente, estándar Archivos CSS se
crean para una organización y todas las aplicaciones y Páginas web comparten el mismo CSS. Por
lo general, se crean los archivos CSS y utilizado para varias aplicaciones como medio de
estandarización de browserbased aplicaciones. Una vez que el CSS se convierte en un estándar
de la compañía, hay muy poca necesidad de modificarlo. Un CSS es un muy importante
componente de una aplicación web, pero por desgracia no es suficiente espacio para discutir CSS
en este artículo.
El primer paso en el desarrollo de una aplicación Web RPG es diseñar y crear la interfaz de
usuario usando HTML. Como se ha mencionado, Web páginas deben utilizar las reglas de XHTML,
que está reemplazando a HTML.
Sin embargo, en este artículo, no discute las reglas de HTML. En lugar de ello, Eso se lo dejo para
que usted pueda explorar. El archivo HTML define lo que es prestado al navegador y es similar a
la creación del archivo de pantalla para una aplicación de pantalla verde. La interfaz de usuario
HTML para este aplicación se define en el archivo de TUG1.htm muestra en la Figura 2.
El código en la Figura 2 es un ejemplo HTML básico y no se discute en detalle aquí. Hay muchos
libros que se pueden utilizar para aprender lo básico de HTML. Lo importante a entender es que
una vez que una interfaz de usuario plantilla se crea en HTML, puede ser adoptada fácilmente a
otras aplicaciones.
Una vez que una empresa decide en un "usuario aspecto de la interfaz, "los mismos archivos
HTML puede ser utilizado en varias ocasiones.
Tablas HTML se utilizan para enumerar los elementos de una Aplicación web de una manera
similar como un subarchivo se utiliza en un archivo de pantalla. En este aplicación, una tabla
HTML se utiliza para listar los registros de los empleados del empleado presentar. Cada registro
se lee desde el se inserta archivo de los empleados y una fila de tabla en la tabla HTML. Por lo
tanto, una tabla fila se define para describir cómo los datos es a aparecer en el navegador.
Aunque uno o más filas aparecerán en la tabla cuando se representa en el navegador, sólo una
fila de la tabla se define en el HTML presentar. Esta fila de la tabla solo define el primera línea de
una o más líneas idénticos que se mostrará en la tabla. A medida que cada registro se lee desde
el archivo empleado, el Programa RPG utiliza la misma fila de la tabla definición en el archivo
HTML para insertar una nueva fila en la tabla HTML.
El Programa de RPG
El programa RPG para esta aplicación se muestra en la Figura 3. Este programa es el equivalente
a una pantalla verde de carga-add subfichero básica. Normalmente me gustaría utilizar un
procedimiento en el lugar de la subrutina pero utiliza una subrutina para aquellos que no han
adoptado procedimientos. Este programa realiza tres pasos para construir la página Web. En
primer lugar, incluye el encabezado de la página llamada page_header del TUG1.htm
presentar. Examine la figura 2 y se verá que el código identificado por # tag = "page_header"
incluye el código HTML para el encabezado de página y el encabezado de la tabla. A
continuación, un bucle Dow / ENDDO es utilizado para recorrer el archivo de los empleados e
incluir una fila de tabla en la página Web de cada empleado. Así, el programa está construyendo
una tabla dinámica desde el archivo de base de datos. Una vez creada la tabla, el programa
incluye el código HTML para terminar la página Web y presentarlo al navegador.
Extensiones de rol Cuando una aplicación RPG contiene un archivo de pantalla, hay especial
Operaciones de rol, como EXFMT, que se utilizan para trabajar con el archivo de pantalla. Del
mismo modo, en una aplicación Web RPG, hay extensiones integradas en el servidor HTTP /
aplicación que permite RPG para trabajar con el archivo HTML. Las extensiones básicos utilizados
en este aplicación se discuten a continuación.
Cuando el programa RPG incluye el código HTML de una etiqueta específica, se introduce ese
código HTML en la página web.
Programas RPG contienen código que se encuentra rodeada por los delimitadores <% Y%>. El
código se ejecuta en el servidor y puede contener cualquier expresiones, declaraciones,
procedimientos o operadores válidos para el Lenguaje de programación RPG. Cuando se solicita
una aplicación, el Servidor HTTP / aplicación necesita saber qué código se debe ejecutar y lo que
el código es el contenido que se vaya a administrar al navegador. RPG código encerrado por <
% ...%> sólo se ejecuta, mientras que las expresiones que incluye un signo igual, <% = ...%>, se
evalúan y el resultado se emite como contenido. Por lo tanto, la declaración <% = % Trim
(firstName) + '' +% trim (lastName)%> en la figura 2 renders un nombre concatenado empleado.
La dinámica valores se determinan en tiempo de ejecución y están sustituidos en la evaluado
Símbolo (=). Como resultado, cuando la página se vuelve al navegador, los valores dinámicos
aparecen en la página Web.
Una vez que los archivos de código fuente RPG y HTML se crean y guardan en la Carpeta IFS, la
aplicación se puede compilar en un programa nativo objeto (* PGM). Para compilar la aplicación,
se solicita en un navegador introduciendo http: //server_name/TUG1.rpgle en el cuadro
Dirección, donde nombre_servidor es el nombre de la servidor y TUG1.rpgle es el nombre de la
aplicación RPG. Si el programa es nuevo o ha cambiado, el HTTP / aplicación servidor compilar la
aplicación en un nuevo objeto. Si el programa de compila sin errores, se crea y almacena un
objeto * PGM en la biblioteca que se asigna al servidor HTTP / aplicación. En Además, si el
programa se compila, el servidor HTTP / aplicación ejecuta el programa de la biblioteca y hace
que los resultados a la navegador como se muestra en la Figura 1.
El servidor HTTP / aplicación no ejecuta los archivos de origen en la carpeta de IFS. Sólo el objeto
de programa (* PGM) almacenada en el biblioteca se ejecuta. Por lo tanto, una vez que se
completa una solicitud, sólo el objeto de programa tiene que estar disponible para ejecutar la
aplicación.
Como se ha mencionado, una página Web rindió al navegador por medio de un juego de rol
aplicación sólo contiene HTML. La Figura 4 ilustra el resultado de clic Página / Ver código en el
navegador. No hay código RPG o la lógica de negocio se envía al navegador. El usuario puede ver
sólo el HTML generada a partir de la aplicación RPG. Observe en la figura 4 que el Aplicación RPG
generó varias filas de la tabla que son el resultado de looping (Dow / ENDDO) a través del archivo
de los empleados. Los errores de compilación Si se detectan errores durante la compilación, una
compilación lista con errores se devuelve al navegador en lugar de la página Web. Los errores en
el listado de compilación están marcada por lo que los errores pueden ser localizados por hacer
clic en el error de sintaxis en la fuente. Si hay errores de sintaxis, corregir los errores en el código
fuente, guardar el programa, y refrescar el navegador. Este proceso continúa hasta que todos los
errores de compilación son corregido que se traduce en un objeto de programa que se está
creando y un Web La página que se muestra. La Figura 5 ilustra una compilación del programa
con errores.
Errores de ejecución
Si se produce un error de ejecución, el servidor HTTP / aplicación proporciona el registro de
trabajo actual como una página HTML en el navegador. El tiempo de ejecución error que se
muestra en la Figura 6 se devuelve al navegador. En el ejemplo en la figura 6, un intento de
dividir por error de tiempo de ejecución cero ocurrido.
Idiomas web modernos tienen un lenguaje de script, un fácil de utilizar interfaz de usuario, y un
servidor HTTP / aplicación que se ejecuta la aplicaciones. La aplicación de este artículo muestra
cómo fácil es implementar RPG como un lenguaje de script con un fácil usar interfaz de usuario
HTML. Entonces, ¿qué hace esta magia suceda? La respuesta es Icebreak Application Server, uno
de los más emocionantes Web tecnologías de desarrollo que se desarrollarán en los últimos años.
Icebreak es un servidor HTTP / potente aplicación que se ejecuta de forma nativa en System i5,
iSeries y AS / 400. Icebreak instala en minutos con poca configuración, y tiene una función de
desarrollo integrado que permite a los desarrolladores construir y desplegar aplicaciones Web
utilizando el lenguajes ILE RPG y COBOL nativo y otras tecnologías como SQL, XHTML, XML, Web
Services, y AJAX. Icebreak no es una herramienta, sino un poderoso servidor HTTP avanzado /
aplicación que no requiere CGI, Java, Apache, WebSphere (WAS), PASE, WebFacing, sombreros, o
generador de terceros herramientas. Con Icebreak, los desarrolladores se benefician de un único
e integrado de aplicaciones de hosting medio ambiente. El entorno ILE es el entorno natural de el
System iy Icebreak ofrece la mejor infraestructura web para tomar ventaja de ILE.
Figura 1
Figura 2
tag="page_header"-->
<html>
<head>
<title> Employee Hourly Rate Listing </title>
<link rel="stylesheet" type="text/css"
href="../Theme/Master.css" />
</head>
<body>
<img src="./images/premierebanner.gif" />
<h1> Employee Hourly Rate Listing </h1>
<table>
<tr>
<th> Employee </th>
<th> Employee <br /> Number </th>
<th> Employee Name </th>
<th> Store </th>
<th> Dept </th>
<th> Hire <br /> Date </th>
<th> Hourly <br /> Rate </th>
</tr>
<!--#tag="table_row"-->
<tr>
<td> <img src="./images/<% = %char(employeeNo)
%>.jpg"> </img> </td>
<td> <% = %editW(employeeNo : '0 & & ')
%> </td>
<td> <% = %trim(firstName)
+ ' ' + %trim(lastName) %> </td>
<td> <% = %char(storeNo) %> </td>
<td> <% = %char(deptNo) %> </td>
<td> <% = %char(hireDate) %> </td>
<td> <% = %editC(hourlyRate : '3' : '$')
%></td>
</tr>
<!--#tag="finish_page"-->
</table>
</body>
</html>
FIGURA 3
<%
FempPayTBL IF E K Disk Rename(empPayTBL : empPayR)
D tag S 50A varying
/free
tag = 'page_header';
exSR writeHTML;
read empPayTBL;
doW Not %EOF (empPayTBL);
tag = 'table_row';
exSR writeHTML;
read empPayTBL;
endDo;
tag = 'finish_page';
exSR writeHTML;
*inLR = *ON;
begSR writeHTML;
select;
when tag = 'page_header';
%> <!--#include file="TUG1.htm" tag="page_header"--> <%
when tag = 'table_row';
%> <!--#include file="TUG1.htm" tag="table_row"--> <%
when tag = 'finish_page';
%> <!--#include file="TUG1.htm" tag="finish_Page"--> <%
endSL;
endSR;
/end-free
%>
FIGURA 4
<html>
<head>
<title> Employee Hourly Rate Listing </title>
<link rel="stylesheet" type="text/css"
href="../Theme/Master.css" />
</head>
<body>
<img src="./images/premierebanner.gif" />
<h1> Employee Hourly Rate Listing </h1>
<table>
<tr>
<th> Employee </th>
<th> Employee <br /> Number </th>
<th> Employee Name </th>
<th> Store </th>
<th> Dept </th>
<th> Hire <br /> Date </th>
<th> Hourly <br /> Rate </th>
</tr>
<tr>
<td> <img src="./images/111241333.jpg">
</img> </td>
<td> 111 24 1333 </td>
<td> Yvonne Henson </td>
<td> 2257 </td>
<td> 555 </td>
<td> 1999-09-23 </td>
<td> $19.50 </td>
</tr>
<tr>
<td> <img src="./images/111253256.jpg">
</img> </td>
<td> 111 25 3256 </td>
<td> John Thorton </td>
<td> 1133 </td>
<td> 111 </td>
<td> 2005-02-02 </td>
<td> $15.25 </td>
</tr>
.
.
</table>
</body>
</html>
FIGURA 5
FIGURA 6
Desarrollo Web RPG
IceBreak
100% Native System i
Leverage the power of the System i ILE environment
• Quickly build new Web applications and convert existing greenscreen
applications to run on a modern application server
• Does not require CGI, Java, Apache, WebSphere (WAS),
WebFacing
• Supports XML, Web Services, SOA, AJAX
• Installs in 30 minutes or less and has no gateways or moving parts
www.IceBreak4RPG.com
System & Method International
E-mail jac@system-method.com • Call 1-888-290-3256
www.IceBreak4RPG.com • www.system-method.com