none
Crystal Report con C#, Relación muchos a muchos RRS feed

  • Pregunta

  •  

    Hola,

    Agradecería si me pueden ayudar con la siguiente situación:

    estoy haciendo una aplicación en C# con cristal report y me encuentro

    con una dificulta en hacer un reporte con tres tablas, me explico:

    existe una tabla orden que contiene numero de orden, autoriza, fecha, operador.

    Y una tabla con un listado de productos agroquímicos que forman una mezcla

    y una tercera tabla con un listado con los lotes de cultivo de plantas.

    Como pueden ver un listado de plantas se relaciona con un listado de

    Productos agroquímicos. (En la confección de un reporte de dos tabla

    No tengo problemas lo hago con dataset tipado). 

     

     

    La idea que tengo es así:

    ------------------------------------------------------------------------

     

    Orden                     : 0001

    Fecha                : 19/08/2011

    Responsable      : Marcelo Salaz

    Operador           : Iván Núñez.

     

     

    Detalles de Productos:

    -------------------------------------------------------

    Código Producto    Categoría     Cantidad Unidad

    1          alfa          insecticida        25         grs.        

     2          beta          fungicida         30         grs.

    3          gama      insecticida         40         c.c.

     

    Detalle  Lotes de Cultivos:

    -----------------------------------------------------------------------

    Lote            especie           variedad    cantidad     invernadero

    00218001    lechuga           orión         40                   51B

    00218001    lechuga           orión         48                   51A

    00218001    lechuga           orión         41                   51C

    00218001    lechuga           orión         50                   51D

    00218001    lechuga           orión         10                   51C

    00218001    lechuga           orión         12                   51C

    00218001    lechuga           orión         88                   51A

     

     

    ·          Detalles de Productos siempre van a ser como 1 a 5

    Filas no mas que eso, el espacio que sobra lo ocupa

    Los lotes de cultivos, hay alguna forma de resumir

    Los lotes de cultivos por invernadero para que no

    siga a la siguiente Pagina si fuesen varios.

     

     

    Bueno, disculpen tanto detalle pero es para poder expresar 

    mejor el problema.

     

    a la espera de respuesta.

    Saluda.

     

    Mauricio Hernández.


     

     

     

     

    • Cambiado Javier Conesa viernes, 19 de agosto de 2011 8:43 Este hilo esta mejor ubicado en Crystal Reports (De:Lenguaje C#)
    viernes, 19 de agosto de 2011 4:59

Todas las respuestas

  • Sugerencia: No intentes unir las tres tablas directamente en el Crystal Reports; hazlo por fuera, y luego haz un informe sobre los resultados. Por ejemplo, puedes crear una Vista en la base de datos que dentro tenga el JOIN de las tres tablas, y hacer con Crystal un report directamente sobre la Vista (tratándola como si fuera una tabla).

    O bien puedes traer todos los datos por programación sobre un único dataset creado manualmente con las columnas que te interese mostrar en el informe. Por ejemplo, puedes usar bucles anidados para recorrer las tablas e ir cargando los datos en el dataset, o usar un dataadapter que se inicialice con una select que tenga los dos JOINs para cargar el dataset con ese dataadapter. Después presentas el informe de Crystal alimentándolo dinámicamente con ese dataset (que dentro tiene una única tabla).

    viernes, 19 de agosto de 2011 8:15
  • Alberto, gracias por contestar.

    La forma que indicas no me resultaria para el objetivo, que es entregar al usuario final un reporte con los datos por separado que en este caso seria el detalle de Orden, Productos Agroquimicos y lotes cultivados, para otros propositos anda bien. Lo otro seria:

    hay alguna forma de resumir

    Los lotes de cultivos por invernadero para que no

    siga a la siguiente Pagina si fuesen varios.

    asi en lo anterior podria combinar las filas, el detalle importante es que la relación es de muchos(productos) a muchos(lotes cultivados).

    Gracias.

    Saludos.

    Mauricio Hernández.

     

     

    viernes, 19 de agosto de 2011 12:41