Vous êtes sur la page 1sur 13

CAPACITACION GENEXUS

FECHA: 03/02/2014 HORA: 09:35 AM INSTRUCTOR: ING. RODOLFO ROBALLO rroballo@genexus.com REPORTES: objeto procedimiento NOMENCLATURA: GIK EJEMPLO: Transaccin Universidad Universidad Id Universidad Nombre Universidad Direccion Validez Validez fecha Inicio Validez Fecha Fin RELACIONES 1 A N 1 FACULTAD FacultadId (PK) FacultadNombre N CARRERA CarreraId CarreraNombres CarreraDuracin FacultadId (FK) FacultadNombre

Nota: No se debe confundir tabla con transaccin, FacultadNombre (no se crea como campo en las tablas) La tabla ser normalizada ser 3FN (Forma Normal) por el identificador FacutadId. La clave fornea siempre al lado N

CONTROL DE INTEGRIDAD REFERENCIAL INDICES DE CLAVE PRIMARIA INDICES DE CLAVE SECUNDARIA INDICES TEMPORALES INDICES DE USUARIO

Genexus crea los ndices para hacer los controles de Integridad Referencial ms Eficientes SUB TIPOS SE UTILIZA CUANDO SE PRESENTAN MULTIPLES REFERENCIAS SUB TIPOS RECURSIVOS TRN. EMPLEADO EmpleadoId EmpleadoNombre EmpleadoDireccion EmpleadoEsGerente (Si/No) GerenteId GerenteNombre

Error(No puede haber un empleado si es ) If EmpeladoEsGerente = No And GerenteID is Empty;

ESPECIALIZACION

REGLAS Actualizar atributo

Add(Factura Total, Cliente Total Factura) Subtract(AT1,AT2)

FACULTAD ANEXOS (DEBIL)

FACULTAD FacultadId FacultadNombres AnexoNumero AnexoEdificio

Tabla Facultad FacultadId FacultadNombre Tabla Anexo FacultadId AnexoNumero AnexoEdificio RELACION N - N

CARRERA (N)

MATERIAS (N)

TABLAS CARRERA CarreraId CarreraNombre

MATERIA MateriaId MateriaNombre

CARRERA MATERIA CarreraId MateriaId

SE PUEDEN AGREGAR ATRIBUTOS A LAS TRANSACCIONES DE 2 NIVEL TRANSACCIONES: Atributo Inferido (se puede recuperar de una tabla) TRAN.MATERIA { MateriaId MateriaNombre } TRAN.MATERIA { CarreraId CarreraNombre Materia: MateriaId MateriaNombre } MATERIA CARRERA CARRERA MATERIA Se quita MateriaNombre por normalizacin

RELACION 1 1

ALUMNO (1)

CUENTA(1)

Tran. Alumno AlumnoId AlumnoNombre CuentaId Tran. Cuenta Cuenta Id CuentaTipo

(ndice Unique) Restringir

EJERCICIOS

TRAN. UNIVERSIDAD UniversidadId UniversidadNombre

TRAN. MATERIA MateriaId MateriaNombre CarreraID CarreraNombre UniversidadId UniversidadNombre

TRAN. CARRERA CarreraId CarreraNombre UniversidadId UniversisdadNombre

Tablas:

UNIVERSIDAD UniversidadId* UniversidadNombre

MATERIA MateriaId* MateriaNombre CarreraId (FK)

CARRERA CarreraId* CarreraNombre UniversidadId (FK)

EJERCICIO 02 TRAN. FACTURA { FacturaId FacturaFecha ClienteId ClienteNombre PRODUCTO { ProductoId ProductoNombre ProductoPrecio FacturaLineaCantidad FacturaLineaImporte } Factura Total } TRAN. CONTINENTE } ContinenteId ContieneteNombre {

TRAN. CLIENTE { ClienteID ClienteNombre PaisId PaisNombre }

TRAN. PAIS { PaisId PaisNombre ContinenteId ContinenteNombre

TRAN. PRODUCTO } ProductoId ProductoNombre ProductoPrecio {

Tabla Conjunto de Atributos de la Tabla Base ms todos de los atributos que se puede obtener de relaciones N a 1 sucesivas (se puede actualizar r y consultar). DIAGRAMA DE BACHMAN N CLIENTE 1 PAIS N 1 CONTINENTE

FACTURA

FAC. PRODUCTO

PRODUCTO

FECHA: 04/02/2014 HORA: 09:35 AM INSTRUCTOR: ING. RODOLFO ROBALLO rroballo@genexus.com REGLAS: UPDATE: En una transaccin los atributos son de ENTRADA y las variables en el FORM de una transaccin son de SALIDA despliegan valores. WEB Cuando se aprieta un botn se produce un POST, y el servidor responde, se dispara el evento START y EXIT (siempre se van ha disparar) El ultimo evento que se puede disparar AFTER TRM TrackContext : Se usa mas en el trabajo de Panels IMGENES: se almacenan en un campo BLOB: Binary Large Object SAC (INCIDENTE DE SOPORTE)

ARBOL DE EVALUACION

NIVELES DEL SERVER ON (MOMENTO DE DISPARO) BEFORE VALIDATE VALIDACION: ---- > cabezal AFTER VALIDATE BEFORE INSERT, UPDATE, DELETE GRABACION ---- > cabezal AFTER INSERT, UPDATE, DELETE BEFORE VALIDATE VALIDACION LINEA AFTER VALIDATE N VECES POR NIVEL BEFORE INSERT, UPDATE, DELETE GRABACION DE LINEA AFTER INSERT, UPDATE, DELETE
TERMINA EL NIVEL

AFTER LEVEL BEFORE COMPLETE COMMIT AFTER COMPLETE

COMO DETERMINAR LA TB DE UN FOR EACH 1. 2. 3. 4. VER TODOS LOS ATRIBUTOS EN EL CUERPO DEL FOR EACH BUSCAR TODAS LAS TE QUE CONTIENEN LOS ATRIBUTOS DETERMINAR CUAL ES LA TE MAS CHICA (LA TE MINIMA) LA TB DE ESA TB SERA LA TB DE LA FOR EACH

COUNTRY COUNTRYID COUNTRYNAME

CAPITAIN CAPITAINID CAPITAINNAME

SHIP SHIPID SHIPDESCRIPTION

CONTAINER CONTAINERID CONTAINERDESCRIPTION

COMO DETERMINAR LA TB DE UN FOR EACH ANIDADOS 1. DETERMINAR LA TABLA BASE DE FOR EACH EXTERNO SIN CONSIDERAR EL FOREACH ANIDADO. 2. SI TODOS LOS ATRIBUTOS DEL FOR EACH ANIDADO PERTENECEN A LA TABLA BASE DEL FOR EACH EXTERNO QUIERE DECIR QUE LATABLA BASE ES LA MISMA. 3. SI NO SE CUMPLE EL 2 DETERMINAR LA TABLA BASE DEL FOR EACH ANIDADO DE LA FORMA HABITUAL.

CORTE DE CONTROL: RECUPERAR DATOS AGRUPADOS DE UNA MISMA TABLA. CON FOR EACH ANIDADES DOS FOR EACH POR LA MISMA BASE LO ESTABLECEMOS CON ORDER DEFINIR CRITERIOS DE CORTE DE FUERA HACIA DENTRO (USAR ORDER POR ATRIBUTO QUE HACE LA AGRUPACION). CANTIDAD DE FOR EACH ANIDADO ES IGUA A UNO MAS QUE LOS CRITERIOS DE CORTE.

DOBLE CORTE DE CONTROL FOR EACH ORDER BOOKDATE PRINT PB3 (BOOKDATE) FOR EACH ORDER GENEROID DEFINE BY BOOKTITLE PRINT PB2 (GENERO DESCRIPTION) FOR EACH PRINT PB1 (GENERO DESCRIPTION) ENDFOR ENDFOR ENDFOR

NECESIDAD DE INVOCAR A UN OBJETO DESDE OTRO Call Otro tipo de llamada a un Objeto &discount =

Otro tipode llamada a un objeto &Discount = Getdiscount(Customerid, FligthId))

Regla definida en GetDiscount procedure:

parm (CustomerId, Fligth,&discount)

Parametros: Entrada: Salida: IN OUT

Entrada/Salida IN/OUT

Calcular de la Edad de una Persona: Proc: Calcular Edad: Parm(in : &fechanacimiento, out: &edad)

Web Panel --- > &EdadPersona = CalcularEdad(&FNac)

PASAJE DE PARAMETROS POR VALOR: pasar el parmetro pero no es modificar

FORMULAS LOCALES

FECHA: 03/02/2014 HORA: 09:35 AM6 INSTRUCTOR: ING. RODOLFO ROBALLO rroballo@genexus.com

DATA SELECTORS Objeto que permite almacenar cierta definicin., Revisar

WEB PANELS
Como pantalla para pedir datos Desplegar Informacin de la Base de Datos Ejemplos: Ver Informacin de un Cliente. EVNTO DE UN WEB PANEL 1. GET (CUANDOS E INICIA EL WEB PANEL) - START - REFRESH - LOAD (n veces si el panel tiene Tabla Base, 1 vez sino tiene tabla base ) 2. POST (CUANDO SE CLICKEA UN BOTON O UNA LISTA) - START - Lectura e variables en pantalla - Evento de Menus - REFRESH - LOAD (n veces si el panel tiene Tabla Base, 1 vez sino tiene tabla base )