7.reglas y subtipos en gene xus
TRANSCRIPT
![Page 1: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/1.jpg)
7.Reglas y Subtipos en GeneXus
Ramiro Estigarribia Canese
![Page 2: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/2.jpg)
Aplicar una Regla Automática.➔ Un cliente realiza varias excursiones y va
acumulando millas.➔ Para implementar la acumulación de millas al
cliente, declaramos en la transacción Customer la siguiente regla:
Add(CustomerTripMiles, CustomerTotalMiles);¿Cómo es el comportamiento de esta regla?
![Page 3: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/3.jpg)
Aplicar una Regla Automática.➔ Si se ingresa una excursión al cliente
automáticamente se suma las millas:CustomerTripMiles a CustomerTotalMiles.
➔ Si se elimina una excursión del cliente entonces automáticamente se resta.
➔ Si se modifica el valor de CustomerTripMiles asociado a una excursión del cliente, entonces automáticamente se resta el valor que tenía declarado y luego se suma el nuevo valor.
![Page 4: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/4.jpg)
Regla AddTiene el siguiente comportamiento:Add(CustomerTripMiles, CustomerTotalMiles);➔ Si se ingresa una nueva excursión para el cliente
entonces se le suma la cantidad CustomerTripMiles a CustomerTotalMiles.
➔ Si se elimina una excursión del cliente entonces automáticamente se resta el valor de CustomerTripMiles a CustomerTotalMiles.
➔ Si se modifica el valor de CustomerTripMiles asociado a una excursión del cliente, entonces automáticamente se resta el valor que t
![Page 5: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/5.jpg)
Regla Add
![Page 6: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/6.jpg)
Regla Subtract➔ Tiene un comportamiento similar a la regla Add,
pero resta el valor.➔ Consideremos entonces la siguiente regla Subtract:
Subtract(CustomerTripMiles, CustomerTotalMiles);➔ Si se agrega una nueva excursión para el cliente,
entonces se resta el valor de CustomerTripMiles a CustomerTotalMiles.
➔ Si se elimina una excursión del Cliente entonces automáticamente se suma el valor de CustomerTripMiles a CustomerTotalMiles.
![Page 7: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/7.jpg)
Regla Subtract
![Page 8: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/8.jpg)
Combinando Reglas➔ Observemos las 2 reglas definidas para la
transacción Prize.
➔ Dado que ambas involucran al atributo CustomerTotalMiles, siendo que una de las reglas actualiza al atributo y la otra regla evalúa su valor, GeneXus determina que primero debe ejecutar la sustracción.
![Page 9: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/9.jpg)
Combinando Reglas
![Page 10: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/10.jpg)
Reglas Serial.➔ Por último veamos cómo podemos numerar el
segundo nivel de una transacción.➔ Dado que la propiedad Autonumber solamente es
aplicable a claves primarias simples, para numerar automáticamente un 2do nivel, contamos con la regla Serial.
➔ Esta regla requiere definir un atributo en el 1er nivel de la transacción, que guardará el último valor asignado a las líneas del segundo nivel.
![Page 11: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/11.jpg)
Reglas Serial
![Page 12: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/12.jpg)
SubtiposPermiten tener dos conceptos iguales, pero con nombres distintos.
Cuando un atributo se llama distinto a otro ya definido pero ambos representan el mismo concepto podemos decirle a GeneXus que el nuevo atributo es subtipo del otro y a partir de ese momento GeneXus los considerará exactamente como si fueran la misma cosa.
![Page 13: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/13.jpg)
Subtipos
![Page 14: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/14.jpg)
![Page 15: 7.reglas y subtipos en gene xus](https://reader034.vdocuments.site/reader034/viewer/2022042716/55c7ee07bb61eb8f398b4699/html5/thumbnails/15.jpg)
Ejercicios.Ejemplo de Aplicación
Pedidos - Clientes - Productoshttp://samples.genexus.com/basicinvoicing/home.aspx
Realizar el ejercicio práctico número: 7
https://drive.google.com/open?id=0B7gk9I9HR0VAcmUyc0RfZEozZFE&authuser=0