Skip to main content

Asociaciones, uniones de clases y subrreportes

Diferentes combinaciones que usan asociaciones, uniones y subrreportes

Los desarrolladores y usuarios de negocio crean y usan reportes. Los reportes que requieren los desarrolladores son principalmente para usar como información útil para la lógica del negocio o para presentar datos en pantallas de usuarios finales. En comparación, los reportes que requieren los usuarios de negocio son para analizar datos que contribuyan a tomar decisiones del negocio más significativas. Por lo tanto, el navegador de reportes les permite a los usuarios de negocio crear reportes desde su portal. La mayoría de las veces, los datos necesarios para un reporte no se obtienen de una sola clase o tabla, por lo que debe unirse a las diferentes clases y tablas que usan conjuntos de propiedades. Crear estas relaciones es un requerimiento cuando se crean reportes analíticos, de modo que Pega Platform™ proporciona asociaciones, uniones y subrreportes para ayudar a hacerlo.

Asociaciones

Las asociaciones son reglas que definen la relación entre las clases y se pueden utilizar en reglas de definición de reportes. Puede establecer una relación entre varias clases a partir de valores coincidentes en pares de propiedades para extender el alcance de un reporte. Al referenciar datos específicos de otras clases para que sus reportes sean más completos, puede usar reglas de asociación.

Pega Platform proporciona a los usuarios asociaciones tanto simples como avanzadas. Use asociaciones simples para unir dos clases y asociaciones avanzadas cuando desee especificar varias condiciones de unión. Puede reutilizar cada regla de asociación en varios reportes.

Las uniones y los subrreportes no están disponibles para usuarios de negocio en el portal del usuario final. Únicamente están disponibles las asociaciones y son relativamente fáciles de usar. Por lo tanto, los Lead System Architects (LSA) deberían alentar la creación de asociaciones siempre que sea posible, a la vez que se diseña una solución para incrementar la capacidad de reutilización.

Una vez que se crea una asociación en una clase, está disponible para usarla en cualquier lugar de la jerarquía de clases. Como práctica recomendada, cree asociaciones en la capa Empresa o una capa reutilizable para usar en toda la organización y en capas superiores de la aplicación.

El editor de reportes y las reglas de generación de reportes también usan asociaciones. El LSA debería considerar cuidadosamente los requerimientos de generación de reportes y crear anticipadamente reglas de asociación, lo que le permitirá al empresario generar los reportes para acceder a todos los datos requeridos. Las asociaciones anulan la necesidad de que el empresario sepa algo sobre las relaciones de clases.

Por ejemplo, para una aplicación de Front Stage Group (FSG), necesita un reporte para obtener información del hotel y el contacto en el hotel para cada solicitud de las habitaciones. Los gerentes en la aplicación del hotel requieren este reporte. Si define la asociación requerida entre las tablas Rooms Request, Hotel y Contact , los gerentes pueden usar esta asociación directamente desde el navegador de reportes y arrastrar y soltar los campos necesarios en el reporte. Junto con asociaciones específicas de la aplicación, varias asociaciones listas para usar en Pega Platform también se pueden reutilizar, según las necesidades de generación de reportes.

Hotel-contact-association
The figure illustrates the usage of complex associations between classes FSG-Booking-Work-RoomsRequest and FSG-Data-Contact which do not share a common value and is achieved by joining them with a separate class FSG-Data-Hotel.
Rooms-hotel-association
The figure illustrates the usage of simple associations between classes FSG-Booking-Work-RoomsRequest and FSG-Data-Hotel. These association rules can be used in report browser for including the columns from the class joined.

 

Los gerentes pueden crear un nuevo reporte en el navegador de reportes y arrastrar y solar las columnas requeridas de las asociaciones disponibles. Si las asociaciones no están disponibles, los gerentes deberán depender del equipo de desarrollo para obtener los datos de varias tablas de origen.

Report associations
​This figure illustrates the usage of associations made available to a user so that he can edit the reports without accessing the designer studio.

Uniones de clases

De manera predeterminada, las definiciones de reportes incluyen datos únicamente de la clase a la cual se aplica el reporte. Al utilizar la funcionalidad de unión de clases, puede hacer que sus reportes sean más completos. Las uniones de clases ayudan a unir dos clases solo cuando ambas clases tienen las mismas columnas.

Una unión de clases contiene tres tipos de uniones según el tipo que está configurado en la pestaña Data access:

  • Incluir solo filas coincidentes = UNIÓN INTERNA
  • Incluir todas las filas de esta clase = UNIÓN EXTERNA IZQUIERDA
  • Incluir todas las filas de la clase unida = UNIÓN EXTERNA DERECHA

En comparación con las reglas de asociación, las uniones no se pueden reutilizar en varias definiciones de reportes y se aplican únicamente al reporte que edita.

En comparación con las reglas de asociación, las uniones no se pueden reutilizar en varias definiciones de reportes y se aplican únicamente al reporte que edita.

Por ejemplo, en una aplicación de FSG, se recomienda un reporte que identifique la asignación actual y el operador que trabaja en cada caso Book Event (Evento de reserva). La información de Book Event se encuentra en el tipo de caso Book Event (Evento de reserva). La información de la asignación se encuentra en la clase de cesta de trabajo. Lo que usted hace es crear una definición de reportes en la clase Book Event (Evento de reserva) y, luego, configura una unión de clases con la clase de cesta de trabajo. En la definición de reportes, primero especifica la clase de cesta de trabajo como la clase que desea unir en su reporte. Luego, especifica un filtro que hace coincidir los valores clave de los registros de ambas clases (por ejemplo, hacer coincidir el valor clave pzInsKey  del caso del candidato con el valor clave pzRefObjectKey de la cesta de trabajo).

Según el requerimiento de generación de reportes, el LSA debería decidir cuándo usar una asociación y cuándo usar una unión de clases.

Subrreportes

Los subrreportes unen dos clases diferentes con condiciones de unión específicas. Los resultados del segundo reporte luego se pueden utilizar para filtrar el primer reporte o se pueden mostrar como parte del primer reporte. Los subrreportes de Pega Platform se utilizan como subconsultas de la cláusula WHERE. También hay subconsultas de la cláusula FROM (“subconsultas de tabla”) y subconsultas de la cláusula SELECT.

Por lo general, los subrreportes se utilizan para satisfacer requerimientos complejos de generación de reportes. Por ejemplo, puede utilizar los subrreportes para filtrar resultados que le permitan incluir o excluir datos. También puede utilizarlos para mostrar cálculos agrupados en filas específicas del reporte principal. Para crear un subrreporte, puede usar dos métodos diferentes: unir filtros o una agregación.

Por ejemplo, en una aplicación de FSG, se recomienda mostrar un reporte que muestre una lista de todos los casos Book Event (Evento de reserva) y que incluya lo siguiente:

  • Columnas para la fecha de creación del caso Book Event (Evento de reserva).
  • El operador que creó el evento de reserva.
  • El Id. del caso.

Todas estas columnas vienen de la clase de trabajo Book Event (Evento de reserva). A continuación, lo que tiene que hacer es incluir cálculos agrupados en subcasos del evento de reserva: las fechas de resolución de la primera y la última solicitud de habitaciones de hotel, y el recuento de solicitudes de habitaciones de hotel. Para incluir estos cálculos, tiene que usar un subrreporte.

Los LSA deberían estar al tanto de que los subrreportes pueden producir el mismo conjunto de resultados que una unión de clases. Si esto es lo que sucede, en su lugar se debería usar una unión de clases porque las uniones de clases son más sencillas, además de ser una manera más directa para que la base de datos realice la operación.

Para obtener más información sobre asociaciones, uniones y subrreportes, consulte Asociaciones, uniones y subrreportes.


This Topic is available in the following Module:

If you are having problems with your training, please review the Pega Academy Support FAQs.

¿Le ha resultado útil este contenido?

El 100% ha encontrado útil este contenido.

¿Quiere ayudarnos a mejorar este contenido?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice