You are on page 1of 12

Curso GeneXus 8.

Ejercicios Prcticos

Crear una base de conocimiento


Entrar a GeneXus y crear una base de conocimiento para comenzar el desarrollo de la aplicacin.

Ejercicios de transacciones
A continuacin se solicita que se definan algunas transacciones en la base de conocimiento recientemente creada. Para cada una de ellas, se muestra una imagen del form GUI-Windows y una lista de atributos a incluir en su estructura (sin embargo, podr ser necesario incluir ms atributos). Se ejercitan diversas caractersticas de las transacciones (definicin de reglas, frmulas, etc.).

Transaccin Paises
Atributos: PaiCod PaiNom Cdigo de Pas Nombre de Pas Numeric(6) Character(30)

Form GUI-Windows:

Reglas: No se permiten paises sin nombre

Transaccin Clientes
Atributos: CliCod CliNom CliDir CliSexo CliTotCmp CliTotPag CliSaldo PaiCod PaiNom Cdigo de Cliente Nombre de Cliente Direccin de Cliente Sexo de Cliente Total de compras de Cliente Total de pagos de Cliente Saldo de Clente Cdigo de Pas Nombre de Pas Numeric(6) Character(30) Character(30) Character(1) Numeric(9.2) Numeric(9.2) Numeric(9.2) Numeric(6) Character(30)

Form GUI-Windows:

Definir los dominios:

Nombre Importes

Reglas: No se permiten clientes sin nombre

Avisar en caso de que no se ingrese la direccin

Frmulas: El saldo del cliente se calcula como la diferencia entre sus compras y pagos.

Generalidades: Definir que CliSexo salga en el form con el control Radio Button.

Transaccin Productos
Atributos: PrdCod PrdDsc PrdStk PrdFch PrdPrc Cdigo de Producto Descripcin de Producto Stock de Producto Fecha de precio de producto Precio de Producto Numeric(6) Character(30) Numeric(4) Date Numeric(9.2)

Form GUI-Windows:

Reglas:

No aceptar el stock del producto si se est modificando un artculo ya existente; solo permitir ingresar el stock del producto si se est insertando un producto.

No permitir que el stock quede con valor nulo.

Crear un prototipo (.NET / SQL Server).

Transaccin Facturas
Atributos: FacNro FacFch CliCod CliNom CliTotCmp FacLinNro PrdCod PrdDsc PrdStk FacLinCnt FacPrdPrc FacLinImp FacTot Nmero de Factura Fecha de Factura Cdigo de Cliente Nombre de Cliente Total de compras de Cliente Nmero de lnea Cdigo de Producto Descripcin de Producto Stock de Producto Cantidad llevada de Producto Precio del Producto en la Factura Importe de Lnea Importe total de Factura Numeric(6) Date Numeric(6) Character(30) Numeric(9.2) Numeric(2) Numeric(6) Character(30) Numeric(4) Numeric(3) Numeric(9.2) Numeric(9.2) Numeric(9.2)

Form GUI-Windows:

Generalidades: Definir que FacTotal salga en el form de color rojo, y tamao 12 (cambiar la model property Color in Red-Only Fields con el valor Original).

Reglas: 1. Numerar las lneas de la factura en forma automtica. 2. Hacer que la fecha de la factura sea la del da por defecto. 3. No permitir ingresar fecha nula, ni mayor a la del da. 4. Actualizar el total de compras del cliente. 5.Evitar que se ingresen ms de 10 lneas en la factura (ver frmula 4). 6. Actualizar el stock del producto. 7.Controlar que el stock del producto no sea menor que cero. Frmulas:

1. 2. 3.

Encontrar el precio del producto de acuerdo a la fecha de la factura (FacProdPre). Calcular el importe de cada lnea de la factura (FacLinImp).

Calcular el total de la factura (FacTotal). 4. Contar la cantidad de lneas ingresadas.

Sugerencias: Utilizar la insercin de reglas, funciones, etc., mediante los tems Insert/Rules, Insert/Functions, etc. Decidir qu valores utilizar en las properties Client side validation y Confirmation. Numerar automticamente las claves con la propiedad Autonumber de los atributos numricos clave. Probar la facilidad de Drag and Drop de controles entre forms de transacciones. Utilizar: Tools/List Database. Utilizar: Tools/List Attributes. Hacer Diagrama de Tablas mediante la opcin:Tools/Diagrams/Tables.

Ejercicios de reportes y procedimientos



Reporte de clientes ordenado por nombre en un rango de nombres definido por el usuario. Los datos que se desean listar para cada cliente son : Nombre, Direccin y Telfono. Reporte de la factura al finalizar el ingreso de la misma en la transaccin Facturas. Reporte de ventas por cliente, incluyendo slo los clientes que tienen facturas (Corte de Control). Cliente : CliXXX Nro. Factura 1 2 Total de ventas: $2524 Fecha 01/01/04 01/02/04 Importe $1024 $1500

Cliente : CliYYY Nro. Factura 10 11 Total de ventas: $1000 Fecha 01/01/04 01/02/04 Importe $700 $300

Definir un procedimiento para generar una nueva lista de precios para los productos. El procedimiento pedir: Fecha del aumento Porcentaje de aumento y para cada producto deber generar un nuevo registro en el histrico de precios, con la fecha ingresada como parmetro y el precio que resulte de aplicar el porcentaje de aumento, al ltimo precio del producto, anterior a la fecha de aumento.

Definir la transaccin Recibos de estructura: RecCod RecFch CliCod RecTot Nmero de Recibo Fecha de Recibo Cdigo de Cliente Importe total de Recibo Numeric(6) Date Numeric(6) Numeric(9.2)

Y definir un procedimiento que realice lo siguiente: para cada cliente, sumarice el importe total de todas sus facturas, y genere un recibo de pago para el cliente, con la fecha del da, y el importe total a cobrarle.

10

Ejercicios de work panels


Generalidades: Crear un folder y agrupar en el mismo a los work panels. Definir work panel Trabajar con clientes: Crear este work panel para consultar los clientes, y permitir: Visualizar slo a los clientes que estn en el rango ingresado por el usuario. Posicionamiento por Nombre de Cliente dentro de los clientes del rango (Regla Search). Dar Altas, Bajas y Modificaciones a clientes, es decir que en este work panel hayan tres botones que llamen a la transaccin Clientes (pasando como parmetro el modo correspondiente) para poder realizar dichas operaciones. Dar la posibilidad de insertar un cliente tanto al presionar un botn como al presionar la tecla de funcin F6. Visualizar la lista de Facturas de un cliente (botn Facturas), es decir que en este work panel haya un botn que llame al work panel Visualizar facturas de un cliente (el siguiente punto solicitado).

Definir work panel Visualizar facturas de un cliente: Se desea que este work panel despliegue la lista de facturas ordenada por fecha, del cliente recibido como parmetro. Los datos que se desean desplegar en la parte fija del work panel son Identificador y Nombre del cliente, y en la grilla: Nro. de Factura, Fecha y Total de Factura. Adems: Incluir en este work panel un bitmap con el logo de la empresa (una imagen cualquiera). Se desea tener un botn en este work panel, que al presionarlo llame a la transaccin Facturas en modo display para visualizar todos los datos de la factura seleccionada (evaluar si crear transaccin paralela a la de Facturas). Definir un work panel sin tabla base: Se solicita un work panel que muestre para cada cliente, el total facturado, pero slo de los clientes que tienen facturas.

11

Modificar el Prompt de Productos (generado por defecto)


El Prompt de Productos es un work panel (generado automticamente por GeneXus, de nombre GX00NN) que puede ser llamado desde la transaccin de facturas (presionando F4 estando posicionado en el cdigo de producto) y permitir seleccionar un producto. Lo que se pide es tener la posibilidad de dar un alta un producto (llamando a la transaccin Productos) desde este prompt.

Ejercicio de Business Objects


Consolidar el Business Object Iva.xpz. Este BO contiene objetos tiles para el manejo de ivas. La idea es aprovechar este BO de la siguiente forma: 1) A cada producto se le debe asociar un tipo de iva. 2) En las facturas se debe calcular para cada lnea, el monto de iva correspondiente segn el producto. Asimismo se debe calcular el total de la factura con iva incluido.

Ejercicio de Styles
Definir un Style para transacciones que contenga los botones Confirm, Close, Delete, Help, First, Previous, Next, Last y Select:

Asociarle este style a todas las transacciones (excepto a las que son llamadas de un work panel TRABAJAR CON ).

Ejercicio de Menu Bar


Crear un objeto Menu Bar que contenga un Item llamado "LISTADOS". Bajo el Item "LISTADOS", agregar 2 subtems llamados "Listado de Facturas" y "Listado de una Factura". Definir en el Menu Bar el evento asociado al subtem "Listado de Facturas", y que el mismo invoque a un reporte que liste todas las facturas (de todos los clientes). Asociarle a la transaccin Facturas este Menu Bar y customizar el subtem "Listado de una Factura". Es decir, en la transaccin Facturas se debe definir el evento asociado al subtem "Listado de una Factura" y que el mismo invoque a un reporte que liste la factura con la que se est trabajando en la transaccin.

12

You might also like