Modelado de patrones de tiempo
|
|
- Bernardo Acuña Romero
- hace 6 años
- Vistas:
Transcripción
1 Modelado de patrones de tiempo En el modelado de un proceso de negocios, frecuentemente necesitamos representar situaciones relacionadas con el tiempo, como esperas, demoras, vencimientos o fechas límites para las actividades de dicho proceso. La forma de modelar estas situaciones es utilizar eventos del tipo Timer y dependiendo del tipo de situación que queremos representar, es el patrón que utilizaremos para modelarla. Veamos distintos casos con un ejemplo. Continuando con el modelado de procesos de la Agencia de Viajes, la misma nos solicitó que querían representar la venta de un vuelo chárter, como promoción de cierta atracción turística. El proceso completo, debe tener una duración máxima de 3 meses y al alcanzarse ese tiempo, el proceso debe terminar definitivamente. La venta del chárter comienza con la publicación de la promoción en distintos medios de prensa, redes sociales y páginas web. El objetivo es poder vender la totalidad de los cupos disponibles en el vuelo, de forma de maximizar la ganancia. Una semana después que se lanza la promoción, se comienza con la venta de los pasajes. Page1
2 Cuando se logra vender la totalidad de los cupos, se habilita el vuelo (lo que implica que el vuelo efectivamente se llevará a cabo) y se elimina la promoción en los distintos medios donde fue publicada. Durante la actividad de la venta de los cupos del vuelo, a medida que va pasando el tiempo, se toman ciertas acciones. Por ejemplo, si faltan 30 días para terminar el proceso de venta y todavía no se vendieron todas las plazas del vuelo, se dispara un aviso que inicia un subproceso de aumento de la publicidad de la promoción en los distintos canales de venta. Cuando faltan 10 días para terminar el proceso y aún quedan lugares en el vuelo, se dispara un evento que no interrumpe la tarea de venta, pero inicia una actividad de rebaja de los precios en las publicaciones, de forma de captar más pasajeros, ya que el objetivo es vender la máxima cantidad posible de plazas. Page2
3 Al faltar 3 días para cumplirse los 3 meses de la promoción, se interrumpe la tarea de venta y se evalúa si se vendió más del 95% de los lugares disponibles. Si se logró este porcentaje, se cierra la venta del vuelo y se habilita al mismo, eliminándose las promociones y finalizando el proceso. Si no se llegó al 95% de las ventas, se solicita la autorización de la gerencia de la Agencia de viajes para ver si la misma autoriza que el vuelo salga igual o si el vuelo chárter se cancela por no cumplirse con el objetivo de venderse la mayoría de los cupos disponibles. En caso de que se autorice el vuelo, se habilita al mismo, se elimina la promoción y finaliza el proceso. En caso de que la gerencia no autorice el vuelo, directamente se finaliza la promoción del mismo y el proceso finaliza. Page3
4 Vamos a ver ahora cómo modelamos cada una de estas situaciones relacionadas con el tiempo. Para comenzar ejecutamos el GeneXus Business Process Modeler y creamos un objeto BPDiagram, de nombre CharterFlightSale. Vamos a concentrarnos en modelar primero el flujo más habitual, es decir el que sucede si todo transcurre sin inconvenientes. En nuestro caso es publicar la promoción del vuelo chárter, vender la totalidad de los pasajes, habilitar el vuelo, retirar la publicación de la promoción y terminar el proceso. Para comenzar, desde la barra de herramientas arrastramos un None Start Event y una tarea interactiva, que la unimos desde el None Start Event. A esta tarea la llamamos Advertise Charter Flight Promotion. Page4
5 Según lo indicado por la agencia de viajes, una vez que se publicó la promoción debemos esperar 1 semana para comenzar con la venta de los pasajes del vuelo. Para poder implementar una pausa (en inglés un delay), utilizamos un evento del tipo timer, así que arrastramos un intermediate timer event al diagrama y lo unimos desde la tarea Advertise Charter Flight Promotion. Luego damos F2 y agregamos la descripción 1 week delay. En las propiedades del intermediate timer event, seleccionamos Time unit en el valor Days y en la propiedad Lapse expresion rule escribimos el valor 7. Ahora arrastramos otra tarea del tipo User, le ponemos de nombre Sell charter flight tickets y la unimos desde el evento timer. El timer utilizado de esta manera, hará que una vez terminada la tarea de publicar la promoción del chárter, el flujo se detenga por una semana antes de que se inicie la tarea de venta de pasajes del vuelo. Page5
6 Una vez que se finaliza la venta de todos los pasajes, se debe habilitar el vuelo, así que arrastramos otra tarea interactiva, la llamamos End sales and enable flight y la conectamos desde la tarea de venta de pasajes. Luego de que el vuelo chárter ya tiene todos los pasajes vendidos y está habilitado para que se concrete el vuelo, debemos eliminar la promoción que habíamos publicado y terminar el proceso. Para esto arrastramos una tarea del tipo script a la que llamamos End promotion que la conectamos desde la tarea Page6
7 anterior y por último arrastramos un None End Event para terminar el proceso. Esto que hemos modelado supone que se vende siempre el 100% de los cupos del chárter en el tiempo óptimo, pero nos falta agregar varios controles y requerimientos que nos pidió la agencia. Para empezar debemos asegurar que todo el proceso no tenga más de 3 meses de duración. Para eso arrastramos un intermediate timer event, lo unimos desde el comienzo del proceso, es decir desde el None Start Event y le asignamos la descripción 3 months deadline. Para asegurarnos que el proceso termine definitivamente en este plazo, es decir que se den por terminados todos los flujos del proceso, arrastramos desde la toolbar un Terminate End Event. Page7
8 En las propiedades del timer, asignamos que la unidad de tiempo sean Days y en la propiedad Lapse expression rule ponemos el valor 90, o sea que el deadline será de 90 días, equivalente a los 3 meses solicitados. Page8
9 Ahora pasemos a modelar los distintos avisos o fechas tope que nos plantea el proceso venta de un vuelo chárter. La primera acción ocurre cuando faltan 30 días para cumplirse el plazo máximo de duración del proceso de venta. Al faltar 30 días, se debe comenzar con una mayor propaganda y esfuerzo de ventas. Para modelar esto, arrastramos desde la barra de herramientas un evento intermedio del tipo timer y lo soltamos encima de la tarea Sell charter flight tickets. Le ponemos la descripción -30 days. Luego insertamos un subproceso embebido al que llamamos Big Sale, lo conectamos desde el timer, insertamos un None End Event y lo conectamos desde el subproceso. En las propiedades del timer que pusimos sobre la tarea, le ponemos de nombre -30 days y seteamos Timer usage en Warning, ya que la idea es que al comenzar la ejecución del subproceso se emita un aviso. Observemos que al elegir el valor Warning, la propiedad Interrupts activity desaparece, ya que no tiene sentido cuando solamente queremos dar un aviso. Una particularidad que tenemos que tener en claro, es que el tiempo que definamos en el timer event, se empieza a contar desde el momento en que arranca la ejecución de la tarea donde está el evento insertado. Como nosotros queremos que el subproceso de aumentar la propaganda comience cuando falten 30 días para que finalicen los 90 días totales del proceso, tenemos que hacer algunas cuentas. Sabemos que al comenzar el proceso, se empiezan a contabilizar los 90 días. Suponiendo que la tarea Advertise charter flight promotion no consume tiempo, sabemos que el proceso Sell charter flight tickets comienza 7 días después, o sea faltando 83 días para el deadline del proceso. Por lo tanto el subproceso Big sale debería comenzar a los = 53 días de comenzada la tarea Sell charter flight tickets. En la propiedad Time unit ponemos Days y en Lapse expression rule asignamos el valor 53. Page9
10 Esto que hemos modelado nos asegura que timer emitirá un warning faltando 30 días para finalizar el proceso. Este aviso lo veremos en la ejecución de la tarea en la bandeja de entrada del cliente de Workflow. Ahora queremos modelar que cuando falten 10 días para finalizar el proceso de venta del charter, se bajen los precios, de forma de asegurar la venta de todos los pasajes. Para esto arrastramos un Intermediate timer event, nuevamente lo colocamos sobre la tarea Sell charter flight tickets y le asignamos la descripción -10 days. A continuación insertamos una tarea interactiva y le asignamos el nombre 50 % Off, para representar el proceso de rebaja del precio del charter a la mitad del precio inicial. Conectamos la salida de esta tarea Al none end event del subprocesor. Vamos a las propiedades del evento timer y en la propiedad Timer usage elegimos el valor None, ya que la idea es que se arranque el proceso de rebaja de precios sin emitir un aviso y sin interrumpir la tarea de venta de tickets. Para esto último ponemos la propiedad Interrupts activity en el valor False. Este evento debe producirse faltando 10 días para terminar el proceso, o sea 20 días después que el warning que modelamos anteriormente, así que en Time unit elegimos Days y en Lapse expression rule ponemos 73. Con esto, al faltar 10 días para terminar el proceso, automáticamente se disparará la tarea del descuento, mientras continúa la tarea de venta de pasajes. Ahora tomaremos la última acción antes de alcanzarse el tiempo límite de la venta del charter, que es que 3 Page10
11 días antes de finalizar el proceso, si ya se vendió el 95% de pasajes o más, se dará la venta por cerrada y automáticamente se habilitará el vuelo charter. Este control queremos que sea un deadline que interrumpa la tarea de venta. Si no se llega al porcentaje deseado, dejaremos la decisión en manos del gerente. Para este último control, arrastramos otro evento timer sobre la tarea Sell charter flight tickets y le ponemos de nombre -3 days. En la propiedad Timer usage dejamos el valor por defecto Deadline y en la propiedad Interrupts activity dejamos el valor por defecto True. En Time unit elegimos Days y debemos hacer que esto se dispare 7 días después que el último deadline, o sea que en Lapse expression rule asignamos el valor 80. Como comprobación, estos 80 días más los 7 que esperamos para comenzar la venta totalizan 87 días, o sea que este deadline se disparará 3 días antes de los 90 en los que termina el proceso global. Con respecto al porcentaje de ventas alcanzado, suponemos que hay un dato relevante que almacena dicha información y el mismo es actualizado constantemente desde la tarea de venta de pasajes. Para verificar si se alcanzó el 95% de las ventas, insertamos un exclusive Gateway que unimos desde el timer event -3 days y le ponemos la descripción More than 95% sold?. Hacia la derecha lo conectamos con la tarea End sales and enable flight y etiquetamos el flujo con Yes. Ahora insertamos una user task de nombre Manager s authorization que la unimos desde el exlusive Gateway. A esta unión la etiquetamos con No y le ponemos la propiedad Condition type en el valor Page11
12 Default, porque será el camino por defecto. Esta tarea representa la acción del gerente de autorizar que se habilite el charter o no. Para consultar la decisión tomada, insertamos otro exclusive Gateway que conectamos desde la tarea Manager s authorization. Hacia la derecha del Gateway conectamos con la tarea End sales and enable flight y a este flujo lo etiquetamos con Yes para representar la autorización del gerente para liberar el vuelo. A continuación se ejecutará la tarea que finaliza la venta y dejará el vuelo habilitado. Por último se termina la promo y se finaliza el proceso Hacia abajo unimos el Gateway conectamos con la tarea End Promotion, etiquetamos este flujo con No y lo asignamos como camino default. De esta manera, si el gerente no autoriza que se habilite el vuelo, solamente se finalizará la promoción y el proceso de venta del vuelo charter terminará. Page12
13 En este proceso tuvimos la oportunidad de ver cómo modelar pausas, controlar la duración máxima de un proceso, dar avisos y manejar plazos límite, interrumpiendo o no la tarea que se deseaba monitorear. Esto resume la mayoría de los casos de uso de eventos de tipo timer para modelar patrones de tiempo. Le recomendamos ver otros casos de modelado de patrones de tiempo en el video Bifurcación y unión de caminos, generación de avisos periódicos y manejo de señales, al que puede acceder con el link que se muestra en pantalla: y también en el video Modificación de dato relevante, evento timer y calendarios, en el siguiente link: Page13
Bifurcación y unión de caminos, generación de avisos periódicos y manejo de señales
Bifurcación y unión de caminos, generación de avisos periódicos y manejo de señales Volviendo al modelo del proceso de validación de la reserva, si había disponibilidad de tickets debíamos continuar por
Definición de tareas concurrentes, detección e identificación de errores
Definición de tareas concurrentes, detección e identificación de errores El proceso de reserva de pasajes de la Agencia de Viajes, incluye un subproceso que llamamos Validate Reservation, que se encarga
Modificación de dato relevante, evento timer y calendarios
Modificación de dato relevante, evento timer y calendarios Continuando con el diagrama, la tarea Evaluate Customer deberá evaluar la situación financiera del cliente y almacenar la decisión en un dato
Subprocesos transaccionales
Subprocesos transaccionales 1.- Introducción Hay procesos en los cuales es necesario coordinar varias actividades que necesitan cumplirse exitosamente todas ellas para que el flujo del proceso pueda seguir
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
Programando recordatorios y fin del proceso de reserva de pasajes
Programando recordatorios y fin del proceso de reserva de pasajes Volvemos al diagrama para concentrarnos en la tarea de autorización de la reserva, por parte del gerente de atención al cliente. Vamos
BPM (Business Process Management)
BPM (Business Process Management) En la agencia de viajes, hay trámites que requieren de que varias tareas se realicen unas a continuación de otras, en un cierto orden, por ejemplo, cuando se desea hacer
Definición de procesos de negocios
Definición de procesos de negocios En la agencia de viajes, hay trámites que requieren de que varias tareas se realicen unas a continuación de otras, en un cierto orden, por ejemplo, cuando se desea hacer
Una vez completo este paso, es necesario verificar que haya paquetes disponibles para la cantidad de personas que deseen realizar el viaje.
En la agencia de viajes, hay trámites que requieren de que varias tareas se realicen unas a continuación de otras, en un cierto orden, por ejemplo, cuando se desea hacer una reserva de un paquete turístico
Formularios dinámicos
Formularios dinámicos En general, si necesitamos ejecutar una tarea interactiva de un diagrama de proceso de negocios, debemos contar en nuestra KB con un objeto transacción o un webpanel, para asociarlo
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
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,
Para llevar a cabo esta actividad veremos el estándar BPMN (Business Process Modeling Notation), este estándar define símbolos y reglas que nos
1 3 Para llevar a cabo esta actividad veremos el estándar BPMN (Business Process Modeling Notation), este estándar define símbolos y reglas que nos permiten representar gráficamente un proceso de negocio.
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
Prototipado, instancias e historia de un proceso
Prototipado, instancias e historia de un proceso En los videos anteriores sobre Automatización, utilizamos objetos del tipo transacción, para registrar la reserva de pasajes y crear al pasajero como cliente
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
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
Introducción al modelado de procesos de negocio en base al estándar BPMN
Introducción al modelado de procesos de negocio en base al estándar BPMN La actividad de una empresa como la Agencia de Viajes, implica la ejecución de trámites y realización de procesos propios de su
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
Se ejecuta el diagrama de procesos por primera vez
Se ejecuta el diagrama de procesos por primera vez En el video Automatización Parte 1, vimos cómo asociar un objeto transacción a la tarea de registro de reservas de pasajes. Continuando con nuestro diagrama
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
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
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
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
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
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,
Usuarios y roles. Para administrar el acceso a las tareas de un diagrama de procesos, debemos definir ciertos roles que serán parte del modelo.
Usuarios y roles Hasta ahora hemos modelado diagramas de proceso, asociado objetos GeneXus a los elementos de los diagramas y ejecutado esos procesos, pero todas las pruebas las hicimos siempre con el
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
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
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,
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,
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
DIEGO TEJADA, CRISTINA GALVIS, ANDRES SUCERQUIA
Página: 01 Objetivo: Configurar un servidor con IIS 7 para publicación web, incluyendo soporte PHP. ACTIVIDAD Como requisito debes tener instalado un servidor Windows 2008 Server con el rol de Web Server,
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
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,
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
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
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
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
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
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
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
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
Sistema de Gestión de Procesos
Sistema de Gestión de Procesos Manual de diagramación de procesos bajo estándar BPMN Modele, gestione y optimice los procesos de la organización y automáticamente el código de sus aplicativos. 1. Tabla
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,
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.
Y cuando en la transacción Flight nombramos a CountryName, sabemos que será inferido a través del atributo AirporId.
Habíamos visto un caso donde debimos definir un grupo de subtipos porque teníamos en una transacción una doble referencia a un mismo actor de la realidad. Era el caso de la transacción Flight, en la cual
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
Relaciones entre entidades de la realidad
Page1 Relaciones entre entidades de la realidad En varios ejemplos de nuestra agencia de viajes, encontramos que los actores de la realidad se relacionan entre sí de distintas maneras, por ejemplo cuando
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.
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
Aplicación del GAM. Una vez autenticado el usuario podrá comenzar a utilizar la aplicación.
Aplicación del GAM Veamos que debemos hacer desde nuestra aplicación para utilizar el GAM. Vamos a abrir GeneXus y veremos que simplemente modificando el valor de una propiedad a nivel de la versión va
Transacción de 2 niveles usada como Business Component y manejo de errores.
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
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
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
Introducción a procedimientos, listados y comando For each
Introducción a procedimientos, listados y comando For each Pasemos a conocer los objetos de tipo Procedimiento, que podemos definir en una base de conocimiento GeneXus Este tipo de objeto nos permite definir
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
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
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
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
SND. Sistema Nervioso Digital Ejercicio de Access 2000 Nº 4
Formularios Los formularios son los objetos que sirven para representar datos, ya provengan de una tabla o de una consulta. Al principio de este ejercicio, aprendimos a crear un formulario con el asistente
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
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
Mi primera aplicación ASP.NET MVC 2 paso a paso parte 2 «afelipelc Blog
afelipelc.xochiltepec.com.mx http://afelipelc.xochiltepec.com.mx/2010/10/mi-primera-aplicacion-asp-net-mvc-2-paso-a-paso-%e2 Mi primera aplicación ASP.NET MVC 2 paso a paso parte 2 «afelipelc Blog Continuando
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
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
MANUAL PREZI. Elaboración: Ing. Jocabed Bautista. 1. INGRESAR A LA PAGINA: prezi.com y dar click en Registrarse
MANUAL PREZI 1. INGRESAR A LA PAGINA: prezi.com y dar click en Registrarse A continuación nos pide elegir el tipo de cuenta, seleccionamos la primer que es Public y damos clic en Registrarse ahora. Llenamos
Overview GeneXus - Demo: 2.Cómo obtener el ejecutable de la KB y declaración de algunas reglas del negocio.
Overview GeneXus - Demo: 2.Cómo obtener el ejecutable de la KB y declaración de algunas reglas del negocio. En la primera parte de esta demo creamos nuestra base de conocimiento y la transacción de facturas
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
Como el resto de aplicaciones de Office, PowerPoint puede arrancarse de distintas formas. Vamos a utilizar la siguiente:
1. INTRODUCCIÓN PowerPoint es la herramienta que nos ofrece Microsoft Office para crear presentaciones. Las presentaciones son imprescindibles hoy en día ya que permiten comunicar información e ideas de
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
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
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
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
La impresora es uno de los periféricos más utilizados del ordenador
Instalar Impresora La impresora es uno de los periféricos más utilizados del ordenador Existen algunas impresoras que Windows detecta mediante el sistema PnP (Plug & Play) y se instalan como cualquier
Relaciones entre entidades de la realidad
Relaciones entre entidades de la realidad En varios ejemplos de nuestra agencia de viajes, encontramos que los actores de la realidad se relacionan entre sí de distintas maneras, por ejemplo cuando vemos
Análisis y performance de procesos, tareas y equipos de trabajo
Análisis y performance de procesos, tareas y equipos de trabajo El gerente general de la Agencia de Viajes quiere tener varios dashboards donde pueda ver la performance de los procesos, de las tareas y
Ministerio de Educación. Diseño de Presentaciones en la Enseñanza. Módulo 8: Sonidos
Ministerio de Educación Diseño de Presentaciones en la Enseñanza Módulo 8: Sonidos Instituto de Tecnologías Educativas 2011 Disseño de Presentaciones en la Enseñanza (OpenOffice) Sonidos Sonido en una
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
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
MANUAL DEL ROUTER THOMSON ST585
MANUAL DEL ROUTER THOMSON ST585 Para entrar a la configuración de su router SpeedTouch Thomson ponga la dirección siguiente en una Ventana de Internet Explorer, por default suele ser 192.168.1.254 Entrara
El editor de formularios web es el Abstract Layout, en el cual entraremos en detalle en unos momentos.
La gran revolución de dispositivos móviles dio paso a un nuevo mundo de aplicaciones nativas, pero influyó también en el diseño de aplicaciones web, ya que no es posible usar la misma página para dispositivos
Cómo listar información agrupada
Cómo listar información agrupada En el video anterior hemos visto un listado solicitado por la agencia de viajes, que mostraba todas las Categorías de atracciones turísticas y para cada categoría, la lista
I N S T R U C T I V O E Q U I P O G P S J U N O
I N S T R U C T I V O E Q U I P O G P S J U N O El equipo TRIMBLE JUNO es un GPS diferencial con Sistema Operativo Windows Mobile, lo que lo convierte en un Dispositivo Móvil de Captura con posibilidad
Poblar de datos las tablas desde la propia transacción
Poblar de datos las tablas desde la propia transacción Cuando creamos una transacción, por defecto GeneXus creará tablas asociadas para almacenar la información que ingresamos a través de su pantalla.
Script Data Selectors: reusing definitions
Script Data Selectors: reusing definitions Supongamos que hemos agregado a la transacción Customer el atributo CustomerStatus, para poder representar uno de los tres estados (activo, en espera o cerrado)
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
Si abrimos una transacción cualquiera en ejecución, por ejemplo Category, vemos en la pantalla los botones de navegación antes de los atributos, y
Si abrimos una transacción cualquiera en ejecución, por ejemplo Category, vemos en la pantalla los botones de navegación antes de los atributos, y abajo los botones para confirmar, cancelar o eliminar
WORD AVANZADO. Guía Paso a Paso. Desarrollado por Ing. Marcelo Pickelny Lic. Eugenia Tarrachano
WORD AVANZADO Guía Paso a Paso Desarrollado por Ing. Marcelo Pickelny Lic. Eugenia Tarrachano INSERTAR PORTADA... 2 DAR FORMATO AL TEXTO... 2 MODIFICAR INTERLINEADO... 3 CREAR ESTILOS PERSONALIZADOS...
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
Manual de Contabilidad
Qué contiene la carpeta Contabilidad? La carpeta de Contabilidad se divide en las siguientes sub-carpetas : 1. Catálogos Contables. 2. Pólizas. 3. Cierres. 4. Reportes. 5. Utilerías Diversas. 1. El contenido
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
COLEGIO DE BACHILLERES DEL ESTADO DE CHIHUAHUA DIRECCIÓN ADMINISTRATIVA SUBDIRECCIÓN DE TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIONES
COLEGIO DE BACHILLERES DEL ESTADO DE CHIHUAHUA DIRECCIÓN ADMINISTRATIVA SUBDIRECCIÓN DE TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIONES NOVIEMBRE DE 2013 INICIAR SESIÓN AL CORREO ELECTRÓNICO Debemos iniciar
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.
Tutorial 5 Líneas de Tiempo con Timerime
Tutorial 5 Líneas de Tiempo con Timerime Introducción a Timerime... Creando una cuenta de usuario... Cómo crear una línea de tiempo...4 Agregar hechos o eventos a la línea de tiempo...5 Agregar imágenes...6
INSTALACIÓN DEL DEBIAN 6
1 INSTALACIÓN DEL DEBIAN 6 Seleccionamos donde tenemos nuestra imagen, en este caso es en un disco duro. Seleccionamos el tipo de máquina virtual que deseamos crear que en nuestro caso será Linux. Y marcamos
APUNTES DE WORD 6.- HERRAMIENTAS
6.- HERRAMIENTAS 6-1.- Ortografía y gramática 6-2.- Idioma 6-3.- Macro.- 6-4.- Opciones de autocorrección. 6-5.- Personalizar. 6-5-1.- Editor de ecuaciones: 6-6.- Opciones. APUNTES DE WORD 1 6.- HERRAMIENTAS
- Creando nuestro primer Active Directory en Windows Server 2008 R2
- Creando nuestro primer Active Directory en Windows Server 2008 R2. Desde el AD (Active Directory) podremos centralizar todos los recursos tales como usuarios, computadoras, impresoras, grupos de distribución,