Laboratorio GeneXus X            Evolution 1         For Dummies            Última actualización: 24 de Marzo de 2011
Laboratorio GeneXus X Evolution 1Copyright  Artech Consultores S. R. L. 1988-2010.Todos los derechos reservados. Este doc...
Laboratorio GeneXus X Evolution 11. Tabla de Contenido1.      Tabla de Contenido ............................................
Laboratorio GeneXus X Evolution 12. Objetivo Poner en práctica varios de los conceptos de la versión GeneXus X Evolution 1...
Laboratorio GeneXus X Evolution 1o   Use Trusted Connection = Noo   User Id = sao   User password = artech                ...
Laboratorio GeneXus X Evolution 1   Importar todos los objetos del XPZ1.xpz: Knowledge Manager -> Import:   Presionar F5...
Laboratorio GeneXus X Evolution 1    4. Diseño y gestión    Inicialmente introduciremos algunos conceptos de Diseño y gest...
Laboratorio GeneXus X Evolution 1Documentación  La documentación y organización del proyecto forma parte fundamental de un...
Laboratorio GeneXus X Evolution 1 8.      Seleccionar el tipo de objeto Transaction. Al seleccionar el tipo se desplegará ...
Laboratorio GeneXus X Evolution 13.   Ahora realizaremos una búsqueda avanzada, donde buscaremos los objetos que son “Busi...
Laboratorio GeneXus X Evolution 1e. Hacer la búsqueda (clic en Search). Aparecerán todas las transacciones que sean Busine...
Laboratorio GeneXus X Evolution 1Categorías  Además de la vista por folders GeneXus X Evolution 1 incorpora la categorizac...
Laboratorio GeneXus X Evolution 1Diagramas de Transacciones y tablas  El nuevo diagrama de tablas y transacciones permite ...
Laboratorio GeneXus X Evolution 1 6. Desarrollo de la aplicaciónPatterns 1. Aplicar el Pattern Work With a todas las trans...
Laboratorio GeneXus X Evolution 13.   Presionar F5 para ver la aplicación en ejecución. Lo primero que ejecuta es el Devel...
Laboratorio GeneXus X Evolution 1                        Página 15
Laboratorio GeneXus X Evolution 14.   Abrir el objeto AppMasterpage (ubicado en la carpeta “GeneralWeb” en la vista “Folde...
Laboratorio GeneXus X Evolution 1Ejecutar la aplicación con F5. Hacer clic en “Work With Matches”. Observar que se tiene u...
Laboratorio GeneXus X Evolution 1b.   A continuación, vamos a modificar la edición de los datos del grid para que sea posi...
Laboratorio GeneXus X Evolution 1Eliminar la columna PlayerName, y para el atributo PlayerIdentifier configurar:       La...
Laboratorio GeneXus X Evolution 1c.   Ejecutar “Work With Matches”. Hacer clic en  para poder ingresar un nuevo Match. En ...
Laboratorio GeneXus X Evolution 1Objeto Query  1.   Crear un Objeto Query (“Query1”) como el siguiente:  2.   Consolidar X...
Laboratorio GeneXus X Evolution 1                        Página 22
Laboratorio GeneXus X Evolution 14.   Configurar las siguientes propiedades del “Query Viewer” control:     Object= Query1...
Laboratorio GeneXus X Evolution 1                        Página 24
Laboratorio GeneXus X Evolution 1    6.          GlosarioCategorieshttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypag...
Upcoming SlideShare
Loading in...5
×

Lab genexusintroductorio

2,795

Published on

Published in: Technology, Spiritual
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,795
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
107
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Lab genexusintroductorio

  1. 1. Laboratorio GeneXus X Evolution 1 For Dummies Última actualización: 24 de Marzo de 2011
  2. 2. Laboratorio GeneXus X Evolution 1Copyright  Artech Consultores S. R. L. 1988-2010.Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimientoexplícito de Artech Consultores S.R.L. La información contenida en este documento es para uso personal únicamente.Marcas RegistradasArtech y GeneXus son marcas o marcas registradas de Artech Consultores S.R.L. Todas las demás marcasmencionadas en este documento son propiedad de sus respectivos dueños. Página 1
  3. 3. Laboratorio GeneXus X Evolution 11. Tabla de Contenido1. Tabla de Contenido ............................................................................................. 22. Objetivo ............................................................................................................. 33. Preparación ........................................................................................................ 34. Diseño y gestión ................................................................................................. 6 Principales secciones del nuevo Integrated Development Environment (IDE) ..................... 6 Documentación ......................................................................................................... 7 Búsqueda ................................................................................................................. 8 Categorías .............................................................................................................. 11 Diagramas de Transacciones y tablas ......................................................................... 125. Desarrollo de la aplicación .................................................................................. 13 Patterns ................................................................................................................. 13 Web Transactions .................................................................................................... 17 Objeto Query .......................................................................................................... 216. Glosario ........................................................................................................... 25 Categories ........................................................................................................... 25 Fórmulas ............................................................................................................. 25 Patterns .............................................................................................................. 25 Reorganización ..................................................................................................... 25 User Controls ....................................................................................................... 25 Automatic Refresh ................................................................................................ 25 Query Object ........................................................................................................ 25 Página 2
  4. 4. Laboratorio GeneXus X Evolution 12. Objetivo Poner en práctica varios de los conceptos de la versión GeneXus X Evolution 1, familiarizarse con el entorno de desarrollo de la versión, y conocer algunas funcionalidades WEB, en particular el Query Viewer y User Control.3. Preparación  En la carpeta c:LabIntroductorio tiene los XPZ que se usarán durante el lab, al igual que el resto del material requerido.  Crear una nueva base de conocimiento, para lo cual, se le presentará el siguiente diálogo. Seleccionar el generador Ruby en el combobox de Prototyping Environment:  Configurar las propiedades de conexión del modelo. Ir por Knowledge Base Navigator-> Preferences, y seleccionar el DataStore SQL Server del Ruby Environment, como indica la figura más abajo. Editar el valor de las propiedades, considerando: o Database Name = Futbol o ServerName = localhostsqlexpress Página 3
  5. 5. Laboratorio GeneXus X Evolution 1o Use Trusted Connection = Noo User Id = sao User password = artech Página 4
  6. 6. Laboratorio GeneXus X Evolution 1 Importar todos los objetos del XPZ1.xpz: Knowledge Manager -> Import: Presionar F5 para ejecutar. GeneXus automáticamente detectará que han habido cambios y es necesario reorganizar. Observe el Impact Analysis Report, donde se muestran los cambios a realizar sobre las tablas y además las sentencias SQL que serán ejecutadas sobre la BD. Para ejecutar la reorganización, presione el botón “Create”. Una vez terminada la reorganización, aparecerá el mensaje “Reorganization Success” en el output window. Luego de la ejecución de la reorganización, observe que automáticamente se genera la aplicación, se ejecuta el Webrick (servidor web liviano) y se abre el browser, donde lo primero que ejecuta es el DeveloperMenú, que presenta las transacciones, y un Web Panel de nombre “Load Data”. Ir por el link del “Load Data” para cargar datos iniciales antes de empezar a trabajar. El Web Panel “LoadData” implementa una carga básica de datos. Solicita el path en donde se encuentran las imágenes de la aplicación. Ud. solo debe presionar el botón para que se efectúe la carga. A partir de aquí estará listo para realizar los ejercicios que siguen. Página 5
  7. 7. Laboratorio GeneXus X Evolution 1 4. Diseño y gestión Inicialmente introduciremos algunos conceptos de Diseño y gestión de la versión GeneXus X Evolution 1.Principales secciones del nuevo Integrated DevelopmentEnvironment (IDE)Las principales áreas del IDE de GeneXus X Evolution 1: 1: Knowledge Base Navigator. Un conjunto de menús contextuales para navegar sobre objetos (ya sea en su vista por directorios [“Folder View”] o categorías [Category View]), para visualizar la lista de los últimos cambios [“Latest Changes View”] y Preferencias del modelo [“Preferences"]. 2: Principal. Aquí se despliega la Start Page y una pestaña por cada uno de los Objetos abiertos 3: Salida de las distintas operaciones (especificación, generación, compilación, etc) [“Output”] 4: Diálogo de propiedades y toolboxes de controles, objetos y variables que están seleccionadas 5: Toolbars de GeneXus para acceder a todas las opciones de la Knowledge Base. Página 6
  8. 8. Laboratorio GeneXus X Evolution 1Documentación La documentación y organización del proyecto forma parte fundamental de un proceso de desarrollo, principalmente en sus fases iniciales pero además acompañando el desarrollo en todas sus instancias, no solo generándose nueva documentación sino incrementando o iterando sobre documentación generada en fases previas. Estas necesidades son satisfechas por GeneXus X Evolution 1 con el objeto Documentation, y además se brinda una mayor potencia a la documentación de cada objeto, utilizando la tecnología de wiki pages. Para ver esta funcionalidad de GeneXus comenzaremos realizando la edición de la documentación principal de la KB, donde agregaremos una referencia a la documentación de la transacción “Player”. Para esto se deben realizar los siguientes pasos: 1. Abrir la transacción “Player” (File -> Open Object, también la puede encontrar directamente buscando en el folder “Transactions”). 2. Escribir un texto de documentación en el tab Documentation de la misma: 3. Abrir el objeto de tipo Documentation llamado “Main”. En la vista de carpetas (“Folder View”)  Documentation / Main Document. 4. Abrir la vista de edición del objeto. (ver figura 1) Figura 1: Vistas del objeto de tipo Documentation 5. Agregar el siguiente texto: Objects Documentation: Documentation of Player Transaction: 6. Salvar la página, mediante Ctrl.+S o File / Save 7. Agregar el link a la documentación de la transacción “Player”: a. Escribir a continuación de “Documentation of Player Transaction” el texto “[[tr”, esto desplegará la lista de los diferentes tipos que pueden ser linkeados en la documentación: Página 7
  9. 9. Laboratorio GeneXus X Evolution 1 8. Seleccionar el tipo de objeto Transaction. Al seleccionar el tipo se desplegará la lista con todas las transacciones existentes en la KB. 9. Seleccionar la transacción “Player”, y salvar. 10. Volver al objeto Main. Pasando a la sección “Browse” del objeto podrá ver la documentación que se ha editado, permitiéndose navegar por los hyperlinks hacia los objetos que son referenciados. 11. Pasando a la sección de “History”, se podrá ver el histórico de cambios del documento lo que permitirá hacer un seguimiento de las modificaciones de la documentación, pudiéndose acceder a cada una de estas versiones para ver su contenido y las diferencias con la versión anterior.Búsqueda Un elemento que permite una mayor fluidez en el desarrollo y que permitirá encontrar fácilmente cualquier recurso buscado dentro de la KB, es la capacidad de búsqueda por contenido provista por el Search del IDE. 1. Abrir la toolbar de Búsqueda  View / Other Tool Windows / Search 2. Escribir “Player” en el campo “Enter a word or phrase” y realice la búsqueda (clic en search) Esto traerá varios resultados. Se puede observar que esta búsqueda por contenidos retorna elementos de la KB si la frase por la que se realiza la búsqueda está en cualquiera de las secciones del objeto (reglas, eventos, estructura, documentación, web Form, nombre, descripción, etc.) Se muestra un link para abrir el objeto y al mismo tiempo otro link para abrir cada una de las secciones del objeto que contiene la frase buscada. Página 8
  10. 10. Laboratorio GeneXus X Evolution 13. Ahora realizaremos una búsqueda avanzada, donde buscaremos los objetos que son “Business Component” (transacciones que tienen la propiedad “Business Component” en True). a. Dejar vacío el campo de búsqueda (“Enter a word or phrase”) b. Abrir el diálogo para agregar la propiedad “Business Component” al criterio de búsqueda, clic en el botón “[…]”. Ver figura:c. Clic en “OK”, lo que hará aparecer una línea en la sección “Criteria” con la propiedad Business Component ysus valores posiblesd. Seleccionar el valor “True”. Ver figura: Página 9
  11. 11. Laboratorio GeneXus X Evolution 1e. Hacer la búsqueda (clic en Search). Aparecerán todas las transacciones que sean Business components. Página 10
  12. 12. Laboratorio GeneXus X Evolution 1Categorías Además de la vista por folders GeneXus X Evolution 1 incorpora la categorización de objetos, que permite agrupar objetos bajo una (o más) categorías, que podrán ser definidas en forma estática por el analista GeneXus, o que podrán ser mantenidas dinámicamente en base a criterios de búsqueda. Las categorizaciones de objetos permitirán organizar de diferentes formas los objetos de la KB, según diferentes criterios que el usuario podrá definir. 1. Para comenzar pasaremos a la vista por categorías (Category View) del Knowledge Base Navigator (si este no está desplegado  View / Other Tool Windows / KnowledgeBase Navigator, en el área 1) 2. Crear una nueva categoría: clic derecho sobre el folder “All” y en el menú ir por New / Category. El nombre de la categoría será “Documented Objects”. 3. Ahora agregaremos a esta nueva categoría, un objeto que tiene documentación (en este caso, la transacción Player). Para esto haremos lo siguiente: a. Pasar nuevamente a la vista de Carpetas (Folder View). b. Seleccionar la transacción Player en el Folder View  Objects / Transactions / Player. Al momento de seleccionarla sus propiedades se desplegarán en la ventana de propiedades. c. Dentro de la ventana de propiedades (en la parte inferior) está la sección de categorías del objeto. Allí (en Add Category) escribir “Documented Objects” y dar Enter. d. Salvar la transacción. e. Si volvemos a la vista por categorías (Category View) veremos la transacción Player bajo la categoría “Documented Objects” Página 11
  13. 13. Laboratorio GeneXus X Evolution 1Diagramas de Transacciones y tablas El nuevo diagrama de tablas y transacciones permite obtener una visión global de la KB mediante diagramas de Bachman. Se permite realizar diagramas de tablas, transacciones o ambos mezclados, permitiendo editar el diagrama (agregando o quitando objetos) para mostrar diferentes perspectivas de las tablas o transacciones de la KB, dándole al diagrama una mayor expresividad y poder de abstracción. Crear un diagrama que nos permita ver la relación entre las transacciones del modelo. 1. Crear un nuevo objeto de tipo “Diagram”. Una manera de hacerlo es presionar las siguientes teclas del teclado: Ctrl + N y seleccionar un objeto de tipo “Diagram”. Elegir un nombre para dicho objeto: “Diagram1” (por defecto) y hacer clic en “Create”. 2. Volver a la vista de objetos (Folder View) y arrastrar hacia el diagrama las transacciones “Player”, “Team”, y “Match”. Ver como se relacionan las mismas. IDE TIP: Los atributos de una tabla o una TRN se pueden ocultar o visualizar en el diagrama simplemente haciendo clic en el icono para colapsar, que está en la esquina superior derecha. 5. Página 12
  14. 14. Laboratorio GeneXus X Evolution 1 6. Desarrollo de la aplicaciónPatterns 1. Aplicar el Pattern Work With a todas las transacciones del modelo. En la vista de Folder View, seleccionar las transacciones “Team”, “Player”, “Match”, y “Group” (presionando la tecla “Shift” se pueden seleccionar varios objetos), y mediante botón derecho, seleccionar “Apply Pattern” -> “Work With”. Observar que el Pattern Work With está integrado en esta versión. Verificar que se hayan generado los objetos correspondientes al Pattern Work With. Puede ver los objetos generados en el Folder View, bajo cada una de las transacciones. 2. Abrir la instancia del pattern WW de la transacción Team (para esto, abrir la transacción Team, seleccionar la pestaña inferior Patterns, y luego la pestaña superior Work With), y eliminar el atributo “TeamHistory”: Página 13
  15. 15. Laboratorio GeneXus X Evolution 13. Presionar F5 para ver la aplicación en ejecución. Lo primero que ejecuta es el Developermenu. Haga clic en el “Work With Teams” y observe que aplicación ya está “enmarcada” en una MasterPage dada, que viene por default (propiedad “Default Master Page” de la Versión). Esta propiedad se encuentra en la vista de “Preferences”. Página 14
  16. 16. Laboratorio GeneXus X Evolution 1 Página 15
  17. 17. Laboratorio GeneXus X Evolution 14. Abrir el objeto AppMasterpage (ubicado en la carpeta “GeneralWeb” en la vista “Folder View”) y modificar el caption del Textblock del cabezal:5. La página de Inicio de la aplicación será el Web Panel “Home”, por lo cual, se debe configurar dicho objeto como el Start Up Object. En el Folder View, ubicar el Web Panel Home bajo los “Main Programs” y con botón derecho seleccionar “Set as Startup Object”. Página 16
  18. 18. Laboratorio GeneXus X Evolution 1Ejecutar la aplicación con F5. Hacer clic en “Work With Matches”. Observar que se tiene un grid con un filtro, en elque el refresh es automático, es decir, ingresado un filtro los datos se cargan automáticamente sin necesidad depresionar un botón de búsqueda.Web Transactions 1. Editar la transacción “Match”. Realizar los siguientes pasos: a. Abrir la transacción “Match”, y clic sobre la pestaña “Web Form”. b. Configurar los atributos CountryIdentifier y CityIdentifier como combos dinámicos, como se muestra a continuación: Página 17
  19. 19. Laboratorio GeneXus X Evolution 1b. A continuación, vamos a modificar la edición de los datos del grid para que sea posible ingresar un jugador mediante una lista de sugerencia (que no sea necesario recordar el Identificador del jugador ni seleccionarlo mediante un prompt); y que solo se pueda ingresar un jugador que pertenezca a uno de los dos equipos del Match. En la transacción “Match”, ir por la pestaña “Web Form”. Para editar las columnas del grid, hacer clic con botón derecho sobre el grid, e ir por la opción “Columns” del menú contextual: Página 18
  20. 20. Laboratorio GeneXus X Evolution 1Eliminar la columna PlayerName, y para el atributo PlayerIdentifier configurar:  La propiedad “Input Type” = Descriptions, “ItemDescriptions” = PlayerName  “Suggest” = On Request  “Conditions” = TeamIdentifier=MatchTeam1Identifier or TeamIdentifier=MatchTeam2Identifier; Página 19
  21. 21. Laboratorio GeneXus X Evolution 1c. Ejecutar “Work With Matches”. Hacer clic en para poder ingresar un nuevo Match. En la transacción, observar el comportamiento de los combos dinámicos que se cargan de manera relacionada. Observar también el prompt GeneXus que se abre de forma modal. Ver que una vez seleccionada la clave del equipo se infiere automáticamente la descripción del mismo. Notar que si ingresa dos veces el mismo equipo de dispara la siguiente regla automáticamente: error(Matches cannot be the same!) if MatchTeam1Identifier = MatchTeam2Identifier; En el grid, notar el funcionamiento del suggest para seleccionar los jugadores que realizaron goles. Observar que en el suggest solo están los jugadores de alguno de los dos equipos del Match. Además, cuando se ingresan los goles de los jugadores se actualiza de manera automática las fórmulas de cantidad de goles de cada equipo y total de goles del partido. Página 20
  22. 22. Laboratorio GeneXus X Evolution 1Objeto Query 1. Crear un Objeto Query (“Query1”) como el siguiente: 2. Consolidar XPZ2.xpz (Knowledge Manager -> Import). 3. Insertar en el form del objeto “PlayerScore”, el User Control “Query Viewer” (seleccionar el control de la toolbox, en la sección “Extended Controls” y arrastrarlo hacia el form. En caso de no tener disponible la toolbox, la puede abrir haciendo clic en View -> Other Tool Windows -> Toolbox) Página 21
  23. 23. Laboratorio GeneXus X Evolution 1 Página 22
  24. 24. Laboratorio GeneXus X Evolution 14. Configurar las siguientes propiedades del “Query Viewer” control: Object= Query1 (el Query creado anteriormente) Type=Chart5. Observar que el objeto Query (“Query1”) que se ha creado anteriormente recibe como parámetro el TeamIdentifier. Entonces, en el webpanel PlayerScore, seleccionar la pestaña “Events” y programar lo siguiente (notar que la variable &TeamIdentifier ya está como combo dinámico en la pantalla): Event Refresh &Parameter = new() &Parameters = new() &Parameter.Name = "TeamIdentifier" &Parameter.Value = trim(&TeamIdentifier.ToString()) &Parameters.Add(&Parameter) EndEvent4. Para que sea posible cambiar el tipo de gráfica presionando el botón “confirm”; programar lo siguiente (notar que la variable &QueryType ya está como combo en la pantalla): Event Enter queryViewer1.ChartType = &QueryType EndEvent5. Ejecutar el webpanel, haciendo clic con el botón derecho sobre “PlayerScore”, “Run With this Only”. Página 23
  25. 25. Laboratorio GeneXus X Evolution 1 Página 24
  26. 26. Laboratorio GeneXus X Evolution 1 6. GlosarioCategorieshttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?5287Fórmulashttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?5861Patternshttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?2814Reorganizaciónhttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?3154User Controlshttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?5273Automatic Refreshhttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?6744Query Objecthttp://wiki.gxtechnical.com/commwiki/servlet/hwikibypageid?9026 Página 25

×