aprovecho para explicar algo mas el codigo:
en el html se colocan variables de datos de 400 tal como %cw-hora% y %cw-date% állá donde se quieran. en este caso no han hecho falta, pero claro que se soportan tambien campos de entrada tipo <input type=text name=micampo> etc.
en el RPG...
C Eval cwPage = cwGetPage(cwpDirA:'holamundo')
lo que hace es leer el fichero html holamundo.html desde un directorio contenido en la variable global cwpDirA, que será algo así como /r4w/miaplicacion/html/
C CallP cwAddFld('hora':%EditW(Hora :' : : '))
cwAddFld busca en la pagina html la variable %cw-hora% (o un campo name=hora) y le asigna el valor del segundo param, en este caso la hora editada.
C CallP cwAddFld('date':%EditW(Fecha:' / / '
idem para la variable %cw-date%
C Eval cwPage = cwChgFld(cwPage:cwFldV:cwValV)
cwChgFld refresca en memoria la pagina en un formato compatible para ser enviada con Apache al navegador. Esta op se hace una sola vez detras de una cwAddFld por cada dato/campo variable.En realidad esta op simplemente se copia, todos esos valores (3 param) son fijos. Terminaremos haciendo solo CallP cwChgFld sin params.
C CallP cwWrite(cwPage)
cwWrite "graba" la pagina terminada en el navegador.
Es decir, que lo que hace falta basicamente en el programa para el movimiento es:
- una linea para leer el docum html.
- una linea por cada campo/dato a mover.
- una linea (fija) para actualizar todos los campos.
- una linea (fija) para enviar al navegador.
en el caso de que se traten campos de entrada hay que hacer ademas:
- una linea para que todos los campos de entrada html se hagan disponibles en el programa (no una linea por campo, una linea)
un docum provisional sobre comparacion odiosa puedes verlo aqui
http://cpis.es/RpgForWeb_y_CgiDev.html
--
Saludos/Regards,
Guillermo Andrades
CPI Software (http://cpiS.es)
Modernizando Aplicaciones! http://modernizar.iSeries.es
On 7/11/06, Machado Nicolás Guillermo <[EMAIL PROTECTED]> wrote:
Hola Guillermo,de donde sale esta funcion :?cwAddFld('hora':%EditW(Hora :' : : '))Es de CGIDEV2 ??Saludos
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Guillermo Andrades (CPI Software)
Sent: Martes, 11 de Julio de 2006 02:13 p.m.
To: [email protected]
Subject: Re: Dudas sobre php en i5bueno, otra vez no he podido resistirme, como tengo mi pc con un disco duro roto y lleva cuatro horas pasando diagnosticos, he mejorado un poco el hola mundo en RPG, pero ahora ya si que no cumplimos lo de hacerlo todo en una linea, menos mal que con el SEU se teclea deprisa y se compila mas aprisa todavia.veamos el html, que nos ha salido un poco grande pero es que cuando me animo me gusta esto de los dibujitos:<html><head>
<title>Hola Mundo, soy un iSeries con RPG!!</title>
<style type="text/css">
body {background-color: Navy; margin: 2%; padding:2%;}
body, p {font-family:verdana, sans-serif;}
h1,h2,h3 {text-align:center;color:DarkRed;}
a:hover {text-decoration:none; background-color:gold;}
.bonito {font-family:Georgia,Serif;font-size:120%;color:Mediumblue;border:thin groove;
background-color:Skyblue;}
</style></head>
<body>
<div align="center" style="background-color:Azure;margin=2%;padding:2%;border:thin groove white;">
<h1>Hola Mundo!</h2>
<p>Hola, mundo, esta maquinita negra que tiene muchos nombres te saluda!</p>
<p>La hora que tengo es %cw-hora%, no se si coincidirá con la de tu pc.</p>
<p>Por si no sabes cuando vives te digo tambien mi fecha: <span class="bonito">%cw-date%</span>.</p>
<img src="" title="iSeries o AS/400 o System i, llamale como quieras" />
</body></html>ahora veamos el RPG a ver:*lee file-html del IFS con la pagina a presentar
C Eval cwPage = cwGetPage(cwpDirA:'holamundo')
*cambiar campos y variables en la pagina
C Time Time12 14 0
C MoveL Time12 Hora 6 0
C Move Time12 Fecha 8 0
C CallP cwAddFld('hora':%EditW(Hora :' : : '))
C CallP cwAddFld('date':%EditW(Fecha:' / / '
C Eval cwPage = cwChgFld(cwPage:cwFldV:cwValV)
*Envia la pagina al browser
C CallP cwWrite(cwPage)
C Eval *INLR = *ONDe esta forma no solo se funciona en dos capas (una en el cliente, navegador y otra en el host, 400) sino que se programa tambien en dos capas, por una parte de hace el codigo de cliente (HTML basicamente, aqui con un poco de CSS) y por otra parte se hace lo del RPG en 400. Incluso lo pueden estar haciendo dos personas distintas cada una experta en lo suyo.En fin, no es un hola mundo muy pequeño pero es que ya pasamos dos variables y todo... ( ; ^ )asi que ahora tenemos dos versiones del holamundo en RPG, una pequeña y otra con adorno.Guillermo,On 7/11/06, Guillermo Andrades (CPI Software) <[EMAIL PROTECTED]> wrote:huy! pues me acabo de dar cuenta que no tengo ningun HolaMundo en RPG !asi que vamos a por ella.C CallP cwWrite('Hola, Mundo... Soy un 400!')
C Eval *INLR = *ONvaya!, no me sale con una línea, que me hacen falta dos, mardito LR !!con esta URL se llama al programa real en un 400 realahora ya ma'picao el gusanillo del hola mundo, y quiero adornarlo un poco...vamos a ver donde hay un virguero del dreamweaver que me haga una plantilla bonita.Saaludos,Guillermo Andrades.
On 7/11/06, Fernando Pérez <[EMAIL PROTECTED] > wrote:Pues por ejemplo, la página del 'hola mundo':
en php te creas dentro de la carpeta que equivale a la raíz en la web (o en alguna carpeta que cuelgue de ésta) el fichero 'holamundo.php ', con el contenido: <?php echo "hola, mundo" ?> , y ya tienes tu página de saludo.
No recuerdo exáctamente todo lo que había que hacer en java con jsp o servlets para conseguir lo mismo, pero habían bastantes pasos más que dar.
Evidentemente esto no implica que php sea mejor que java para todo, pero es innegable que para según qué cosas te complica menos la vida. Y a quien diga que no vale para proyectos complejos, que le pegue una mirada a todas las aplicaciones libres hechas en php. A mi en concreto me impresionó Joomla (antes Mambo).
Saludos.
Fernando Pérez
Cerámica Saloni. Dpto. Auditoría y OrganizaciónEn/na PEDRO IGNACIO COLADO RODRIGUEZ ha escrit:Por favor, serian Vds. tan amables de aclararme las comparaciones:
- "Alta complejidad" de WebSphere vs "php"
- "Simplicidad" de php vs "complejidad" de Java
Saludos, Ignacio Colado.
CaiFor - Sistemas de Información
Fernando Pérez
<[EMAIL PROTECTED]
m> Para
Enviado por: [email protected]
forum.help400-adm cc
[EMAIL PROTECTED]
Asunto
Re: Dudas sobre php en i5
11/07/2006 10:52
Por favor,
responda a
[EMAIL PROTECTED]
bios.es
Yo he hecho un par de chapucillas con él. En mi caso php está instalado en
el iseries vía Pase. De esta manera el acceso a la BD es con el mismo juego
de instrucciones que con el interfaz ODBC, pero realmente no llegas a hacer
uso de él.
La verdad es que, después de hace aplicaciones web pequeñas en php y en
java, me quedo con php. No se como será con aplicaciones más complejas,
pero hasta donde yo he llegado en mi opinión no hay color.
Tengo entendido que IBM y Zend están trabajando en una integración de php
en el I5 que promete mucho.
Saludos.
Fernando Pérez
Cerámica Saloni. Dpto. Auditoría y Organización
En/na appleseed a ha escrit:
Saludos.
Como nueva posibilidad de desarrollo en iSeries, podríamos abrir un
post y discutir sobre esta nueva posibilidad.
No conozco mucho php, pero imagino que está entre la sencillez de
CGIDEV2 y la alta complejidad de WebSphere. Me estoy planteando hacer
una breve incursión en php para iSeries para conocer un poco mejor
los detalles (y no esperar a que alguien me cuente lo malo o
maravilloso que es).
Alguien ha trabajado con php?
Como es el acceso a iSeries, solo ODBC?
Os dejo este link,
http://www.zend.com/products/zend_core/zend_for_i5_osLLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com (See attached file: fperez.vcf)
