¿Cómo agrupar múltiples conjuntos de resultados en un informe?
-
07-07-2019 - |
Pregunta
Estoy usando ActiveReports con ASP.NET pero creo que la respuesta para cualquier componente de informes similar funcionará.
Tengo dos resultados para combinar y mostrar en un solo informe, como:
Table 1:
Name Job Start End
Jack Some service 1992 1997
Jack Some Sales Exp 1998 2007
Jane Some programming 2000 2003
Table 2:
Name Training
Jack Shiny French Certificate
Jane Crappy database certificate
Jane Some courses in management
Y el informe debería verse así:
Jack
Job History:
Some Corp, 1992-1997
Some Sales Exp, 1998-2007
Training History:
Shiny French Certificate
Jane
Job History:
Some programming, 2000-2003
Training History:
Crappy database certificate
Some courses in management
¿Cómo debería fusionar las dos tablas y cómo debería diseñar el diseño para lograr el informe en el ejemplo dado?
Actualización:
Como puede observar, no estoy tratando de hacer esto con una sola selección. Tengo dos tablas de datos como fuente y puedo fusionarlas a mano para obtener una sola fuente de datos. Estoy tratando de usar la agrupación, pero necesito dos tipos de grupos para cada empleado. Uno para los trabajos y otro para los entrenamientos. ¿Cómo puedo usar la función de grupos o subinformes para vincular este tipo de datos (y cómo debo procesar los datos si es necesario)?
Solución
Usar subinformes ... Cree un informe principal que tendrá dos subinformes. Un subinforme para el historial laboral y un subinforme para el historial de capacitación. El informe principal necesitará una consulta que devolverá una lista de personas. Luego, para cada Persona en el detalle del informe principal, establezca un parámetro en cada uno de los subinformes secundarios que refinará la consulta en esos dos para enumerar el Historial de trabajos o el Historial de capacitación solo para la persona actual que se muestra en el informe principal.
Un tutorial detallado que explica cómo hacer esto paso a paso está en el sitio web de Data Dynamics aquí . Parte de la información general también se encuentra aquí
Otros consejos
En general, no puede hacerlo en una sola instrucción SELECT. La mayoría de las herramientas de informes ofrecen algún tipo de "subinformes". o "secciones internas" que se ejecutan en una pregunta SQL diferente y tienen algunos parámetros pasados ??del informe principal. Puede usar dos subinformes y un informe maestro.
Debe seleccionar estas dos tablas con '' left-join '', crear un '' GroupHeader / Footer '' sección en el informe y establecer " DataField " en " GroupHeader " sección a campo, que debe usarse como agrupación.
Mire las muestras de ActiveReports, seguramente tienen una muestra para agrupar.