setdatasource llenar crystal con asp.net crystal-reports dataset

asp.net - llenar - ¿Hay alguna forma de reciclar un conjunto de datos de Crystal Reports?



llenar crystal report con datatable c# (2)

Hmm ... tan bueno como es llamar al proceso almacenado del informe y tenerlo todo en un solo lugar, sin embargo, encontramos (como tú) que eventualmente llegas a un punto donde no puedes obtener el cristal para hacer lo que tú quiero incluso aunque los datos estén ahí.

Terminamos introduciendo una capa empresarial que se encuentra debajo del informe y en lugar de "extraer" datos del informe, "presionamos" los conjuntos de datos y vinculamos los datos al informe. La ventaja es que puede manipular los datos en el código en conjuntos de datos u objetos antes de que llegue al informe y luego simplemente enlazar los datos al informe.

Este artículo tiene una buena introducción sobre cómo configurar los datos de empuje a los informes. Entiendo que sus limitaciones de tiempo / negocio pueden no permitirle hacer esto, pero si es posible, lo recomiendo, ya que significa que podemos eliminar toda la "codificación" de nuestros informes y en el código administrado que siempre es una cosa buena.

Intento escribir un Informe de Crystal que tenga totales agrupados de una manera diferente al informe principal. La única forma en que he podido hacer esto hasta ahora es usar un subinforme para los totales, pero significa tener que presionar nuevamente la fuente de datos para recuperar los mismos datos, lo que parece una tontería. Aquí hay un ejemplo simplificado:

date name earnings source location ----------------------------------------------------------- 12-AUG-2008 Tom $50.00 washing cars uptown 12-AUG-2008 Dick $100.00 washing cars downtown { main report } 12-AUG-2008 Harry $75.00 mowing lawns around town total earnings for washing cars: $150.00 { subreport } total earnings for mowing lawns: $75.00 date name earnings source location ----------------------------------------------------------- 13-AUG-2008 John $95.00 dog walking downtown 13-AUG-2008 Jane $105.00 washing cars around town { main report } 13-AUG-2008 Dave $65.00 mowing lawns around town total earnings for dog walking: $95.00 total earnings for washing cars: $105.00 { subreport } total earnings for mowing lawns: $65.00

En este ejemplo, el informe principal se agrupa por ''fecha'', pero los totales se agrupan adicionalmente por ''fuente''. He buscado ejemplos de uso de totales acumulados, pero realmente no hacen lo que necesito. ¿No hay alguna forma de almacenar el conjunto de resultados y tener tanto el informe principal como la referencia del subreport con los mismos datos?


La única forma en que puedo pensar en hacer esto sin una segunda vuelta por los datos sería crear algunas fórmulas para hacer totales acumulados por grupo. El problema que supongo que se está ejecutando con los totales acumulados existentes es que están destinados a seguir a cada uno de los grupos que están sumando. Como parece que quiere que los subtotales sigan después de todos los datos ''en bruto'', esto no funcionará.

Si crea sus propias fórmulas para cada grupo que simplemente agrega el total de esas filas que coinciden con el grupo, debe poder colocarlas al final del informe. La desventaja de este enfoque es que los subtotales resultantes no serán dinámicos en relación con los grupos. En otras palabras, si tuviera una nueva ''fuente'', no aparecería en los subtotales hasta que la agregara o si no tuviera datos de "pasear a los perros", aún tendría un subtotal para ella.