6.procedimientos en gene xus

16
6.Procedimientos en GeneXus Ramiro Estigarribia Canese

Transcript of 6.procedimientos en gene xus

6.Procedimientos en GeneXus

Ramiro Estigarribia Canese

Necesidades en Aplicaciones.En muchas aplicaciones tendremos la necesidad de:1. Navegar los registros de cierta tabla, que cumplan

con determinadas condiciones.2. Navegar cierta tabla e imprimir todos sus datos en

un listado PDF, ordenados por algún criterio.3. Definir procesos específicos que necesitemos

resolver, que contengan búsquedas, cálculos, actualizaciones a la base de datos y que vayan imprimiendo información.

¿Qué son los Procedimientos?➔ Las 3 necesidades las resolvemos creando

Procedimientos en nuestra base de conocimientos (objeto GeneXus Procedure).

➔ Podemos entonces decir que los Procedimientos (o Procedures) permiten definir procesos para acceder y navegar tablas de la base de datos con distintos objetivos.

Ejemplo: Listar Atracciones Turísticas.Se desea listar las atracciones turísticas de la agencia de viajes, ordenadas alfabéticamente.

Partes de un Procedimiento.➔ El orden de los printBlocks en el “Layout” no es

importante. ➔ En el código que escribimos es donde indicamos

cuándo debe imprimirse cada printBlock.➔ Para imprimir los títulos: print Nombre➔ Para imprimir datos: For each Nombre_de_la_Transacción

print Nombre_de_la_TransacciónEnd for

For each➔ En la implementación que hemos resuelto,

el For each tiene indicado recorrer la transacción Attraction.

➔ Y los atributos que el For each tiene son: AttractionId, AttractionName y CountryName.

➔ AttractionId y AttractionName están en la tabla ATTRACTION, y CountryName se encuentra en la tabla COUNTRY.

➔ Estos tres atributos están contenidos en la tabla extendida de ATTRACTION.

¿Cómo sabe GeneXus qué tabla tiene que recorrer?➔ La tabla a recorrer queda determinada por el

nombre de la transacción indicado al lado del For each.

➔ La tabla física asociada a dicha transacción, será la tabla que decidirá recorrer GeneXus.

➔ El conjunto de atributos que están entre el For each y el Endfor deber pertenecer a la tabla extendida de dicha tabla base a recorrer.

Para ejecutar el listado, sobre la pestaña del objeto, botón derecho / Run with this only