none
¿Como pasar informe (RDLC) a ReportViewer via codigo? RRS feed

  • Pregunta

  • Buenos días,

     

    Como puedo pasar un report.rdlc al reportviewer mediante codigo y no con el asistente de "Elegir informe"?

     

    Saludos

    • Cambiado Enrique M. Montejo martes, 1 de marzo de 2016 7:08 Pregunta relacionada con Windows Forms ReportViewer.
    domingo, 17 de julio de 2011 15:17

Todas las respuestas

  • pasar edlc mediante codigo ?

    apuntas a que tienes el control ReportViewer y quieres asignarle mediante codigo que rdlc debe mostrar?

    [Reporting Service] Campo Imagen desde un DataSet Tipado

    veras en el articulo como se asigna la propiedad

    reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, "ListadoProductos.rdlc")

    para indciar que reporte debe mostrar

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 17 de julio de 2011 16:25
  • Leandro,

     

    Lo que deseo hacer es reutilizar un reportviewer con varios reportes.rdlc

     

    Todos los reportes tiene datos provenientes de un BD.

     

    Saludos

    domingo, 17 de julio de 2011 17:12
  • ok eso se puede hacer, como muestro en el link

    puede asignar que dataset asignar con el rdlc que le pases por codigo


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 17 de julio de 2011 17:15
  • ok, pero no entiendo en que parte asigno el dataset y su respectiva tabla?

     

    Imagino que debe ser aqui

     

        Dim dataSourceEmpresa As New ReportDataSource("Productos_Empresa", LogoEmpresa())
        reportViewer1.LocalReport.DataSources.Add(dataSourceEmpresa)
    
        Dim dataSourceProductos As New ReportDataSource("Productos_Productos", ObtenerLista())
        reportViewer1.LocalReport.DataSources.Add(dataSourceProductos)
    
        reportViewer1.LocalReport.ReportPath = Path.Combine(Application.StartupPath, "ListadoProductos.rdlc")
    
        reportViewer1.RefreshReport()
    

    Pero LogoEmpresa y ObtenerLista son datos independientes cierto? yo quiero por ejemplo tener RepotVieview y desde este ocupar Reporte1.rdlc, Reporte2.rdlc, Reporte3.redlc.

     

    Saludos

    domingo, 17 de julio de 2011 19:09
  • justamente alli mismo esta

    en

    reportViewer1.LocalReport.DataSources.Add()

    alli le pasas la informacion, veras que lso metodos LogoEmpresa y ObtenerLista devuelvesn los datos para asignar al reporte

     


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 17 de julio de 2011 19:52
  • De que manera paso la consulta aquí reportViewer1.LocalReport.DataSources.Add()??

     

    Esa parte no entiendo, suponiendo que mi el dataset es: Data, Tabla: Usuario, TableAdapets: FillByCodigo

     

    Saludos

    lunes, 18 de julio de 2011 2:34
  • lo cargas el datatable que esta en el dataset tipado

    Dim tableAdapter As New EjemploTableAdapter

    tableAdapte.FillByCodigo( DataSet1.EjemploDataTable, codigo)

     

    reportViewer1.LocalReport.DataSources.Add("nombresource", DataSet1.EjemploDataTable)

     

    ojo esto es solo un ejemplo que debes adaptar, pero como veras del table adapter cargas normalmente el datatable tipado que usaste para definir el reporte y luego se lo pasas


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    lunes, 18 de julio de 2011 3:38
  • Estaba pensando en algo mas o menos asi,

    Me.ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource("NombreDataSet_TABLA1", NombreDataSet.TABLA1))
    

     

    Pero me da error.

     

    El siguiente:

     

     

    Error	3	Error de resolución de sobrecarga porque ninguna de las funciones 'New' a las que se tiene acceso es más específica para estos argumentos:
     'Public Sub New(name As String, dataSourceValue As System.Collections.IEnumerable)': No es la más específica.
     'Public Sub New(name As String, dataSourceValue As System.Data.DataTable)': No es la más específica.	C:\Users\pc\Desktop\SistemaSistema\ReportView.vb	37	54	Sistema
    

     

     


    ¿Que podria ser?

     

     Saludos

     




    lunes, 18 de julio de 2011 4:35
  • Saludos

    Un Poco tarde pera para quien le interese esto me funciono a mi.

      Me.ReportViewer2.LocalReport.ReportPath = Application.StartupPath & "\Reportes" & "\ListadodePrestamos.rdlc"
      Me.ReportViewer2.LocalReport.DataSources.Add(New ReportDataSource("DataSet2", wsFinanzaDataSet.ListadodePrestamos.DefaultView))

    Tambien  pueden ver este link:

    https://social.msdn.microsoft.com/Forums/es-ES/a32fa8dc-a0f1-4479-a396-3d1876766071/como-cambiar-el-informe-de-un-reportviewer?forum=vbes

    Saludos, espero que les sea de ayuda.

    domingo, 28 de febrero de 2016 4:18
  • Podrían ayudarme. Quiero hacer lo mismo de rellenar el reportviewer por código. Pero no tengo mucha idea sobre de eso Les agradecería mucho su ayuda
    jueves, 15 de marzo de 2018 1:00