Web panel y tabla base

Documentos relacionados
Programando el Evento Start, Click o De usuario en un Web Panel

En el ejemplo, se procede en este orden:

Consulta con salida Chart (Parte I)

Relaciones entre entidades de la realidad

Reporting (objeto Query)

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

Script For each simple tabla base y cláusula order

Tipos de datos estructurados

Overview GeneXus - Demo: 2.Cómo obtener el ejecutable de la KB y declaración de algunas reglas del negocio.

Diseñando la primera transacción

Pais { PaisId * PaisNombre } Pais { PaisId* PaisNombre } Pais. PaisId* PaisNombre

Momentos de disparo de reglas en transacciones

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

Introducción a procedimientos, listados y comando For each

Administrando las bases de conocimiento (GXserver)

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

Acceso a bases de datos externas

Cargando los tipos de datos compuestos

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

El listado de navegación nos informa claramente que la tabla base es ATTRACTION, que la recorrida será ordenada por la clave primaria de dicha tabla:

Qué son los subtipos?

Creando una aplicación móvil con GeneXus para trabajar con los Materiales del SAP ERP parte 4

Dossier Cursos. Desarrolle mejores aplicaciones, para más plataformas, en menor tiempo.

Cómo implementar un menú de entrada para la aplicación móvil

Aplicación del GAM. Una vez autenticado el usuario podrá comenzar a utilizar la aplicación.

Objeto Web Panel 330

UNER ABM Personas Proveedores-Clientes Versión AMB Personas

Nota: MI CRONOGRAMA EVALUACIÓN DE MIS PROFESORES Nota: ACCESOS DIRECTOS... 13

Modificación de dato relevante, evento timer y calendarios

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

FORMATO CONDICIONAL EN EXCEL

Pantallas interactivas (Objeto Web Panel)

1. Instalar el componente en el sitio por Extensiones gestor de extensiones.

Guía de Solicitud de apoyo

ABC Contabilidad Versión 1.0

TRABAJAR OBRAS COMO TALLER MECÁNICO

MANUAL DE USUARIO PORTAL DE CUENTAS POR PAGAR, PERFIL PROVEEDOR

1.- CREACIÓN DE CONSULTAS.

Secretaría General Departamento de Sistemas y Tecnologías de la Información

PEDIDO EN LINEA. Se recomienda cambiar la clave de acceso al sistema siguiendo los pasos que se indican en el bloque Cambiar Clave de Acceso.

A la derecha de este botón irán apareciendo todas las aplicaciones abiertas en ese momento en el sistema.

MarcaDescripcion AutoId AutoDescripcion }

Universidad Interamericana de Puerto Rico Recinto de Ponce Programa de Distancia

Manual de Usuario para cambio de contraseña de Alumnos y Empleados ITSON. Solicitud de Cambio Password

RFI Acreditación de Requisitos y. RFI - Precalificación Técnica PORTAL DE COMPRAS ESSBIO S.A. NUEVOSUR S.A.

Terceros Ekon Sical. Departamento de Informática

Manual del Proveedor para el registro telemático de la factura electrónica

Manual de Programación Radios Comerciales TK-7160 / 8160

Facturación Electrónica

USO DEL SERVIDOR ESCUELA

Configuración de Procedimientos en SQL. Introducción

2. Cómo se integran a este sistema los XML generados de los diferentes sistemas Microsip. 3. Cómo importar Comprobantes fiscales con XML y sin XML.

Cómo ingresar a al portal COMPR.AR?

Contents. Tabla de contenido

Creación y manejo de la base de datos y tablas

GUIA PARA CAPTURA DE CALIFICACIONES POR INTERNET

MANUAL PERITO/OPERADOR

MANUALES DE USO DE CENGAGE: Usuario lector

MANUAL DE ADMINISTRADOR

easypos Restaurantes y Bares Configuración Inicial

Integración Contable en Compras

Al pie de la solapa Principal se encuentra la opción de transformar toda la información contenida en el sistema en un CV en formato *.pdf o *.

Sistema de Registro, Derivación y Monitoreo Chile Crece Contigo

Manual Word Macros y Elementos rápidos

PODER JUDICIAL DE LA NACION ARGENTINA

Introducción: un paseo por la aplicación móvil en ejecución.

COMO REALIZAR CONSULTAS CON EL CONSTRUCTOR DE GEOCONSULTAS DEL SIG GUADUA.

APLICACIÓN PARA PROVEEDORES DE CONVENIO MARCO Administración para proveedores

Manual del usuario. La primera vez que ingrese al sistema, deberá registrar su dirección de correo electrónico.

Guía del Aula Virtual de Formación

Guía de integración del módulo PayNoPain en Prestashop

Práctica 2 Animaciones

Instructivo para el uso del. Sistema de Liquidación de Aportes y Contribuciones Sindicales WEB

Integración Contable en Cuentas por Pagar

Manual del Integrador Contable Premium Soft

MANUAL DE USUARIO ADMINISTRACIÓN DE DISTRIBUIDORES

INTRUCTIVO PARA COMPLETAR LAS PLANILLAS COMPLEMENTARIAS DE INVESTIGACIÓN EPIDEMIOLÓGICA (PIEC)

Sistema de Presentación y Gestión de Proyectos Instructivo para la carga de Proyectos.

Los tipos de IVA no deducibles no se liquidan, por este motivo no se seleccionan automáticamente.

GUIA PARA EL USUARIO REGISTRO NACIONAL DE SANCIONES DE DESTITUCION Y DESPIDO RNSDD

MANUAL DEL ADMINISTRADOR DEL CHAT

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

CONTRA RECIBO POR SELECCIÓN

Manual del Servicio de Consulta de autorizados RED que gestionan una empresa.

Anexo. Control de errores

MANUAL DE ACCESO A LA PLATAFORMA VIRTUAL

Aulas Virtuales IECSCYL. Manual de uso

COMISIÓN METROPOLITANA DE LUCHA CONTRA LA CORRUPCIÓN QUITO HONESTO

Actualización de estatus de vivienda (Individualizada)

Taller #1: Logisim PARTE 1:

MANUAL DE USUARIO SAP R/3 CONTABILIZACIONES DE CUENTAS DE MAYOR

Transcripción:

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 tabla base? Qué diferencia hay entre tabla base de un web panel y tabla base de un grid? Para qué nos importa todo esto? Comencemos por el principio. Este web panel: no necesita acceder en absoluto a la base de datos, porque lo único que hace es solicitar un dato al usuario a través de esta variable aquí declarada Page1

y con ese dato llamar a otro objeto: Page2

Este web panel, entonces, no tendrá tabla base. En cambio este otro web panel, llamado por el anterior: está mostrando datos del cliente 2 de la base de datos. En el form vemos que aparecen atributos, lo que GeneXus interpreta como un pedido implícito de ir a la base de datos a recuperar la información correspondiente. Page3

En ejecución está mostrando el cliente 2 porque si observamos las reglas de este web panel vemos que está recibiéndolo como parámetro en el atributo identificador, CustomerId, por lo que automáticamente filtra por él: De esta forma, este web panel ViewCustomerInfo sí tiene tabla base: o sea, una tabla de la base de datos que está implícita en la forma en que diseñamos (o programamos) este web panel. Podemos ver rápidamente la diferencia entre un web panel y otro observando los listados de navegación y qué pasa con el acceso a la base de datos: Page4

Así, mientras que en el primer web panel nose produce ningún tipo de acceso a la base de datos en el segundo sí, Page5

y aparece la navegación para realizar la carga en el form. Se puede ver que la tabla base es Customer y que se filtrará por el parámetro recibido Customer Id. Hemos establecido entonces la diferencia en el acceso a la base de datos. Sin embargo no es este acceso lo que hace que un web panel tenga o no tabla base. Es que este acceso sea implícito. Page6

Aclaremos esto que acabamos de mencionar : En el último web panel podríamos haber programado la carga del cliente a mano, utilizando variables en el form: Recibiendo además el parámetro en variable: Y cargando las variables del form: Page7

a partir de una variable de tipo el business component Customer: Esta variable es cargada con el cliente recibido en el parámetro: Page8

Finalmente invocamos desde el web panel SelectCustomer a este nuevo web panel: Presionemos F5 Seleccionamos el web panel SelectCustomer, ingresamos el valor 2 Y vemos que muestra la misma información que el web panel anterior programado con atributos. Page9

Sin embargo, si observamos su listado de navegación Vemos que no se está indicando acceso a la base de datos, aunque se esté produciendo en la carga del business component. Dicho de otro modo: este web panel no tiene tabla base, aunque sí se accede a una tabla. Este acceso fue programado explícitamente, y no mediante la forma implícita, con atributos, que ofrece el web panel para ahorrarnos trabajo. Vamos a plantearnos ahora la siguiente pregunta: En qué lugares del web panel pueden encontrarse atributos que implícitamente determinen una tabla base del web panel? En primer lugar, en el form. Tanto fuera como dentro de un grid. Page10

En este último caso, en un grid está apareciendo el atributo. Tener un grid con atributos es tener un for each implícito, al que se aplica el Order, las Conditions, y el código declarado en el evento Load, para mostrar finalmente la información en pantalla. Page11

Así, el listado de navegación nos informa: que este web panel tiene una tabla base: Customer. De este modo, se ejecutará el evento Load por cada cliente de esa tabla. Page12

Como el Load tiene un for each, se deberá navegar su tabla base, que nos está indicando será la de asientos de vuelos, recuperando entonces los registros que corresponden a ese cliente, al que se va a cargar en el grid en ese preciso momento. En otras palabras, el for each del evento Load se anida al implícito. En ejecución lo vemos así Ahora bien Qué atributos consideró GeneXus para determinar que la tabla base del web panel, es decir, del for each implícito, es Customer? Los de la parte fija del form, es decir, fuera del grid, que en este caso no hay ninguno. Los propios del grid, incluyendo los que estuvieran ocultos, Los de las propiedades Order y Conditions (también Data Selector), los que estén dentro del evento Load, fuera de un bloque for each (en nuestro caso tampoco hay ninguno), pues los del for each definirán la tabla base del propio for each, no la del padre al que se anida Y los que estén en cualquier otro evento, también fuera de un for each. Page13

Resumiendo entonces: Los atributos que considera GeneXus para determinar la tabla base del web panel, son los que se encuentran en el form, tanto en parte fija como en el grid Los de las propiedades Order, conditions y DataSelector del grid Los que se encuentran en los eventos, fuera de bloques for eachs. Con todos estos atributos se determina la tabla base, igual que como se hace para determinar la tabla base de un for each. Es por eso entonces, que GeneXus determinó para nuestro web panel ViewCustomer, la tabla base Customer. Ahora, qué sucede cuando hay más de un grid en el form? Ya hemos visto un ejemplo en otro video: Page14

Aquí dejamos de hablar de tabla base del web panel y pasamos a hablar de tabla base de cada grid. Page15

En el ejemplo, en los dos grids tenemos atributos (tanto en sus columnas, visibles u ocultos en alguna de sus propiedades Order, Conditions, y DataSelector, Como también en sus eventos Load (fuera de todo bloque for each): aquí solamente se programó el load del primer grid y no hay atributos fuera del for each. Recordemos que al agregarse un segundo grid, ya no se puede usar el evento Load genérico, puesto que no se podría determinar a qué grid corresponde. Page16

La tabla base entonces de cada grid se determina atendiendo exclusivamente a estos atributos. Page17

Así, para el primer grid, dado que utiliza como columna oculta Customer Id y el atributo fórmula CustomerFullName, resultará la tabla CUSTOMER, como su tabla base Page18

Para el segundo grid, con estos atributos, Siendo el atributo FlightArrivalCountryName subtipo inferido Page19

Y FlightFinalPrice una fórmula a nivel de la tabla Flight y Page20

su tabla base será FlightSeat Page21

A diferencia del caso de un web panel con un único grid los atributos que estén fuera de bloques for each en cualquier evento que no sea Load, no participarán de la determinación de las tablas base. Pero deberán cumplir que pertenezcan a la tabla extendida de alguno de los grids. De no ser así, GeneXus lo advertirá en el listado de navegación. En caso de existir atributos en la parte fija, la tabla base del primer grid en el form se determina tomando en cuenta los atributos sueltos, y los demás grids sin tomarlos en cuenta. Si desea saber más sobre este caso especial acceda a nuestro wiki : http://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?6105 Page22

Page23