Entrevista a Nicolás Jodal
¿Cómo graba XML una aplicación GeneXus?
Hay dos líneas para trabajar: desde consultas dinámicas o desde programas GeneXus.
¿Cómo funciona una consulta dinámica?
Se realizan consultas a un servidor que responde con los datos en XML. Las consultas pueden ser totalmente dinámicas, es decir que el usuario final se conecte a la base de datos y haga cualquier consulta, o definir consultas catalogadas que el usuario puede ejecutar.
En ambos casos no se necesita programación GX por detrás, alcanza con tener una base de conocimiento GX o una metadata GX, otra de las cosas en las que estamos trabajando.
¿En qué servidor corren las consultas totalmente dinámicas?
Como hay que conectarse con una base de conocimientos o una metadata hecha en GX, tiene que estar en una plataforma Windows y por lo tanto el servidor de XML dinámico tiene que correr en Windows (NT 2000 u otro)
¿Las consultas catalogadas también deben correr en plataforma Windows?
Estamos tratando que el ejecutador de la consulta catalogada no tenga por qué estar en un servidor Windows, estamos trabajando en separar esos dos componentes.
¿Cómo hacemos dentro de un programa GeneXus para grabar un archivo XML?
Hay dos caminos en los que todavía no nos pusimos de acuerdo en cuál tomar. Una opción es ver el reporte como algo que muestra datos y pedirle al programa GX que muestre estos datos en formato XML, tomar los print block y en vez de imprimirlos, cambiarlos a formato XML. Esto es viable porque GX tiene el conocimiento de la estructura jerárquica.
La segunda opción es mantener la estructura del Report Wizard, almacenada y que se defina todo a partir de la estructura (sería como un generador de archivos XML)
Pero todavía no está la decisión del camino a seguir.
¿Cómo recibo XML en un programa GeneXus?
Como entrada de una transacción, algo así como transformar las transacciones en algo Batch. Esta idea es atractiva porque reaprovechamos toda la lógica que tenemos en las transacciones. Pero si sólo se quiere leer, sin entradas en la base de datos, por ejemplo para mostrarla en un Web panel, entonces debería tener en los reportes o en los propios Web Panels una forma de leer XML. Ahí se nos abren algunas opciones. Podemos decir, XML es data view tipo XML y utilizamos lo mismo que ahora, o ir por el camino de los eventos: decir este es un archivo XML, lealo y dispare un evento cada vez que pase tal cosa (terminé de leer un nivel de XML, por ejemplo)
¿Y GXplorer?
Con respecto a GXplorer trabajamos en consultas sobre la base operacional y si bien hoy GXplorer corre bajo Excel, queremos que también corra bajo un navegador al escribir una dirección (Gxplorer en Internet)