Transacción de 2 niveles usada como Business Component y manejo de errores.

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Transacción de 2 niveles usada como Business Component y manejo de errores."

Transcripción

1 Transacción de 2 niveles usada como Business Component y manejo de errores. Ya hemos visto anteriormente el concepto general de Business Component y su aplicación en una transacción de un solo nivel. Veamos ahora qué sucede cuando nos enfrentamos a la declaración de una transacción de dos nieveles como Business Component. Analizaremos esta nueva situación a través de la implementación de una nueva funcionalidad en nuestra aplicación. Frecuentemente la Agencia organiza paquetes especiales para grupos reducidos de clientes, y les obsequia una excursión a elección, en este caso a una ciudad italiana. Veamos las transacciones involucradas: Si bien un cliente puede contratar varias excursiones y cada excursión puede ser contrada por varios clientes, en particular cada cliente puede participar solamente de una única excursión obsequiada por la Agencia (al menos por ahora). Cuando las excursiones se dan de alta, se especifica si son gratuitas o no. En tanto, en la transacción Customer hemos definido el atributo fórmula CustomerFreeTrips y la regla: Error( Customer already has registered a free trip. ) if CustomerFreeTrips > 1; para controlar que los clientes no puedan tener más de 1 excursión obsequiada. Ahora pasemos a ver el web panel WPTrips que hemos definido y a través del cual resolveremos el requerimiento solicitado: Page1

2 Este web panel muestra los clientes en un combo dinámico y las excursiones gratuitas a ciudades italianas en una grilla. Hemos declarado esta condición a nivel del grid, para filtrar las excursiones gratuitas y a ciudades del país Italia, cuyo identificador CountryId = 1: También hemos especificado la propiedad Allow Selection del grid, con el valor True, para que el usuario final, pueda seleccionar una línea del grid: La idea entonces es seleccionar un cliente en el combo, una excursión del grid, y que al presionar el botón Confirm dicha excursión se grabe como una línea del cliente, controlando siempre que solamente se registre una excursión gratuita para ese cliente. Qué nos ofrece GeneXus para resolver esto? Utilizaremos la transacción Customer como Business Component. Para eso, declaramos su propiedad Business Component con el valor True: Page2

3 Al grabar, sabemos que GeneXus creó el tipo de dato Customer asociado a la transacción. Pero como se trata de una transacción de dos niveles, creó también el tipo de dato Customer.Trip asociado a las líneas del segundo nivel, que en nuestro ejemplo corresponden a las excursiones del cliente. Bien. Volvamos al web panel. Definimos en este objeto una variable &Customer de tipo Customer, y una variable &onetrip de tipo Customer.Trip: En el evento Enter asociado al botón Confirm, lo primero que hacemos es recuperar de la base de datos toda la información del cliente seleccionado en el combo y la misma queda cargada en memoria en la variable &Customer. Observemos ahora la 2da línea de código: La variable &onetrip es del tipo de datos de una línea de la transacción Customer, es decir que corresponde a 1 excursión del cliente. O sea que esta variable es compuesta de varios miembros que almacenan datos. En particular le estamos asignando al identificador de la excursión, el identificador de la excursión seleccionada en el grid. Page3

4 En la siguiente línea de código estamos usando un método Add, el cual agrega a la lista de excursiones que ya tiene el cliente, la excursión que se le indica entre paréntesis O sea, la variable &onetrip que hemos cargado en la línea de código anterior. Hasta ahora hemos trabajado en memoria. Solamente hemos agregado 1 excursión a 1 cliente. Para realizar la actualización física en la base de datos declaramos el método Save y el comando Commit, necesarios al trabajar con Business Component. Qué sucede con el control de la cantidad de excursiones gratuitas por cliente? Si bien este control se dispara automáticamente al aplicar el método Save a la variable del Business Component, para que el usuario final se entere, debemos obtener y mostrar explícitamente los mensajes que se emitieron. A qué tipo de mensajes nos referimos? A los propios que emite GeneXus por controles de consistencia de los datos, unicidad de valores de llaves primarias, etc. y a los mensajes asociados a nuestras propias reglas Errror y Msg. Cómo hacemos entonces para recuperar los mensajes que ocurrieron? Utilizamos el Tipo de datos estructurado Messages que automáticamente define GeneXus al crear una nueva KB. La finalidad de este tipo de datos colección, es permitirnos acceder a los mensajes que se emiten en la ejecución de un Business Component. De modo que definimos 2 variables: &Messages (del tipo de datos Messages, colección) y &onemessage (del tipo de datos Messages.Message, que es 1 elemento de la colección). Page4

5 Aplicamos el método GetMessages a la variable &Customer y obtenemos la colección de mensajes que ocurrieron y por último, utilizando el comando For elemento in colección, recorremos cada mensaje de la variable colección de mensajes y desplegamos su descripción. Presionemos F5 y veamos cómo funciona. Ejecutamos el web panel WPTrips, elegimos al cliente Parker, seleccionamos la excursión a Roma y presionamos el botón. Vemos que se despliega el mensaje de GeneXus informando que se realizó el registro. Qué sucederá si intentamos asignarle también la excursión a Venecia? Probemos.. Page5

6 Vemos que se despliega el mensaje correspondiente a nuestra regla Error, que controla que el cliente solamente tenga asociada una excursión gratuita. Page6

Ya hemos visto anteriormente el concepto general de Business Component y su aplicación en una transacción de un solo nivel.

Ya hemos visto anteriormente el concepto general de Business Component y su aplicación en una transacción de un solo nivel. Ya hemos visto anteriormente el concepto general de Business Component y su aplicación en una transacción de un solo nivel. Veamos ahora qué sucede cuando nos enfrentamos a la declaración de una transacción

Más detalles

Curso GeneXus - Otro ejemplo de uso de Business components

Curso GeneXus - Otro ejemplo de uso de Business components Curso GeneXus - Otro ejemplo de uso de Business components Vamos a ver a continuación un ejemplo práctico de uso de Business Components. Page1 Comencemos planteando el siguiente escenario: Todo cliente

Más detalles

Otro ejemplo de uso de Business Components

Otro ejemplo de uso de Business Components Otro ejemplo de uso de Business Components Vamos a ver a continuación un ejemplo práctico de uso de Business Components. Comencemos planteando el siguiente escenario: Page1 Todo cliente de la agencia de

Más detalles

Data Providers - Más conocimientos

Data Providers - Más conocimientos Data Providers - Más conocimientos Introduciremos nuevos conocimientos sobre el uso de los Data Providers. Para ello propondremos una implementación práctica en nuestra aplicación. Supongamos que la agencia

Más detalles

Cargando los tipos de datos estructurados

Cargando los tipos de datos estructurados Cargando los tipos de datos estructurados En más de una oportunidad, necesitamos almacenar en memoria una lista de elementos que tienen el mismo tipo de información pero distintos valores guardados. Por

Más detalles

Introducción a Smart Devices

Introducción a Smart Devices Introducción a Smart Devices Hasta el momento hemos construido todos los requerimientos solicitados por la agencia de viajes en lo relativo a la aplicación web a ser utilizada por los usuarios de la propia

Más detalles

Introducción a Smart Devices

Introducción a Smart Devices Introducción a Smart Devices Hasta el momento hemos construido todos los requerimientos solicitados por la agencia de viajes en lo relativo a la aplicación web a ser utilizada por los usuarios de la propia

Más detalles

Actualización de la Base de Datos - Business Components

Actualización de la Base de Datos - Business Components Actualización de la Base de Datos - Business Components Hasta el momento hemos visto que las transacciones permiten a los usuarios, ingresar, modificar y eliminar datos, en las tablas de la base de datos

Más detalles

Administrando las bases de conocimiento (GXserver)

Administrando las bases de conocimiento (GXserver) Administrando las bases de conocimiento (GXserver) Cuando desarrollamos una aplicación con GeneXus, ya sea en equipo o en forma individual, necesitamos mantener la KB siempre accesible y actualizada. GXserver

Más detalles

Data Provider que carga colección con valores fijos (no extraídos de la base de datos)

Data Provider que carga colección con valores fijos (no extraídos de la base de datos) Data Provider que carga colección con valores fijos (no extraídos de la base de datos) Hasta el momento hemos visto ejemplos de uso de Data Providers, que han accedido siempre a la base de datos para recuperar

Más detalles

Reglas en transacciones - Más conocimientos

Reglas en transacciones - Más conocimientos Reglas en transacciones - Más conocimientos En un video anterior hemos visto que en las transacciones, los controles que nos solicitan los usuarios o que debemos validar, se definen en la sección de RULES.

Más detalles

Agregando funcionalidad con patrones

Agregando funcionalidad con patrones Agregando funcionalidad con patrones Los patrones nos permiten potenciar nuestra aplicación, agregando nuevas funcionalidades en forma muy sencilla! Al aplicar un patrón, GeneXus crea por nosotros todos

Más detalles

Actualización de la Base de Datos - Business Components

Actualización de la Base de Datos - Business Components Actualización de la Base de Datos - Business Components Hasta el momento hemos visto que las transacciones permiten a los usuarios, ingresar, modificar y eliminar datos, en las tablas de la base de datos

Más detalles

Diseñando más transacciones

Diseñando más transacciones Diseñando más transacciones Pasemos a crear una transacción de países: la llamamos Country Page1 Definimos aquí un atributo identificador de país CountryId Y vemos que Genexus le asignó el dominio Id y

Más detalles

Diseñando más transacciones

Diseñando más transacciones Diseñando más transacciones Pasemos a crear una transacción de países: la llamamos Country Page1 Definimos aquí un atributo identificador de país CountryId Page2 Y vemos que Genexus le asignó el dominio

Más detalles

Diseñando más transacciones

Diseñando más transacciones Page1 Diseñando más transacciones Pasemos a crear una transacción de países: la llamamos Country Definimos aquí un atributo identificador de país CountryId Y vemos que Genexus le asignó el dominio Id Page2

Más detalles

Actualización de la Base de Datos - For each, delete, new

Actualización de la Base de Datos - For each, delete, new Actualización de la Base de Datos - For each, delete, new Hasta el momento, para actualizar los datos de la base de datos, hemos empleado las transacciones en sus 2 formas de uso: Ejecutando su pantalla

Más detalles

Objeto Query - Más conocimientos

Objeto Query - Más conocimientos Objeto Query - Más conocimientos Hemos visto anteriormente las generalidades del objeto Query, los componentes de su estructura y la forma de verlo en ejecución a través del uso del control Query Viewer.

Más detalles

Actualización de la Base de Datos - For each, delete, new

Actualización de la Base de Datos - For each, delete, new Actualización de la Base de Datos - For each, delete, new Hasta el momento, para actualizar los datos de la base de datos, hemos empleado las transacciones en sus 2 formas de uso: Ejecutando su pantalla

Más detalles

Consulta con salida pivot table

Consulta con salida pivot table Consulta con salida pivot table Para comenzar recordemos que la base de conocimiento TravelAgency permite gestionar la actividad de una agencia de viajes... y para la misma ya hemos creado la metadata,

Más detalles

Diseñando la primera transacción

Diseñando la primera transacción Diseñando la primera transacción Luego de creada la base de conocimiento, el siguiente paso consiste en describir a los objetos de la realidad mediante objetos GeneXus.. Page1 Para identificar a los objetos

Más detalles

Diseñando la primera transacción

Diseñando la primera transacción Diseñando la primera transacción Luego de creada la base de conocimiento, el siguiente paso consiste en describir a los objetos de la realidad mediante objetos GeneXus.. Para identificar a los objetos

Más detalles

Definiendo reglas. En las transacciones, las reglas que deben cumplirse, o los controles que nos solicitan validar, se definen en la sección de Rules.

Definiendo reglas. En las transacciones, las reglas que deben cumplirse, o los controles que nos solicitan validar, se definen en la sección de Rules. Definiendo reglas Además de todos los controles automáticos que GeneXus incluye en las aplicaciones que genera, hay ciertos controles específicos que los usuarios nos piden validar. En las transacciones,

Más detalles

Web panel y tabla base

Web panel y tabla base Web panel y tabla base En este video analizaremos en detalle algunas ideas que en videos anteriores apenas hemos sobrevolado. Por ejemplo, a qué se le llama tabla base de un web panel? Todo web panel tiene

Más detalles

Tipos de datos compuestos

Tipos de datos compuestos Tipos de datos compuestos Hasta ahora hemos empleado siempre tipos de datos simples. Hemos definido atributos y dominios de tipo Numeric, de tipo Character y también contamos con otros tipos de datos simples

Más detalles

Definición de reglas

Definición de reglas Definición de reglas Además de todos los controles automáticos que GeneXus incluye en las aplicaciones que genera, hay ciertos controles específicos que los usuarios desean efectuar. En las transacciones,

Más detalles

Cláusula Unique. La cláusula Unique permite mencionar atributos cuyos valores no deben salir duplicados en el resultado de la consulta.

Cláusula Unique. La cláusula Unique permite mencionar atributos cuyos valores no deben salir duplicados en el resultado de la consulta. Cláusula Unique En ocasiones necesitamos definir ciertas consultas, que requieren navegar determinada tabla, pero necesitamos que si un mismo atributo tiene almacenado el mismo valor para varios registros,

Más detalles

Usando las Apis del GAM

Usando las Apis del GAM Usando las Apis del GAM Recordemos que las APIs son funciones, que en este caso en el que se ha habilitado el GAM en una base de conocimiento, hacen posible la comunicación con la base de datos del GAM,

Más detalles

Diseñando más transacciones

Diseñando más transacciones Diseñando más transacciones Pasemos a crear una transacción de países. La llamamos Country: Definimos aquí un atributo identificador de país CountryId Y vemos que Genexus le asignó el dominio Id y definimos

Más detalles

Introduciremos nuevos conocimientos sobre el uso de los Data Providers.

Introduciremos nuevos conocimientos sobre el uso de los Data Providers. Introduciremos nuevos conocimientos sobre el uso de los Data Providers. Recordemos que el objetivo de un Data Provider es devolver cargada una estructura de datos en memoria (que puede ser colección o

Más detalles

Examen "Analista JUNIOR GX X Ev1"

Examen Analista JUNIOR GX X Ev1 Examen "Analista JUNIOR GX X Ev1" Este examen NO resta puntos por respuestas incorrectas. Duración máxima del examen (en minutos):90 Porcentaje mínimo de aprobación:70 Pedimos por favor apaguen los teléfonos

Más detalles

Introducción a Web Panels

Introducción a Web Panels Introducción a Web Panels El web panel es el objeto más flexible que provee GeneXus. Como ya habíamos indicado, es básicamente una página web que nos permite resolver variadas funcionalidades, como solicitarle

Más detalles

Consideremos que un cliente realiza varias excursiones y va acumulando millas.

Consideremos que un cliente realiza varias excursiones y va acumulando millas. Consideremos que un cliente realiza varias excursiones y va acumulando millas. Para implementar la acumulación de millas al cliente, declaramos en la transacción Customer la siguiente regla: Add(CustomerTripMiles,

Más detalles

Cargando los tipos de datos compuestos

Cargando los tipos de datos compuestos Cargando los tipos de datos compuestos En más de una oportunidad, necesitamos almacenar en memoria una lista de elementos que tienen el mismo tipo de información pero distintos valores guardados. Por ejemplo,

Más detalles

Cargando Tipos de Datos Compuestos (SDT) mediante Data Providers

Cargando Tipos de Datos Compuestos (SDT) mediante Data Providers Cargando Tipos de Datos Compuestos (SDT) mediante Data Providers En más de una oportunidad necesitamos almacenar en memoria una lista de elementos. Por ejemplo, la agencia de viajes puede necesitar realizar

Más detalles

Dos formas de devolver una colección con un Data Provider

Dos formas de devolver una colección con un Data Provider Dos formas de devolver una colección con un Data Provider Los Data Provider son objetos versátiles que con un lenguaje declarativo nos facilitan la carga de estructuras, tanto ítems simples como colecciones

Más detalles

Fórmulas Globales. Page1. Video filmado con GeneXus X Evolution 2

Fórmulas Globales. Page1. Video filmado con GeneXus X Evolution 2 Fórmulas Globales Muchas veces necesitamos que la aplicación efectúe un cálculo, que involucra valores de determinados atributos, constantes, y/o funciones. Para estos casos, GeneXus nos provee las Fórmulas

Más detalles

Tipos de datos estructurados

Tipos de datos estructurados Tipos de datos estructurados Hasta ahora hemos empleado siempre tipos de datos simples. Hemos definido atributos y dominios de tipo Numeric, de tipo Character y también contamos con otros tipos de datos

Más detalles

Convirtiendo el modelo en una aplicación funcional

Convirtiendo el modelo en una aplicación funcional Convirtiendo el modelo en una aplicación funcional En videos anteriores hemos modelado el proceso de reserva de pasajes de la Agencia de Viajes mediante un diagrama de procesos de negocios, hemos visto

Más detalles

Consulta con salida Table

Consulta con salida Table Consulta con salida Table El concepto de tabla para GXquery, es el general de tabla, es decir: un conjunto de elementos ordenados en filas y columnas. La cantidad de columnas es fija mientras que la cantidad

Más detalles

Momentos de disparo de reglas en transacciones

Momentos de disparo de reglas en transacciones Momentos de disparo de reglas en transacciones Cuando vimos las reglas que podemos escribir en las transacciones, dijimos que no era necesario especificar cuándo debe ejecutarse cada una de ellas, ya que

Más detalles

Momentos de disparo de reglas en transacciones

Momentos de disparo de reglas en transacciones Momentos de disparo de reglas en transacciones Cuando vimos las reglas que podemos escribir en las transacciones, dijimos que no era necesario especificar cuándo debe ejecutarse cada una de ellas, ya que

Más detalles

Agregando funcionalidad con patrones

Agregando funcionalidad con patrones Agregando funcionalidad con patrones Los patrones nos permiten potenciar nuestra aplicación, agregando nuevas funcionalidades en forma muy sencilla. Al aplicar un patrón, GeneXus crea por nosotros todos

Más detalles

Transacción base. A partir de GeneXus X Ev3, se incorpora el concepto de transacción base.

Transacción base. A partir de GeneXus X Ev3, se incorpora el concepto de transacción base. Transacción base A partir de GeneXus X Ev3, se incorpora el concepto de transacción base. Esto brinda la posibilidad de indicar explícitamente el nombre de la transacción cuya tabla física asociada se

Más detalles

Comando For Each simple y For Each anidado para listar info relacionada

Comando For Each simple y For Each anidado para listar info relacionada Comando For Each simple y For Each anidado para listar info relacionada En otro video hemos visto cómo definir un procedimiento, el cual contenía en su source un único comando For each, que accedía a los

Más detalles

Qué son los subtipos?

Qué son los subtipos? Qué son los subtipos? Hasta ahora hemos visto que GeneXus establece relaciones entre transacciones -y entre tablas- basándose en los nombres de atributos que encuentra iguales. Por ejemplo, en la transacción

Más detalles

Uso de la API del GAM

Uso de la API del GAM Uso de la API del GAM En videos anteriores, vimos como construir una aplicación para una inmobiliaria, con una parte Web y una parte para Smart Devices Y luego vimos como resolver la Seguridad de ambas

Más detalles

Behavior: Caching. Video filmado con GeneXus X Evolution 3

Behavior: Caching. Video filmado con GeneXus X Evolution 3 Behavior: Caching En este video veremos cómo habilitar o deshabilitar el caché de los datos navegados en el dispositivo, teniendo en cuenta aplicaciones de arquitectura online. Existen varios escenarios

Más detalles

Administrando las bases de conocimiento

Administrando las bases de conocimiento Administrando las bases de conocimiento A lo largo de este curso, en el cual fuimos desarrollando una aplicación para una agencia de viajes, hemos utilizado GXserver. Lo primero que hicimos en lo que respecta

Más detalles

Comunicación entre objetos

Comunicación entre objetos Comunicación entre objetos En situaciones anteriores nos hemos encontrado con la necesidad de llamar a un objeto, desde otro. Por ejemplo en el evento Enter del web panel EnterPercentage2, estamos llamando

Más detalles

Edición y personalización de la instancia del pattern Work With aplicado a una transacción

Edición y personalización de la instancia del pattern Work With aplicado a una transacción Edición y personalización de la instancia del pattern Work With aplicado a una transacción Ya hemos trabajado previamente con el pattern Work With. Hemos visto cómo aplicarlo y cuáles son las funcionalidades

Más detalles

Ahondaremos acerca de este otro uso posible de web panels sin tabla base más adelante.

Ahondaremos acerca de este otro uso posible de web panels sin tabla base más adelante. Si bien los ejemplos que hemos visto hasta el momento de web panels SIN TABLA BASE son de casos en los que necesitamos solicitar datos al usuario, también existen casos de uso de web panels sin tabla base

Más detalles

Hasta el momento hemos visto ejemplos de aplicación de Data Provider que requieren acceder a la base de datos para recuperar información.

Hasta el momento hemos visto ejemplos de aplicación de Data Provider que requieren acceder a la base de datos para recuperar información. Hasta el momento hemos visto ejemplos de aplicación de Data Provider que requieren acceder a la base de datos para recuperar información. Pero también es posible utilizar un Data Provider que devuelva

Más detalles

Examen "Analista GX X"

Examen Analista GX X Examen "Analista GX X" Sobre las preguntas de múltiple opción: - Hay una sola opción correcta. - Los puntos de cada pregunta aparecen al principio de la pregunta. - Asuma que todas las preguntas están

Más detalles

Fórmulas Locales. Page1. Video filmado con GeneXus X Evolution 2. Veremos ahora qué es una fórmula local.

Fórmulas Locales. Page1. Video filmado con GeneXus X Evolution 2. Veremos ahora qué es una fórmula local. Fórmulas Locales Veremos ahora qué es una fórmula local. Una fórmula local es una fórmula que declaramos como instrucción puntual, dentro de determinado código, como ser en el source de un procedimiento,

Más detalles

Supongamos que queremos definir un botón en la pantalla WWCountry, que invoque un listado pdf (objeto procedimiento) previamente definido.

Supongamos que queremos definir un botón en la pantalla WWCountry, que invoque un listado pdf (objeto procedimiento) previamente definido. Supongamos que queremos definir un botón en la pantalla WWCountry, que invoque un listado pdf (objeto procedimiento) previamente definido. Para eso nuevamente volvemos a editar la instancia del pattern,

Más detalles

Examen "Analista JUNIOR GX X Ev1"

Examen Analista JUNIOR GX X Ev1 Examen "Analista JUNIOR GX X Ev1" Sobre las preguntas de múltiple opción: - Hay una sola opción correcta. - Seleccione en la propia hoja del examen la opción que elija. - Los puntos de cada pregunta aparecen

Más detalles

Base Tables and Navigation

Base Tables and Navigation Base Tables and Navigation Por su importancia, repasemos lo que hacen las tablas base y las navegaciones de los objetos GeneXus para Smart Devices. Aquí vemos un ejemplo, donde desde un Panel for Smart

Más detalles

Momentos de disparo de reglas en transacciones

Momentos de disparo de reglas en transacciones Momentos de disparo de reglas en transacciones Cuando vimos las reglas que podemos escribir en las transacciones, dijimos que no era necesario especificar cuando debe ejecutarse cada una de ellas, ya que

Más detalles

Qué son los subtipos?

Qué son los subtipos? Page1 Qué son los subtipos? Hasta ahora hemos visto que GeneXus establece relaciones entre transacciones -y entre tablas- basándose en los nombres de atributos que encuentra iguales. Por ejemplo, en la

Más detalles

Reporting (objeto Query)

Reporting (objeto Query) Reporting (objeto Query) En muchas ocasiones necesitamos realizar consultas a la base de datos para analizar la información y poder tomar decisiones. Podemos necesitar agrupar la información por uno o

Más detalles

Ejecutando la aplicación por primera vez

Ejecutando la aplicación por primera vez Ejecutando la aplicación por primera vez Presionamos la tecla de función F5 y se nos presenta el siguiente diálogo: Recordemos que al momento de crear nuestra base de conocimiento, ya se nos había solicitado

Más detalles

Qué son los subtipos?

Qué son los subtipos? Qué son los subtipos? Hasta ahora hemos visto que GeneXus establece relaciones entre transacciones -y entre tablas- básandose en los nombres de atributos que encuentra iguales. Por ejemplo, en la transacción

Más detalles

Consulta con salida Chart (Parte I)

Consulta con salida Chart (Parte I) Consulta con salida Chart (Parte I) Ya hemos visto en videos anteriores la creación de consultas con salida Table y Pivot table. Veamos ahora la creación de una consulta con salida Chart, o sea, vista

Más detalles

Testeando las aplicaciones (GXtest)

Testeando las aplicaciones (GXtest) Testeando las aplicaciones (GXtest) A medida que vamos haciendo crecer nuestra aplicación para la agencia de viajes, hemos ido agregando funcionalidades y haciendo modificaciones a cosas que habíamos implementado

Más detalles

Cuando el web panel tiene un grid, entonces para determinar tabla base GeneXus observa lo que se indica arriba.

Cuando el web panel tiene un grid, entonces para determinar tabla base GeneXus observa lo que se indica arriba. Habíamos visto el caso de Web Panel con atributos sueltos en el form, sin grid. También el de un Web Panel con un grid con atributos y también sin atributos. Y habíamos dejado planteada la pregunta: cuando

Más detalles

Acceso a bases de datos externas

Acceso a bases de datos externas Acceso a bases de datos externas Muchas veces necesitamos acceder a bases de datos externas desde nuestras aplicaciones GeneXus. Por ejemplo, podemos necesitar cargar datos en tablas de nuestra base de

Más detalles

Inicio de un proceso desde un objeto GeneXus, usando la API de Workflow

Inicio de un proceso desde un objeto GeneXus, usando la API de Workflow Inicio de un proceso desde un objeto GeneXus, usando la API de Workflow La agencia de viajes decidió modificar su proceso de reserva de pasajes e incorporar algunas funcionalidades nuevas. En primer lugar,

Más detalles

Componentes de pantalla (Extended controls)

Componentes de pantalla (Extended controls) Componentes de pantalla (Extended controls) Además de los controles comunes que tenemos disponibles en la toolbox GeneXus nos permite crear nuestros propios controles o usar controles creados por otros,

Más detalles

Patterns: Escenario. Paginación

Patterns: Escenario. Paginación 252 : Escenario Filtro sobre los datos Paginación Teniendo la Transacción Country y la Transacción Customer, queremos lograr hacer la aplicación más vistosa, con consultas con vistas más completas y con

Más detalles

Componentes de pantalla (Extended controls)

Componentes de pantalla (Extended controls) Componentes de pantalla (Extended controls) Además de los controles comunes que tenemos disponibles en la toolbox, GeneXus nos permite crear nuestros propios controles o usar controles creados por otras

Más detalles

Comando for each anidado para listar info agrupada

Comando for each anidado para listar info agrupada Comando for each anidado para listar info agrupada Volvamos ahora a la sección Source del procedimiento Una cosa que nos había quedado pendiente es que queríamos que las atracciones salgan ordenadas en

Más detalles

Uso de la API del GAM

Uso de la API del GAM Uso de la API del GAM Recordemos que las APIs son propiedades y métodos que el GAM disponibiliza para que las aplicaciones que quieran utilizarlo puedan interactuar con él, haciendo posible la comunicación

Más detalles

Ciclos de prototipado y producción

Ciclos de prototipado y producción Ciclos de prototipado y producción Para poder loguearnos con distintos usuarios, en lugar de hacerlo siempre con el usuario administrador, primero debemos modificar el modo de ejecución de Worflow, en

Más detalles

Curso GeneXus - Haciendo crecer la aplicación

Curso GeneXus - Haciendo crecer la aplicación Curso GeneXus - Haciendo crecer la aplicación Al mostrarle la aplicación que tenemos hasta el momento a los usuarios de la Agencia de Viajes, nos dan su visto bueno y nos recuerdan que para cada atracción

Más detalles

Analicemos a modo de ejemplo la regla señalizada en la transacción Flight en la diapositiva.

Analicemos a modo de ejemplo la regla señalizada en la transacción Flight en la diapositiva. GeneXus determina ejecutar cada regla definida en una transacción, en el primer momento en el cual tiene todos los valores involucrados como para ejecutarla. La mayoría de las veces, las reglas se ejecutan

Más detalles

Ejecutando la aplicación por primera vez

Ejecutando la aplicación por primera vez Ejecutando la aplicación por primera vez Presionamos la tecla de función F5 y se nos presenta el siguiente cuadro de diálogo: Recordemos que al momento de crear nuestra base de conocimiento, ya se nos

Más detalles

Cómo enviar un mail automático y ejecución del acceso a la API programado previamente

Cómo enviar un mail automático y ejecución del acceso a la API programado previamente Cómo enviar un mail automático y ejecución del acceso a la API programado previamente Hasta ahora cumplimos con el primer requerimiento de la agencia, relacionado al ingreso de una reserva por parte del

Más detalles

Tareas multi-instanciadas y mapeo de datos relevantes

Tareas multi-instanciadas y mapeo de datos relevantes Tareas multi-instanciadas y mapeo de datos relevantes En videos previos, hemos asociado las tareas del diagrama de reserva de pasajes de la Agencia de Viajes a objetos GeneXus, convirtiendo el modelo del

Más detalles

Hasta ahora hemos visto que por cada objeto transacción se crea una tabla por cada nivel, para almacenar sus datos y luego recuperarlos.

Hasta ahora hemos visto que por cada objeto transacción se crea una tabla por cada nivel, para almacenar sus datos y luego recuperarlos. Hasta ahora hemos visto que por cada objeto transacción se crea una tabla por cada nivel, para almacenar sus datos y luego recuperarlos. La transacción, en su forma canónica, se utiliza para poder realizar

Más detalles

Creación de la Knowledge Base

Creación de la Knowledge Base Creación de la Knowledge Base Vamos a ejecutar a GeneXus Este número que vemos aquí, nos indica cuál es la versión de GeneXus que estamos ejecutando. Es importante estar siempre actualizados en la última

Más detalles

Manual de Usuario. Identificación de la Ejecución del Gasto en el SIAF por Dispositivos Legales Módulo Administrativo

Manual de Usuario. Identificación de la Ejecución del Gasto en el SIAF por Dispositivos Legales Módulo Administrativo Manual de Usuario Identificación de la Ejecución del Gasto en el SIAF por Dispositivos Legales Módulo Administrativo (Versión 17.10.00) Para uso de: Gobierno Nacional, Regional, Local y Mancomunidades

Más detalles

Eventos en Smart Devices

Eventos en Smart Devices Eventos en Smart Devices Tenemos eventos cuyo código se ejecuta en el servidor y eventos cuyo código se ejecuta en el cliente (es decir, en el dispositivo). Queremos abordar ahora el tipo de acciones que

Más detalles

Identificando atributos disponibles

Identificando atributos disponibles Identificando atributos disponibles Explicaremos ahora la definición de tabla base y tabla extendida. Son 2 conceptos muy sencillos, y es importante entenderlos, ya que se usan mucho en el uso de la herramienta

Más detalles

Introducción a procedimientos, listados y comando For each

Introducción a procedimientos, listados y comando For each Introducción a procedimientos, listados y comando For each Pasemos a conocer a los objetos de tipo Procedimiento, que podemos definir en una base de conocimiento GeneXus. Este tipo de objeto nos permite

Más detalles

Overview final. Vimos que a partir de los objetos de tipo Transacción definidos en la base de conocimiento se construía el modelo de datos

Overview final. Vimos que a partir de los objetos de tipo Transacción definidos en la base de conocimiento se construía el modelo de datos Overview final A lo largo de este curso nos hemos detenido en los principales objetos GeneXus que permiten implementar las funcionalidades más importantes que hacen a una aplicación web y mencionamos también

Más detalles

PowerPoint 2010 Edición del contenido

PowerPoint 2010 Edición del contenido PowerPoint 2010 Edición del contenido Contenido CONTENIDO... 1 AGREGAR TEXTO A UNA DIAPOSITIVA... 2 MOVER Y COPIAR INFORMACIÓN... 5 PANEL DE TAREAS PORTAPAPELES... 7 TRABAJO CON DIAPOSITIVAS... 8 EDICIÓN

Más detalles

Demo: empezando a desarrollar la aplicación en su parte móvil

Demo: empezando a desarrollar la aplicación en su parte móvil Demo: empezando a desarrollar la aplicación en su parte móvil En el video anterior, creamos una nueva kb: vimos los dominios predefinidos (entre ellos los semánticos): Page1 cambiamos la propiedad Deploy

Más detalles

Smooth web user experience

Smooth web user experience Smooth web user experience Se entiende por experiencia de usuario, a la percepción que le genera al usuario el hecho de interactuar con un entorno, aplicación o dispositivo... y eso dependerá de todo un

Más detalles

Historial de Revisiones

Historial de Revisiones Historial de Revisiones Fecha Versión Descripción Elaborado por Revisado por 12/10/2012 1.0 09/10/2015 2.0 Primera versión del manual de usuario del Cuadro de Necesidades del Modulo de Logística Actualización

Más detalles

Trabajando con documentos

Trabajando con documentos Trabajando con documentos Continuando con la asociación de objetos GeneXus a las tareas del diagrama de validación de la reserva, seguiremos con las tareas interactivas Add customer information required

Más detalles

Qué son las fórmulas?

Qué son las fórmulas? Qué son las fórmulas? Muchas veces necesitamos que la aplicación efectúe un cálculo que involucra valores de determinados atributos, constantes, y/o funciones. Para estos casos, GeneXus nos provee las

Más detalles

Ejecutando la aplicación por primera vez

Ejecutando la aplicación por primera vez Ejecutando la aplicación por primera vez Queremos probar la transacción que creamos en los pasos anteriores. Para ello, le vamos a pedir a GeneXus que construya la aplicación, que cree la base de datos,

Más detalles

Creación de la KB. Page1. Video filmado con GeneXus X Evolution 3. Vamos a ejecutar a GeneXus

Creación de la KB. Page1. Video filmado con GeneXus X Evolution 3. Vamos a ejecutar a GeneXus Creación de la KB Vamos a ejecutar a GeneXus Este número que vemos aquí, nos indica cuál es la versión de GeneXus que estamos ejecutando. Es importante estar siempre actualizados en la última versión.

Más detalles

Manual de Usuario I Módulo de Programación Multianual

Manual de Usuario I Módulo de Programación Multianual Manual de Usuario I Ambiente: Pliego pág. 1 INDICE 1. Usuario Pliego... 3 1.1. Acceso al Sistema y Entorno de Trabajo... 3 1.2. Mantenimiento de Maestros... 6 1.2.1. Generar código para Proyectos... 6

Más detalles

Introducción GAM. La gran mayoría de las aplicaciones modernas necesitan algún esquema de login, autenticación y autorización.

Introducción GAM. La gran mayoría de las aplicaciones modernas necesitan algún esquema de login, autenticación y autorización. Introducción GAM La gran mayoría de las aplicaciones modernas necesitan algún esquema de login, autenticación y autorización. Para cubrir estas necesidades, GeneXus ofrece un módulo de seguridad, llamado

Más detalles