![Class join settings](https://demo5-academy.pega.com/sites/default/files/styles/1024/public/media/images/2020-12/class-join-settings.png?itok=7GccZ3jJ)
Uniones, asociaciones y subrreportes
Puede relacionar las propiedades de múltiples tablas de base de datos o clases para combinar los datos en un solo reporte. Los siguientes ejemplos le muestran cómo utilizar las propiedades para generar relaciones entre clases o tablas.
- Utilice relaciones de caso padre-hijo para mostrar los datos del caso hijo junto con los datos del caso padre. Por ejemplo, supongamos que desea crear un reporte que enumere las órdenes de compra en una solicitud de compra. Debe hacer coincidir el identificador de caso de la clase padre de la orden de compra con el identificador de caso de la clase hijo de la solicitud de compra.
- Utilice relaciones de caso y asignación para mostrar cómo procesa el sistema las asignaciones para un caso específico o un caso hijo. Por ejemplo, supongamos que desea mostrar los operadores que trabajan en casos específicos. Debe hacer coincidir el identificador de operador en la tabla de base de datos del caso con la columna de Id. de operador en la tabla de asignación.
- Utilice relaciones de caso e historial para examinar el rendimiento. Por ejemplo, supongamos que desea mostrar la cantidad total de tiempo necesario para resolver casos específicos. Debe hacer coincidir el identificador de caso en la tabla de datos del caso con el identificador de caso en la tabla de historial.
Las relaciones de clase o de tabla de base de datos se crean en una definición de reportes. Puede combinar los datos de distintas clases configurando uniones de clases, haciendo referencia a reglas de asociación o creando subrreportes.
Nota: Al crear un reporte en el Navegador de reportes, se crea una regla de definición de reportes en Dev Studio.
Uniones de clases
Al crear una relación de clases en una definición de reportes, configura una unión de clases.
Por ejemplo, supongamos que necesita un reporte que identifique la asignación actual y el operador que trabaja en cada caso de candidato.
En la siguiente imagen, haga clic en los íconos + para ver los detalles sobre cómo configurar este reporte.
Para crear una unión de clases, siga los siguientes pasos:
- Determine la clase con la que genera la unión.
- Cree un prefijo que, en combinación con el nombre de la clase, sirva como un alias para la clase unida.
- Decida si desea incluir o excluir las instancias que no coincidan.
- Cree un filtro que describa cómo relaciona las clases.
En el formulario de definición de reportes, especifique la clase como la unión primaria. Si este tipo de trabajo se deriva de Work-, determine si la unión es a una clase de implementación o a una clase de framework. De esta forma, se asegura de que está uniendo los conjuntos de datos correctos.
Caution: Por razones de rendimiento, evite uniones innecesarias a la hora de extraer registros de bases de datos. Evite crear uniones con clases a las que no necesita hacer referencia en su reporte.
Configuraciones de uniones de clases
En la pestaña Data Access (Acceso a datos) del formulario de definición de reportes, en el campo Class name (Nombre de la clase) , usted especifica la clase que quiere unir. Para cada clase, en el Prefix field, usted ingresa un prefijo de texto. El prefijo, combinado con el nombre de la clase, sirve como un alias para la clase unida y sus propiedades. Por ejemplo, para realizar una unión a una clase de trabajo que describe los casos de inscripción en beneficios, puede utilizar el prefijo BE como se muestra en la siguiente imagen.
Al agregar propiedades a las columnas de su reporte, el prefijo ayuda a identificar las propiedades en la clase unida.
En el campo Type , usted especifica cómo desea que el sistema una los datos. Para ello, seleccione una de las siguientes opciones:
Tipo | Descripción |
---|---|
Incluir solo filas coincidentes |
Para incluir solo las instancias de cada clase que tengan una instancia coincidente en la otra clase (esto se denomina, en términos de la base de datos, unión interna) |
Seleccionar Incluir todas las filas de esta clase |
Para incluir todas las instancias de la clase Applies To (Se aplica a) de la regla que cumplan con los requisitos, incluso si no hay coincidencias en la clase unida (prefijo) (esto se denomina, en términos de la base de datos, unión externa) |
Seleccionar Incluir todas las filas de la clase unida | Para incluir todas las instancias de la clase unida (prefijo) que cumplan con los requisitos, incluso si no hay coincidencias en la clase Applies To (esto se denomina, en términos de la base de datos, unión externa) |
Condiciones de filtro
Usted crea una condición de filtro que define la relación entre las clases. El filtro utiliza una o más propiedades para establecer la relación. Considere la unión de la clase Benefits Enrollment con la clase Candidate. Crearía un filtro que hiciera coincidir la propiedad .pxCoverInsKey de la clase hijo Benefits Enrollment con la propiedad .pzInsKey de la clase padre Candidate.
Nota: No se puede realizar una unión a una clase que esté en una base de datos diferente de la de la clase Applies To del reporte. La propiedad Column (Columna) debe ser una columna expuesta. Puede utilizar la Herramienta de optimización para exponer las columnas.
Reglas de asociación
Las reglas de asociación se utilizan como otro método para unir múltiples clases. A diferencia de una unión de clases (única para cada reporte), las asociaciones pueden reutilizarse en cualquier reporte. Cualquiera que tenga los permisos apropiados, como los gerentes, puede utilizar las asociaciones para crear reportes en el portal del usuario.
Por ejemplo, supongamos que desea combinar los registros de la clase Assign-WorkBasket con registros de clases de trabajo. Puede utilizar la regla de asociación estándar de Asignación de pozo de trabajo (pxWorkbasketAssignments) para unir las clases.
Al agregar una columna, debe especificar el nombre de clase de la regla de asociación como prefijo y, luego, seleccionar las propiedades de la clase.
Al agregar el prefijo de regla de asociación, este aparece en la pestaña Data Access (Acceso a datos), en la sección Associations .
Subrreportes
Un subrreporte es un reporte al que otro reporte llama para solicitar datos. Los subrreportes le permiten hacer referencia a los resultados de cualquier definición de reportes en el reporte principal. Puede ejecutar una definición de reportes que se utiliza como un subrreporte al igual que cualquier otro reporte. Por lo general, los subrreportes se utilizan para satisfacer requerimientos complejos de generación de reportes. La utilización de los subrreportes para filtrar los resultados le permitirá incluir o excluir datos. Además, puede utilizarlos para mostrar cálculos agrupados en filas específicas del reporte principal.
Nota: Considere los subrreportes como una forma de combinar los datos mediante cláusulas IN, HAVING y WITH.
Gestione los reportes que utilizan una lógica compleja incluyendo datos agrupados de otros reportes. En su reporte principal, puede utilizar funciones agrupadas, como Is equal (Es igual) o Is less than (Es menos que) para incluir datos específicos de otros reportes. Por ejemplo, en su reporte principal sobre los gerentes, puede hacer referencia a un subrreporte que proporcione la cantidad de empleados subordinados de manera directa a esos gerentes. Puede configurar una condición de filtro para que muestre únicamente los gerentes que tienen más de 10 subordinados.
Los subrreportes pueden definirse en clases que son diferentes del reporte principal mediante filtros de unión. Puede acceder a los datos de diferentes clases de modo similar a como utiliza una unión de clases o una asociación. Por ejemplo, en un reporte financiero de la empresa, puede incluir un subrreporte con una propiedad que obtenga los gastos más recientes de los empleados. Este enfoque proporciona una manera de filtrar los contenidos del reporte principal para mostrar de qué manera los gastos recientes afectan el presupuesto de la empresa.
En el siguiente ejemplo, se utiliza un subrreporte para mostrar la información de tarea para cada solicitud de compra actualizada recientemente por cada operador. En el centro de la siguiente imagen, deslice la barra vertical para ver la configuración del subrreporte a la izquierda y el resultado del subrreporte a la derecha.
Compruebe sus conocimientos con la siguiente actividad:
This Topic is available in the following Module:
If you are having problems with your training, please review the Pega Academy Support FAQs.
¿Quiere ayudarnos a mejorar este contenido?