none
ReportViewer con dataset tipado y parametros RRS feed

  • Pregunta

  • Buena tarde, no se si lo que estoy pensando se pueda hacer, tengo un Dataset tipado donde cargo algunas tablas, la cuales se llenan desde procedimientos almacenados, en la cual tengo también una vista llamada "boletincompleto", en cual tengo la información del boletín estudiantil.

    La Pregunta es si se puede pasar el nombre del archivo .rdlc por código y amarrado al Dataset tipado.

    De antemano agradezco si me pueden informar si es posible hacer esto que estoy pensando, como también si me podrían pasar algún ejemplo que me sirva de guía.

    Muchas gracias por su valiosa colaboración.

    Estoy programando en c# con visual studio community 2019 y como gestor de base de datos MySql.

    Imagen del dataset tipado:

    Formulario:

    sábado, 6 de febrero de 2021 21:04

Respuestas

  • Bueno me contesto, con esto se da por solucionado al problema que presentaba.

     private void CargarBoletin() 
            {
                try
                {
                    MyAnno = Convert.ToString(DtpAnno.Text);
                    MyGrado = Convert.ToInt32(this.CboGrado.SelectedValue);
                    MyPeriodo = Convert.ToInt32(this.CboPeriodo.SelectedValue);
                    MyDocuAlum = Convert.ToString(this.CboAlumnos.SelectedValue);
    
                    if (CboPeriodo.Text == "1 PERÍODO")
                    {
                        //se agregan datos a los parametros estaticos del reporte
                        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, @"Reportes\Report1.rdlc");
                        boletincompletoTableAdapter.FillByParam(systemnota5DataSet.boletincompleto, MyAnno, MyGrado, MyPeriodo, MyDocuAlum);
                        this.reportViewer1.RefreshReport();
    
                    }
                    else if (CboPeriodo.Text == "2 PERÍODO")
                    {
                        //se agregan datos a los parametros estaticos del reporte
                        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, @"Reportes\Report2.rdlc");
                        boletincompletoTableAdapter.FillByParam(systemnota5DataSet.boletincompleto, MyAnno, MyGrado, MyPeriodo, MyDocuAlum);
                        this.reportViewer1.RefreshReport();
                    }
                    else if (CboPeriodo.Text == "3 PERÍODO")
                    {
                        //se agregan datos a los parametros estaticos del reporte
                        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, @"Reportes\Report3.rdlc");
                        boletincompletoTableAdapter.FillByParam(systemnota5DataSet.boletincompleto, MyAnno, MyGrado, MyPeriodo, MyDocuAlum);
                        this.reportViewer1.RefreshReport();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message + ex.StackTrace);
                    throw;
                }
            }
    Dejo la solución para las personas que lo puedan llegar a necesitar.

    • Marcado como respuesta VISANCOR74 lunes, 8 de febrero de 2021 4:14
    lunes, 8 de febrero de 2021 4:14

Todas las respuestas

  • Bueno me contesto, con esto se da por solucionado al problema que presentaba.

     private void CargarBoletin() 
            {
                try
                {
                    MyAnno = Convert.ToString(DtpAnno.Text);
                    MyGrado = Convert.ToInt32(this.CboGrado.SelectedValue);
                    MyPeriodo = Convert.ToInt32(this.CboPeriodo.SelectedValue);
                    MyDocuAlum = Convert.ToString(this.CboAlumnos.SelectedValue);
    
                    if (CboPeriodo.Text == "1 PERÍODO")
                    {
                        //se agregan datos a los parametros estaticos del reporte
                        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, @"Reportes\Report1.rdlc");
                        boletincompletoTableAdapter.FillByParam(systemnota5DataSet.boletincompleto, MyAnno, MyGrado, MyPeriodo, MyDocuAlum);
                        this.reportViewer1.RefreshReport();
    
                    }
                    else if (CboPeriodo.Text == "2 PERÍODO")
                    {
                        //se agregan datos a los parametros estaticos del reporte
                        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, @"Reportes\Report2.rdlc");
                        boletincompletoTableAdapter.FillByParam(systemnota5DataSet.boletincompleto, MyAnno, MyGrado, MyPeriodo, MyDocuAlum);
                        this.reportViewer1.RefreshReport();
                    }
                    else if (CboPeriodo.Text == "3 PERÍODO")
                    {
                        //se agregan datos a los parametros estaticos del reporte
                        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, @"Reportes\Report3.rdlc");
                        boletincompletoTableAdapter.FillByParam(systemnota5DataSet.boletincompleto, MyAnno, MyGrado, MyPeriodo, MyDocuAlum);
                        this.reportViewer1.RefreshReport();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message + ex.StackTrace);
                    throw;
                }
            }
    Dejo la solución para las personas que lo puedan llegar a necesitar.

    • Marcado como respuesta VISANCOR74 lunes, 8 de febrero de 2021 4:14
    lunes, 8 de febrero de 2021 4:14
  • Hola,

    Gracias por confirmar que se ha encontrado una solución a la consulta realizada.

    Gracias por usar los foros de MSDN.

    Eric Ruiz

    ____________________________

    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.

    Si tiene algún cumplido o reclamo sobre el soporte de MSDN siéntase en la libertad de contactar MSDNFSF@microsoft.com.

    lunes, 8 de febrero de 2021 14:50
    Moderador