Fernando, buenas preguntas cuando hay respuestas (;^)
 
<<Por cierto, Guillermo, una pregunta: La plantilla del documento html con 'variables incrustadas' va bien para muchas páginas, pero, ¿Como tratáis lo que sería cada registro de un subfichero? ¿Con una plantilla que define lo que sería el registro y que se imprime varias veces? >>
 
si, para subficheros se puede usar el metodo de definir un registro de cabecera y uno de detalle en el html, y luego en el programa RPG simplemente hacemos un DO x para duplicar cada registro de detalle. de esta forma dependiendo del contexto unas veces puedes presentar 20 registros de detalle y otras veces puedes presentar 100, eso por ejemplo es muy bueno porque quita una de las limitaciones de las pantllas 5250 que solo puedes presentar unas 18 lineas visibles de un subfichero. imaginate que quieres dar un resumen de ventas por tienda y tienes 40 o 60 tiendas, pues con HTML simplemente las presentas todas incluso con totales etc y el usuario final puede imprimirse la pagina entera con todas las tiendas. y en el RPG es un simple DO.
 
a ver si mañana tengo tiempo y pongo un ejemplo de subfichero.
pero basicamente es como u has dicho: sentido comun, usando "tablas" de html que son muy faciles de entender. Ademas tambien usamos a veces unos sisgtemas de tablas con funciones _javascript_ embebidas que permiten incluso clasificar pinchando en el titulo. por ejemplo muestras la lista de tiendas con sus ventas etc y el usurio final pincha en la col de ventas para clasificar por ventas etc y todo eso sin teclear una linea.
 
puedes ver un ejemplo de tablas/subficheros RPG con:
en los de abajo donde dice "enlaces directos:"
- gestion de personal
- boton "datos economicos"
- un periodo
- desglose por meses, enviar
 
 
<<El segundo problema dificulta lo que sería mi esquema preferido: las pantallas las pinta php (corriendo en el I5) y los datos y las transacciones las gestiona RPG. Porque hay que admitir que php está mucho más preparado que RPG ILE para implementar la capa de presentación (¿Se llama así?) , >>
 
no creas eso, si viste el ejemplo que envié ayer la actualizacion de cada campo de salida en la pagina html desde RPG se hace con una sola linea (como un move), lo mas parecido a cuando movemos un campo al campo de pantalla.
 
<<al igual que sucede lo contrario en lo que respecta a la lógica de negocio (o como se llame). Y me baso en las tropecientas funciones de php para controlar sql inyectado, trabajar con diferentes códigos de caracteres (y en especial utf-8), gestión de cadenas de caracteres de cualquier manera imaginable, gestión de sesiones, etc.>>
 
si, eso es cierto, puedes encontrar mas cosas para php o java que para RPG, pero RPG4 tiene muchas funciones y se pueden crear incluso %BIF propios y hacer procedimientos, comprarlos, pillarlos de por ahi, etc. y ademas contamos con toda la experiencia en hacer virgerias en el 400, porque hablamos de RPG pero por supuesto podemos llamar a programas CL, COBOL, usar dtaara, colas de datos y todo lo existente en el 400.
 
 
<<Y a ello hay que sumar las innumerables bibliotecas de código libre que hay para php, que facilitan por ejemplo la utilización de la tecnología Ajax en las páginas web, imprescindible para minimizar (que no eliminar) los retrasos extra que añade una página web en comparación con una pantalla verde.>>
 
ahi me has dao.
hace unos meses tuvimos algunas discusiones sobre como se podria usar la tecnica Ajax para hacer aplicaciones mas interactivas..... Y YA LA TENEMOS.
Y LAVA MAS BLACO !
Ya tenemos en pruebas (tremendo lo que le vemos a esto) control de transacciones Ajax puras (xmlHttpRequest) dialogando directamente y enviando/recibiendo datos sin hacer refresco de paginas completas! eso es estupendo para hacer validaciones complejas o presentar querys en ventanas sin romper la pagina central etc.
 
tenemos un ejemplo de hace un par de dias, tenemos una demo simple llenando combo boxes (selects) desde el 400, en una panta hay tres combos, ahora llenamos dos por AJAX.
en "enlaces directos:" --> Ventas con frames
en el combo "Familias" dale a bebidas,
eso te llena el siguiente. en ese coge cervezas
ese te llena el siguiente, coge "sin alcohol"
 
esta demo es una combinacion compleja sumando frames diferentes y tecnicas Ajax en algunas de las cosas.
 
a ver si puedo ver de que pongan una demo ajax con un query/table/subfichero con eso de sortear por las columnas.
 
de momento puedes ver
en los de abajo donde dice "enlaces directos:"
- gestion de personal
- boton "trabajadores"
- boton "lista de trabajadores"
- pincha en Guillermina
 


<<No recuerdo donde, pero juraría haber leído que IBM y Zend están trabajando para integrar mucho más php en el I5, mejorando entre otras cosas la llamada a programas / funciones de programas de servicio. Si es así, habrán hecho mi modelo ideal para aplicaciones web. Lástima que nunca lo podré catar :( >>
 
porque dices que no lo podras catar? te jubilas?
 
 
 
--
Saludos/Regards,
Guillermo Andrades
 
 
 
 


 
On 7/12/06, Fernando Pérez <[EMAIL PROTECTED]> wrote:
Bueeeeno, esto va cogiendo color. ¡ Ya era hora. El foro lleva unos meses de lo más apagado!

La verdad es que la opción que propone Guillermo me gusta infinitamente más que tirar de Java para hacer aplicaciones web.

Por cierto, Guillermo, una pregunta: La plantilla del documento html con 'variables incrustadas' va bien para muchas páginas, pero, ¿Como tratáis lo que sería cada registro de un subfichero? ¿Con una plantilla que define lo que sería el registro y que se imprime varias veces?

Comentar que si bien en php se suele mezclar código y html, también se pueden utilizar plantillas. Según para qué caso va mejor una opción u otra.

Sigo coincidiendo con Guillermo en que implementar la lógica de negocio en php no es ni de lejos lo más indicado, aunque sería factible.

En mi opinión, php tiene actualmente dos desventajas :
  • A diferencia de Java no se pueden implementar pools de conexiones, con lo que cada petición requiere abrir una conexión a la base de datos, operación bastante costosa. Eso sí, este problema desaparece (o casi) si php corre en el Iseries donde está la base de datos.
  • Como he dicho antes, no me gustaría tener que implementar en php la lógica de negocio, veo mucho más eficiente y seguro hacerlo en RPG. Y ahí viene el problema: que yo sepa a día de hoy llamar a programas / funciones de programas de servicio desde php es algo farragoso, y no hay posibilidad de recibir información en parámetros.
El segundo problema dificulta lo que sería mi esquema preferido: las pantallas las pinta php (corriendo en el I5) y los datos y las transacciones las gestiona RPG. Porque hay que admitir que php está mucho más preparado que RPG ILE para implementar la capa de presentación (¿Se llama así?) , al igual que sucede lo contrario en lo que respecta a la lógica de negocio (o como se llame). Y me baso en las tropecientas funciones de php para controlar sql inyectado, trabajar con diferentes códigos de caracteres (y en especial utf-8), gestión de cadenas de caracteres de cualquier manera imaginable, gestión de sesiones, etc. Y a ello hay que sumar las innumerables bibliotecas de código libre que hay para php, que facilitan por ejemplo la utilización de la tecnología Ajax en las páginas web, imprescindible para minimizar (que no eliminar) los retrasos extra que añade una página web en comparación con una pantalla verde.

No recuerdo donde, pero juraría haber leído que IBM y Zend están trabajando para integrar mucho más php en el I5, mejorando entre otras cosas la llamada a programas / funciones de programas de servicio. Si es así, habrán hecho mi modelo ideal para aplicaciones web. Lástima que nunca lo podré catar :(


Saludos.

Fernando Pérez 

Cerámica Saloni. Dpto. Auditoría y Organización






Responder a