none
Datos repetidos en REPORTVIEWER c# RRS feed

  • Pregunta

  • Benas a todos, nuevamente se me ha presentado un inconveniente, esta vez con lista que se envia al dataset. he creado una clase con las propiedades necesarias para el dataset del rdlc, extraigo la información de mi BD y cargo la lista en el cual se enviara al dataset para el reporte, pero me he dado cuenta que ha medida que se va cargando la lista cambia el dato anterior por el que se ésta agregando (además de agregar el nuevo dato) y de verdad no entiendo porque, aquí les envio el código:

                List<Clases.DatosListaPrecio> datos = new List<Clases.DatosListaPrecio>();
                Clases.DatosListaPrecio parametros = new Clases.DatosListaPrecio();
                DataTable categoria = conectar.buscar_categoria_lista2();
                DataTable productos = conectar.buscar_articulos_lista3();
                foreach (DataRow row in categoria.Rows)
                {
                    string category = Convert.ToString(row[0]);
                    productos = conectar.buscar_articulos_lista2(category);
                    foreach (DataRow row2 in productos.Rows)
                    {
                        if (row2[0]!=null)
                        {
                            parametros.categoria = row2[3].ToString();
                            parametros.descripcion = row2[0].ToString();
                            parametros.botxcaja = Convert.ToInt32(row2[1]);
                            parametros.x = "X";
                            parametros.capacidad = Convert.ToDouble(row2[2]);
                            parametros.contado = Convert.ToDouble(row2[5]);
                            parametros.credito = Convert.ToDouble(row2[5])/0.9;
                            parametros.existencia = Convert.ToInt32(row2[4]);
                            datos.Add(parametros);
                        }
                    }
                }
                reportViewer1.LocalReport.DataSources.Clear();
                reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", datos));
                this.reportViewer1.RefreshReport();

    Espero que me puedan ayudar y gracias de antemano

     
    sábado, 11 de abril de 2020 17:34

Respuestas

  • Hola a todos ya lo resolví, lo que hay que hacer es crear la lista dentro del foreach mas interno y no desde afuera, ya que de no hacerlo reemplazara todos los datos de la lista por el ultimo dato, además de agregarlo.
    martes, 14 de abril de 2020 15:48

Todas las respuestas

  • Hola Chivox13

     

    Gracias por levantar tu consulta en los foros de MSDN. Estamos analizando su pregunta y vamos a darle seguimiento para buscar la mejor repuesta pertinente al caso.

     

    Gracias por usar los foros de MSDN.

     


    Oscar Navarro

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde. 

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    lunes, 13 de abril de 2020 12:59
    Moderador
  • Hola a todos ya lo resolví, lo que hay que hacer es crear la lista dentro del foreach mas interno y no desde afuera, ya que de no hacerlo reemplazara todos los datos de la lista por el ultimo dato, además de agregarlo.
    martes, 14 de abril de 2020 15:48