Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Es Genexus X Quick Start PDF
Es Genexus X Quick Start PDF
Julio 2008
Marcas Registradas
ARTech y GeneXus son marcas o marcas registradas de ARTech Consultores S.R.L. Todas las dems marcas
mencionadas en este documento son propiedad de sus respectivos dueos.
Pgina 1
Introduccin ........................................................................................................................................... 3
GeneXus Trial Version ............................................................................................................................. 3
Restricciones Funcionales......................................................................................................................... 3
Restricciones de Licencia ......................................................................................................................... 3
License Agreement ................................................................................................................................. 3
Soporte Tcnico ...................................................................................................................................... 4
Instalacin y Autorizacin ....................................................................................................................... 4
Requerimientos de Instalacin .................................................................................................................. 4
Requerimientos del Generador .NET .......................................................................................................... 5
Autorizacin ........................................................................................................................................... 6
PRIMEROS PASOS: Tutorial paso a paso .................................................................................................. 8
Simbologa utilizada ................................................................................................................................ 8
PARTE 1: Descubriendo GeneXus ............................................................................................................ 9
Qu es GeneXus? .................................................................................................................................. 9
PARTE 2: Su primera aplicacin............................................................................................................. 10
Diseo de aplicaciones basado en el conocimiento .................................................................................... 10
Paso 0: Caso de estudio ..................................................................................................................... 10
Paso 1: Entorno de desarrollo ............................................................................................................. 11
Paso 2: Creacin de una Base de Conocimiento y definicin del Enviroment.............................................. 11
Paso 3: Creacin de un Objeto Transaccin .......................................................................................... 13
Paso 4: Descripcin de la Estructura de la Transaccin (Structure) .......................................................... 14
Paso 5: Definicin de Campos Calculados Frmulas ............................................................................ 18
Paso 6: Visualizando del Modelo de Datos inferido por GeneXus .............................................................. 19
Paso 7: Visualizacin de los Formularios del Objeto Transaccin .............................................................. 21
Paso 8: Ejecucin de su Aplicacin ...................................................................................................... 23
Paso 9: Prueba de su Aplicacin .......................................................................................................... 25
Paso 10: Agregar Reglas del Negocio Reglas ..................................................................................... 26
Paso 11: Creacin del Objeto Transaccin Cliente .................................................................................. 28
Paso 12: Revisin de los Cambios efectuados al Modelo de Datos ............................................................ 30
Paso 13: Visualizacin del Reporte de Especificacin .............................................................................. 32
Paso 14: Creacin de los Formularios Atrayentes Temas ..................................................................... 34
PARTE 3: Mantenimiento ....................................................................................................................... 35
Desarrollo Incremental y Mantenimiento de la Aplicacin ........................................................................... 35
Paso 15: Inclusin de Nuevos Objetos: Transaccin Producto ................................................................. 35
Paso 16: Anlisis y reorganizacin de la BD .......................................................................................... 37
PARTE 4: Agregando funcionalidad ....................................................................................................... 39
Utilizacin de Patrones en el desarrollo .................................................................................................... 39
Paso 17: Aplicar un pattern ................................................................................................................ 39
PARTE 5: Dilogos interactivos ............................................................................................................. 41
Diseo de Consultas y Dilogos Interactivos (Web Panels) ......................................................................... 41
Paso 18: Creacin de un Web Panel: Facturas por cliente. ...................................................................... 41
Paso 19: Ejecucin del Web Panel modificando la instancia del Pattern..................................................... 44
PARTE 6: Enriqueciendo la aplicacin .................................................................................................... 46
Controles de usuarios ............................................................................................................................ 46
Paso 20: Implementacin de un User Control........................................................................................ 46
PARTE 7: Procedimientos ...................................................................................................................... 49
Diseo de Procesos No Interactivos (Procedimientos) ................................................................................ 49
Paso 21: Implementacin de un Procedimiento para impresin ............................................................... 50
Paso 22: Implementacin de un Procedimiento para actualizacin ........................................................... 54
PARTE 8: Multiplataforma ..................................................................................................................... 56
Desarrollo Multiplataforma ..................................................................................................................... 56
Resumen ............................................................................................................................................... 57
FAQ ....................................................................................................................................................... 58
Contactos y Recursos ............................................................................................................................ 61
La Comunidad GeneXus ......................................................................................................................... 61
Soporte ............................................................................................................................................... 61
Como Comprar ..................................................................................................................................... 61
Links recomendados.............................................................................................................................. 61
Pgina 2
Introduccin
El objetivo de este documento es ayudarlo a descubrir el potencial de la metodologa de desarrollo
basada en el conocimiento propuesta por GeneXus a travs de sus principales funcionalidades:
90 atributos
140 objetos.
Restricciones de Licencia
La GeneXus Trial Version puede ser utilizada exclusivamente para evaluacin y capacitacin. Su
instalacin es local y para un solo usuario.
License Agreement
Condiciones de Uso de la Licencia de Propiedad Intelectual GeneXus X Trial Version
1. El presente acuerdo se refiere a licencia de la propiedad intelectual de ejemplares de GeneXus X Trial Version,
creacin inteligente basada en conocimiento, que disea, genera y mantiene automticamente, bases de datos y
aplicaciones.
2. Artech Consultores S.R.L. (en adelante Artech) declara y el USUARIO reconoce que la creacin intelectual
GeneXus, as como los nombres y logotipos GeneXus, GXflow, GXplorer , GXportal, GXquery y Artech como
cualquier otra marca comercial (trademark) que introduzca Artech en conexin con GeneXus, con independencia
del hecho de que estn registrados o no, son propiedad de Artech. Este convenio no implica directa ni
indirectamente transferencia alguna de esa propiedad y no habilita al USUARIO a transferir las licencias objeto del
presente documento.
3. El USUARIO se compromete a utilizar GeneXus X Trial Version sin divulgar ni usar en provecho propio
cualquiera de las ideas y tcnicas que hacen posible GeneXus. En particular, se obliga a no usar procedimientos de
ingeniera inversa para interpretar su cdigo, ni facilitar a otros que lo hagan.
4. En ningn caso el USUARIO podr duplicar o desactivar los mecanismos de proteccin contra uso no autorizado
de GeneXus. Artech se reserva el derecho de cambiar en cualquier momento estos mecanismos y/o adicionar
otros nuevos.
5. Observando las bases generales, Artech licencia al USUARIO la herramienta GeneXus X Trial Version, bajo
las siguientes condiciones:
Pgina 3
Soporte Tcnico
Si necesita ayuda para la instalacin y autorizacin de su versin trial, contctese con:
gxtrial@genexus.com
Si se encuentra en los Estados Unidos o en Canad puede enviar consultas de soporte a:
gxtrial.usa@genexus.com
Para saber ms sobre los distintos servicios y recursos de soporte tcnico y capacitacin de GeneXus
visite: http://www.genexus.com/support y http://www.genexus.com/training
Por informacin adicional, contctese con su distribuidor local: http://www.genexus.com/distributors o
escrbanos a info@genexus.com
Instalacin y Autorizacin
Requerimientos de Instalacin
La GeneXus Trial Version incluye los siguientes productos:
Modelador GeneXus
Es un ambiente de desarrollo integrado (Integrated Development Environment o IDE) para el
diseo, desarrollo, y mantenimiento de aplicaciones de negocios, independientemente de la
plataforma de produccin utilizada.
Generadores GeneXus
GeneXus genera cdigo nativo para las principales plataformas del mercado. Para conocer la lista
completa de los Generadores GeneXus visite: http://www.genexus.com/technologies. El
generador disponible en la GeneXus Trial Version es el Generador .NET.
Pgina 4
A continuacin encontrar la lista del hardware y software necesario para ejecutar GeneXus y las
aplicaciones generadas por GeneXus.
Requerimientos de
Hardware
Requerimientos de
Software
Generador
Requerimientos
.NET
Para crear la base de datos de su aplicacin y ejecutar las aplicaciones generadas, requerir uno de
los siguientes DBMS:
SQL Server (En cualquiera de sus ediciones). Si es la primera vez que instala SQL, se crear
por default un Base de datos con el usuario sa y el password genexustrial.
Pgina 5
Autorizacin
1. Ejecute el archivo de setup de la GeneXus Trial Version (genexusxtrial.exe) desde el men de
Inicio de Windows o seleccionando la opcin apropiada en el CD de su Versin Trial.
Pgina 6
4. Complete los campos solicitados: Nombre, email y pas son obligatorios mientras que Compaa y
Telfono son opcionales.
5. En caso de haber requerido la opcin Online y de haber ingresado los datos correctamente, se
activar en forma inmediata GeneXus X Trial Version por un perodo de 60 das.
6. Si ha elegido la opcin By Mail, GeneXus le requerir ingresar Nombre y pas en forma
obligatoria. Los campos Telfono y Compaa son opcionales. Deber confirmar los datos
ingresados. Si los mismos son correctos presione CONTINUAR. Si desea modificar los valores
ingresados presione ANTERIOR. Esta activacin requiere tener configurado el Outlook como casilla
de correo principal. El administrador de licencias generar un mail con el Site Code
correspondiente. Usted recibir su Site Key va mail.
7. Si el Outlook no es su casilla principal de correo, puede solicitar activacin Manual, enviando
desde cualquier casilla de mail los datos generados por el activador de licencias. El Site Key de
activacin ser enviado a la misma casilla de correo. Copie y pegue su Site Key en el campo de
Site Key de la ventana Authorization Required y haga clic en Continuar.
8. Usted ya est listo para comenzar a usar su GeneXus Trial Version!
9. Si requiere ayuda para activar GeneXus X Trial Version escrbanos a gxtrial@genexus.com.
Pgina 7
En este ejercicio paso a paso usted crear una aplicacin de negocios simple y la instalar en una de
las plataformas soportadas por la GeneXus Trial Version: .NET. Para conocer la lista completa de
plataformas soportadas por GeneXus visite: http://www.genexus.com/technologies/
A medida que vaya trabajando con esta gua, usar las funcionalidades claves de GeneXus:
Diseo de aplicaciones basado en el conocimiento
Generacin inteligente de base de datos
Generacin automtica de cdigo
Aplicaciones completamente funcionales
Desarrollo incremental y mantenimiento automtico de la aplicacin
Diseo de Procesos no interactivos (Procedimientos)
Desarrollo en mltiples plataformas
Simbologa utilizada
!
Este smbolo introduce un TIP. Recomendamos leer lo que este dentro del
recuadro.
Pgina 8
Qu es GeneXus?
Bsicamente, GeneXus es un programa que hace programas.
Es una herramienta que parte de las visiones de usuarios, y a partir de ah encapsula el conocimiento
en lo que llamaremos Base de Conocimiento. GeneXus sistematiza ese conocimiento, y desde all
automatiza el diseo, construccin y mantenimiento de la BD y los programas.
Pgina 9
Entender las necesidades del usuario final es una de las pocas tareas que no se pueden
automatizar en el desarrollo de software. Nos referimos a los desarrolladores de
GeneXus como analistas de negocios en lugar de programadores, codificadores o
desarrolladores.
Pgina 10
Ventana principal: Esta compuesta por la Start Page o Pgina de Inicio la cual a travs de
un RSS en forma dinmica brinda informacin tcnica relacionada con la herramienta y la
comunidad de usuarios. Para obtener esta informacin es necesario estar conectado. Si
su equipo se encuentra desconectado a Internet no podr acceder a las novedades
publicadas en el GeneXus Community.
Ventana de herramientas
Barras de herramientas
Pgina 11
Enviroment
Si es la primera vez que abre GeneXus Trial y no ha ejecutado previamente en su equipo una versin
comercial del producto, GeneXus le indicar que proceder a ejecutar la creacin de una base de
conocimiento en forma automtica. La primera vez que abra la versin trial se crear
automticamente una Base de Conocimientos en un ambiente en .NET con SQL.
Pgina 12
Objeto Transaccin
El siguiente paso, una vez creada la base de conocimiento ser crear la primera transaccin, que
representa una factura. Para ellos siga los siguientes pasos:
1. Haga clic derecho sobre
Objects/New/Object
o vaya al men
FILE/NEW OBJECT.
Tambin puede crear un
nuevo objeto utilizando
el shortcut CTRL N.
2. Seleccione el tipo de
objeto que quiere crear:
Transaction
3. Ponga nombre al
Objeto:Invoice.
4. Haga clic en CREATE.
Pgina 13
La Estructura del Objeto Transaccin es una descripcin de los datos requeridos para
conocer el objeto real que este representa. En la estructura, debemos declarar los
atributos (campos) que forman la transaccin (los datos con los que el usuario
interactuar) y las relaciones entre ellos. En base a esta estructura, GeneXus disea y
mantiene automticamente la base de datos correspondiente (tablas, claves, ndices,
restricciones de integridad, etc.) en 3era forma normal. El mismo atributo deber tener
siempre el mismo nombre en cada lugar donde aparezca y a la vez que dos atributos
diferentes no podrn tener el mismo nombre.
Los elementos claves para definir la estructura de la transaccin son los siguientes:
ATRIBUTO
TIPO
DESCRIPCIN
InvoiceID
Numeric(4.0)
Invoice ID
InvoiceDate
Date
Invoice Date
CustomerID
Numeric(4.0)
Customer ID
CustomerName
Character(20)
Customer Name
Hasta aqu hemos ingresado los campos del cabezal de la factura. Ahora
ingresaremos las lneas. Para eso, presione CTRL + Flecha Derecha para agregar
Pgina 14
Numeric(4.0)
Product ID
ProductName
Character(20)
Product Name
ProductPrice
Numeric(8.2)
Product Price
LineQuantity
Numeric(4.0)
Line Quantity
LineTotal
Numeric(8.2)
Line Total
Presione ENTER y luego CTRL + Flecha Izquierda para volver al nivel del cabezal
y comenzar los datos del pie.
InvoiceSubtotal
Numeric(8.2)
Invoice Subtotal
InvoiceTax
Numeric(8.2)
Invoice Tax
InvoiceTotal
Numeric(8.2)
Invoice Total
El primer atributo de cada nivel es definido por defecto como clave primaria de ese nivel, pero
esto se puede cambiar hacienda clic derecho sobre el atributo y eligiendo la opcin Toggle Key
(Ctrl+K). Los atributos de Clave Primaria se identifican por una pequea llave a la izquierda de sus
nombres ( ). En este ejemplo, InvoiceID es el identificador de primer nivel, y el atributo
ProductID es el identificador de segundo nivel. Esto significa que, para un nmero de factura dado
(InvoiceID), el valor del atributo ProductID no se repetir en lneas diferentes.
Pgina 15
Pgina 16
Pgina 17
InvoiceSubTotal = SUM(LineTotal)
InvoiceTaxes= InvoiceSubTotal * 0.11 ( o el nmero que corresponda)
InvoiceTotal = InvoiceSubtotal + InvoiceTax
1. Haga doble clic en el campo Formula del atributo LineTotal (a la derecha de la descripcin del atributo).
2. Escriba lo siguiente: ProductPrice * LineQuantity. Tambin se puede hacer clic sobre el botn sobre el
campo de la frmula para abrir el Editor de Frmula.
3. Repita los Pasos 1 y 2 para el resto de las frmulas que aparecen en la lista al principio de esta seccin.
4. Haga clic en Save para salvar las nuevas frmulas.
Pgina 18
Siempre que se haga clic en el botn Salvar, GeneXus inferir el modelo de datos ptimo
(3era forma normal sin redundancias) que soporte a las entidades del usuario final
representadas por los objetos de su transaccin GeneXus. En base a este modelo de
datos, GeneXus generar una base de datos fsica cuando usted defina un DBMS objetivo
para un modelo.
Pgina 19
Invoice
InvoceProduct
InvoiceID
InvoiceID
InvoiceDate
ProductID
CustomerID
ProductName
CustomerName
ProductPrice
LineQuantity
Pgina 20
Ntese que:
La clave primaria de la tabla InvoceProduct est formada por dos atributos: InvoiceID y
ProductID (la concatenacin del identificador de primer nivel, InvoiceID, con el identificador
del segundo nivel, ProductID).
GeneXus elimin automticamente de las tablas los atributos que se haban definido como
frmulas y los convirti en frmula globales para que se pueda acceder a ellas desde cualquier
lugar dentro de la base de conocimiento).
En la tabla Invoice:
o No pueden haber dos facturas con el mismo InvoiceID.
o Para cada InvoiceID hay un nico valor de InvoiceDate, CustomerID y
CustomerName.
En la tabla InvoceProduct:
o No pueden haber dos lneas de factura con la misma InvoiceID y ProductID.
o Para cada par de InvoiceID y ProductID hay un nico valor de ProductName,
ProductPrice y LineQuantity.
Formulario Web
Pgina 21
Error Viewer: ctlError es el control predeterminado donde se despliegan mensajes de error. Puede
ponerse en cualquier lugar del formulario y configurrsele propiedades. Los mensajes posibles son los
que se despliegan en Msg y reglas de Error, y los controles automticos de GeneXus (es decir,
integridad referencial, errores tipo de datos, etc.).
Estos formularios habilitarn a los usuarios finales a ingresar nuevas facturas que se insertarn como
nuevos registros en las tablas correspondientes. Los usuarios tambin podrn actualizar o eliminar las
facturas existentes, siempre que tengan los derechos para hacerlo.
El analista de GeneXus no necesita programar ninguna de estas acciones porque estn implcitas en la
lgica de la transaccin. GeneXus generar automticamente el cdigo nativo correspondiente en el
lenguaje seleccionado.
Pgina 22
GeneXus genera los programas ejecutables requeridos para crear su base de datos
en el DBMS seleccionado en base al modelo de datos inferido.
Cuando usted est actualizando su estructura de datos, GeneXus genera los
programas ejecutables requeridos para reorganizar la base de datos; es decir, crea
un nuevo esquema y convierte los datos del viejo esquema al nuevo.
En estos casos se desplegar un Reporte de Creacin de Base de Datos o un
Reporte de Anlisis de Impacto respectivamente, que le mostrarn lo que har
GeneXus.
En este paso, ejecutaremos la aplicacin en .NET usando SQL Server como nuestro DBMS. En la
versin comercial usted puede usar cualquiera de los DBMS soportados por GeneXus. Consulte la lista
completa de los DMBS soportados por GeneXus aqu:
http://www.genexus.com/technologies
Pgina 23
1. Presione F5 o vaya a travs del men opcin BUIL /RUN DEVELOPER MENU.
2. El Ayudante lo guiar en la
configuracin de la BD. Configure lo
siguiente:
Database name: Demo
Server name: localhost
Use trusted connection: Yes
Figura: Output
Pgina 24
1. El Men del
Desarrollador es un
archivo XML que incluye
a todos sus objetos
ejecutables. Es un men
auxiliar para probar su
aplicacin. Haga clic en
la opcin Invoice.
2. Ingrese algunas
instancias de factura.
Gracias a la tecnologa
AJAX, las frmulas se
calculan
automticamente, sin
necesidad de recargar
toda la pgina.
Pgina 25
Reglas GeneXus
Las Reglas GeneXus son el medio para definir la lgica del negocio asociada a cada
objeto. Son escritas en forma declarativa y GeneXus decide de manera inteligente que
regla aplicar y cuando aplicarla.
Las reglas juegan un rol muy importante en los objetos transaccin porque permiten
programar su comportamiento (por ejemplo: asignando valores predeterminados,
definiendo controles de datos, etc.).
Slo son vlidas en la transaccin en la que han sido definidas. Por eso decimos que son
locales.
Ahora agregaremos una regla simple que configura por defecto la Fecha de la Factura como la fecha
del da actual:
1. Seleccione la solapa Reglas de la transaccin Invoice.
2. Utilizaremos la regla Default que asigna un valor predeterminado a un atributo o variable.
3. Complete la frmula del modo siguiente: Default(InvoiceDate, &today);lo que indica que
el valor predeterminado de la Fecha de la factura ser la fecha actual. 1
4. Haga clic en el botn de salvar.
Tenga en cuenta que usted tambin puede usar las opciones Insertar / Atributo e Insertar / Frmula del men
Insertar para completar la regla.
Pgina 26
Ahora otra regla simple que establece un mensaje de error si la cantidad de productos ingresada es
nula:
5. Agregue la siguiente regla: Error("The product cannot be empty")
LineQuantity.IsEmpty();
6. Haga clic en el botn de salvar.
if
Pgina 27
ATRIBUTO
TIPO
DESCRIPCIN
CustomerID
---------
--------------------
CustomerName
---------
--------------------
CustomerAddress
Character(50)
Customer Address
CustomerEmail
Character(50)
Customer Email
Ntese que cuando comienza a escribir los atributos CustomerID y CustomerName, GeneXus le
indica el nombre completo del atributo y su tipo y descripcin. Esto sucede porque estos atributos
ya estn definidos en su base de datos.
Pgina 28
Ntese (abajo) que el Formulario Web de la Factura tambin ha cambiado, reflejando los cambios en
las propiedades del atributo CustomerID: el atributo CustomerName es ahora el la descripcin del
atributo CustomerID. Esto mejorara notablemente la usabilidad de la aplicacin como veremos
rpidamente!
Pgina 29
Anlisis de Impacto
Describe los cambios fsicos que se debern realizar para actualizar al nuevo modelo de
datos inferido por GeneXus.
NOTE
En warning de especificacin se refiere a que puede haber valores duplicados de clientes en la tabla
Invoice y que al normalizar estos pude afectar. Tambin se muestra otro warning indicando que los
registros que se van a crear tienen valor nulo en las tablas.
Pgina 30
Ntese que:
GeneXus agreg una nueva tabla: la tabla Customer (asociada a la transaccin Customer).
El atributo CustomerName se ha eliminado de la tabla Invoice (este atributo est almacenado
nicamente en la tabla Cliente), dejando la base de datos normalizada.
En la tabla Customer:
o No pueden haber dos clientes con el mismo CustomerID.
o Por cada CustomerID hay un nico valor de CustomerName, CustomerAddress y
CustomerEmail.
En la tabla Invoice:
o No pueden haber dos facturas con el mismo InvoiceID.
o El atributo CustomerID en la tabla Invoice es una clave fornea tomada de la tabla
Cliente. Por lo tanto, existe una relacin de uno a muchos entre Clientes y Facturas:
Por cada InvoiceID existe nicamente un CustomerID.
Cada CustomerID puede tener muchas Facturas (InvoiceID).
Pgina 31
Reporte de Especificacin
Pgina 32
Pgina 33
Objeto Tema
Pgina 34
PARTE 3: Mantenimiento
Tiempo estimado: 15 minutos
A medida que la realidad cambia, los requerimientos del sistema evolucionan y esto se
traduce en cambios en los objetos GeneXus y/o nuevos objetos. En base a los nuevos
objetos, GeneXus actualizar su base de datos automticamente (creando un nuevo
esquema de base de datos y migrando los datos del viejo esquema al nuevo) y
regenerar los programas de la aplicacin que deban ser modificados.
Decimos que la Metodologa GeneXus es incremental porque se basa en la presuncin de
que el desarrollo del sistema es un proceso iterativo que pasa por sucesivas
aproximaciones. El desarrollo incremental es posible porque GeneXus pude mantener el
esquema de su base de datos y los programas de su aplicacin automticamente.
Pgina 35
TIPO
DESCRIPCIN
ProductID
---------
--------------------
ProductName
---------
--------------------
ProductPrice
---------
--------------------
Notar que tan pronto como empiece a escribir estos nombres de atributo, GeneXus le indicar el
nombre completo. Esto sucede porque estos atributos ya estn definidos en su Base de
Conocimiento.
Pgina 36
Figura: Listado de Base de Datos (Modelo de Datos) para InvoiceProduct y tablas Producto
1. Seleccione Reorganize.
Pgina 37
Pgina 38
Patterns o Patrones
Son acciones similares aplicadas a distintos elementos. Los patrones permiten crear
automticamente todos los objetos necesarios para cumplir la funcionalidad especificada,
evitando que deba realizarse en forma manual.
Pgina 39
6. Ejecute la aplicacin
El pattern agreg la siguiente
funcionalidad:
Filtro por fecha, sin necesidad de
refrescar la aplicacin.
Se puede ordenar por las
columnas haciendo click en el
cabezal de las mismas.
Se puede paginar la grilla.
Haciendo click en un link vamos al
view de un objeto, donde se
muestran los datos relacionados.
Guarda el histrico con los links
visitados.
Pgina 40
Web Panels
Los Web Panels son usados para hacer dilogos y consultas interactivos a la base de
datos en ambientes Web. Permiten implementar diferentes tipos de consultas y
visualizar los datos de muy diversas maneras.
Los Web Panels son programados usando un lenguaje simple dirigido por eventos.
Pgina 41
5. Aparecer el Formulario
vaco del Web Panel. En el
men View, seleccione
Other Tool Windows,
opcin Toolbox. Arrastrar
un control Free Style Grid.
6. Expanda la grilla.
8. Seleccione el atributo
CustomerName y haga clic
en OK.
Pgina 42
Pgina 43
Paso 19: Ejecucin del Web Panel modificando la instancia del Pattern
Vamos a modificar la instancia el Pattern Trabajar con Clientes en la transaccin Customer de
manera de poder acceder al Web Panel InvoicesPerCustomer.
1. Abrir la Transaccin
Customer y vamos al
Patter presionando el
botn Work With.
2. Vamos a agregarle
una accin a esta
instancia del Pattern y
esta accin la vamos a
asociar a un botn
fuera de la grilla
convocando al web
Panel Facturas por
Cliente.
3. Posicionarse botn
derecho sobre la
opcin Selection
(Work With
Customers) y elegir la
opcin ADD, Actions.
Pgina 44
5. Editamos sus
propiedades
presionando F4.
8. Ejecutamos la
aplicacin presionando
F5.
9. En ejecucin,
seleccionar la opcin
Work with Customers
para ver el botn que
invoca al web panel
creado.
Pgina 45
Controles de usuarios
User Controls
Son controles web que pueden ser insertados en el form de cualquier objeto web de
GeneXus y que van a aumentar notoriamente la funcionalidad y apariencia de nuestra
aplicacin. Adems de los user controls estndares provistos (Chart, Image Galery, Map,
Treeview), GeneXus nos provee de un Editor de User Controls a travs del cual
podremos modificar los user controls ya existentes y crear nuestros propios user controls
e incorporarlos a GeneXus.
Nuestro objetivo ser representar en forma grfica las ventas por producto. Para cumplir este
requerimiento vamos a usar el User Control Chart.
Pgina 46
Figura: Eventos
Pgina 47
FELICITACIONES!
Usted ha creado con xito su primera aplicacin con GeneXus.
Nuestro prximo paso es brindarle mayor informacin sobre las cosas que pueden realizarse con
GeneXus.
Pgina 48
PARTE 7: Procedimientos
Tiempo estimado: 15 minutos
Procedimientos
Hasta el momento hemos trabajado con los Objetos Transaccin que son objetos
GeneXus que requieren la intervencin del usuario para insertar, actualizar y eliminar
registros en la base de datos. No obstante, muchas veces necesitamos realizar tareas sin
la intervencin del usuario. Para ello, usamos otro tipo de Objetos GeneXus:
Una funcionalidad clave de los Procedimientos GeneXus es que con ellos usamos la
misma metodologa basada en el conocimiento que usamos para definir los Objetos
Transaccin. Esto significa que la definicin de estos objetos se basa en nombres de
atributos y no en las tablas de la base de datos donde dichos atributos son almacenados.
Por lo tanto, la definicin de sus Procedimientos permanece vlida siempre que los
atributos declarados dentro de los mismos estn presentes en la Base de Conocimiento.
En nuestro ejemplo crearemos un Reporte simple (uno que muestre todos los datos de una factura).
Pgina 49
Nuestro objetivo ser crear un procedimiento que liste todos nuestros clientes junto a su total y otro
que permita modificar los precios vigentes en un 10%.
For each
&Total=SUM(InvoiceTotal)
Print printBlock1
Endfor
Pgina 50
6. Grabe el procedimiento.
Pgina 51
Output_file('Customers.PDF','PDF');
Pgina 52
Event 'Imprimir'
CustomerReport.Call
EndEvent
Pgina 53
For each
ProductPrice =
ProductPrice+ProductPrice*0.10
Endfor
Pgina 54
Event Enter
Discount_of_prices.call()
EndEvent
Figura: Evento
Pgina 55
PARTE 8: Multiplataforma
Tiempo estimado: 5 minutos
Desarrollo Multiplataforma
GeneXus es una herramienta que permite generar aplicaciones de misin crtica en mltiples
plataformas. Una vez que ha generado y ejecutado una aplicacin en uno de esos ambientes, generar
y ejecutar la misma aplicacin en el otro ambiente es tan simple como definir un nuevo ambiente.
La GeneXus Trial Version ofrece nicamente el generador GeneXus .NET. No obstante, la versin
completa de GeneXus suporta las plataformas lderes del mercado. De este modo la misma aplicacin
generada para .NET con SQL puede ser generada para diferentes plataformas manteniendo las
mismas funcionalidades.
Visite http://www.genexus.com/technologies para obtener una lista
completa de las tecnologas soportadas por GeneXus.
Pgina 56
Resumen
Esperamos que este tutorial le haya permitido experimentar las funcionalidades y beneficios claves de
GeneXus:
Mantenimiento de la Aplicacin
Hemos visto lo sencillo que es mantener/expandir una aplicacin, simplemente editando los objetos
GeneXus existentes y/o agregando nuevos, y luego GeneXus actualiza la base de datos y regenera los
programas de la aplicacin en forma automtica.
Desarrollo Multi-plataforma
Finalmente hemos descripto como migrar fcilmente su aplicacin GeneXus de un ambiente a otro.
Pgina 57
FAQ
Question
Question
Question
Si, en GeneXus existe una herramienta (DBRET: Data Base Reverse Engineering) que permite realizar
el acceso a BD existentes en distintas tecnologas.
Question
Question
Si,
GeneXus
permite
integrar
diferentes
tipos
de
controles.
http://gallery.genexus.com/catalog.aspx?3
y
http://wiki.gxtechnical.com/commwiki/servlet/hwiki?category%3AUser+Controls,
Ver
ms
en
en
Pgina 58
Question
Dada una tabla base, su tabla extendida es el grupo de atributos que son directa o indirectamente
determinados por la clave de la tabla base:
Usos:
Para encontrar la tabla extendida de una tabla dada se puede usar el Diagrama de Bachmann del
modelo de datos de la base de conocimiento:
1. Sobre la opcin Objects, cree un nuevo objeto del tipo Diagrams
2. Seleccione las tablas que desea desplegar y arrstrelas.
En este ejemplo, podemos identificar la tabla extendida de cada una de las tablas de nuestro
proyecto:
Tabla Base
Customer
Invoice
InvoiceProduct
Tabla Extendida
Customer
Invoice, Customer
InvoiceProduct, Invoice, Customer
Pgina 59
Question
El comando For Each es el corazn del lenguaje de procedimientos usado por GeneXus para definir
reportes y procedimientos. Recupera y actualiza informacin (mediante procedimientos online) desde
su base de datos.
Con el comando For Each usted puede definir la informacin a la que desea acceder y nombrar los
atributos que desea usar. GeneXus inferir automticamente las tablas apropiadas en tiempo de
generacin. Cuando la estructura de la base de datos cambie, las definiciones del For Each
permanecern vlidas.
La sintaxis bsica del For Each es la siguiente:
for each
print <something>
endfor
Cada comando For Each tiene una tabla de modelo de datos asociada que ser navegada. Est
compuesto de la tabla base del For Each y su tabla extendida (las tablas que GeneXus necesita
para buscar los atributos mencionados en el comando).
Las tablas que sern accedidas son determinadas por los atributos contenidos en el comando
For Each.
Para este grupo de atributos, GeneXus inferir la mnima tabla extendida.
La tabla base de este grupo de atributos ser la tabla base del For Each
Pgina 60
Contactos y Recursos
La Comunidad GeneXus
La Comunidad GeneXus le brinda diversas formas de obtener respuestas a sus preguntas y soluciones
a sus problemas, as como tambin oportunidades para compartir sus propias experiencias. Encontrar
una lista completa de los recursos disponibles de la Comunidad en
http://www.genexus.com/community/
Soporte
ARTech ofrece una amplia variedad de servicios y recursos de soporte:
Visite http://www.genexus.com/support/
Si usted vive en Estados Unidos o Canad puede enviarnos sus preguntas a gxtrial.usa@genexus.com
Como Comprar
Las Tecnologas GeneXus se venden a travs de la red de distribuidores en todo el mundo.
Encuentre su distribuidor ms cercano aqu http://www.genexus.com/distributors
O pngase en contacto con sales@genexus.com
Links recomendados
Web site: http://www.genexus.com
GeneXus X Basic Course: http://www.gxtechnical.com/basiccourse/
Laboratorio prctico de GeneXus X y Libro online: www.genexusx.com/aprenda
Comunidad GeneXus: http://www.genexus.com/community
Pgina 61