comunicacion entre objetos
entre objetos
109
Comunicación entre objetos
Data Provider
Procedimiento
Transacción
Web Panel
Procedimiento PDF
Los objetos GeneXus pueden comunicarse entreellos o con otros programas externos.
Un objeto GeneXus puede llamar o ser llamado por otro objeto, intercambiando información a través
de parámetros.
Veremos a continuación cómo invocar desde unobjeto a otro, y cómo especificar los parámetros (en
el objeto llamador y en el llamado) para el intercambio de la información.
El esquema presentado arriba ilustra las posibles interacciones entreobjetos GeneXus para una
aplicación Web. Obsérvese que la flecha simple entre Web Panel y Procedimiento PDF (así como
entre Transacción y Procedimiento PDF) indica que un Web Panel podrá invocar a unProcedimiento
PDF pero un Procedimiento PDF no podrá invocar a un Web Panel (o transacción Web).
110
Comunicación entre objetos
2 posibilidades:
1) PgmName.Call(par , …, par )
1
N
Parm(par1, …, parN);
/*Invocación a PgmName*/
/*Declaración de parámetros
en el objeto invocado*/
puede omitirse
2)
att|&var = PgmName.Udp(par1, …, parN) /*Invocación a PgmName*/
Parm(par1, …,parN , parsalida);
/*Declaración de
parámetros
en el objeto invocado*/
CALL - Permite invocar a un objeto GeneXus o a un programa externo, tanto sin pasarle
parámetros, como pasándole.
UDP(User Defined Procedure) - Permite invocar a un objeto GeneXus o programa externo tanto
sin pasarle parámetros como pasándole, y con la particularidad de que el programa llamado
retornaránecesariamente al menos un valor al programa que lo invocó. En ambientes Web, un
objeto con interfaz una vez invocado no devuelve el control al llamdor, por lo que UDP se utiliza
únicamente para invocar aProcedimientos y Data Providers (debido a que estos cumplen la
condición de ejecutar y devolver el control al llamador).
Una invocación (ya sea con CALL o UDP) podrá escribirse en distintas partes del...
Regístrate para leer el documento completo.