[SOLUCIONADO] Informe con Dataset y Mysql (VB.NET).

Iniciado por AroonVa, Noviembre 01, 2018, 02:49:34 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Noviembre 01, 2018, 02:49:34 PM Ultima modificación: Enero 25, 2019, 08:07:41 PM por Gabriela
Hola buenas días, comunidad.
Disculpen me podrían ayudar, con este problema que tengo al momento de querer cargar un informe con un DataSet que recibe valores de una base de datos MySQL. Mi codigo para cargar el Dataset es el siguiente
Código: text
Private conexion As CapaDatos.CDConexion = New CapaDatos.CDConexion

Private Sub ReportViewer1_Load(sender As Object, e As EventArgs) Handles ReportViewer1.Load
ReportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local

Dim Sql As DataSet = GetData("SELECT * FROM fondofijo ", "fondofijo")
Dim DATA As Microsoft.Reporting.WinForms.ReportDataSource = New Microsoft.Reporting.WinForms.ReportDataSource("Datos", Sql.Tables())
ReportViewer1.LocalReport.DataSources.Clear()
ReportViewer1.LocalReport.DataSources.Add(DATA)
ReportViewer1.LocalReport.ReportEmbeddedResource = "ReportFondoFijo.rdlc"
ReportViewer1.LocalReport.ReportPath = "@ReportFondoFijo.rdlc"
ReportViewer1.LocalReport.Refresh()
End Sub

Private Function GetData(ByVal sql As String, ByVal tabla As String) As Datos

Dim sda As MySqlDataAdapter = New MySqlDataAdapter(sql, conexion.AbrirConexion)
Dim da As MySqlCommandBuilder
da = New MySqlCommandBuilder(sda)
Dim com As Datos = New Datos
sda.Fill(com, tabla)
Return com
End Function




De antemano muchas gracias.

Si no me equívoco luego de hacer el datasource =, tenes que hacer un ReportViewer1.DataBind()
Como estás seleccionando solo una tabla, tal vez te convendría cambiar el DataSet por un DataTable.

Saludos,

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Si no me equívoco luego de hacer el datasource =, tenes que hacer un ReportViewer1.DataBind()
Como estás seleccionando solo una tabla, tal vez te convendría cambiar el DataSet por un DataTable.

Saludos,
Disculpa compañero tendras algun ejemplo o libre con solo DataTable que me pudieras proporcionar porfavor.

Lo del ReportViewer1.DataBind() te funcionó con el DataSet?

Disculpa la demora, utilice el sigiente codigo

      
Código: text
'Llenado de detalle del reporte
consulta.Consulta("SELECT *FROM fondofijo", "fondofijo")

Dim bs As New BindingSource()
bs.DataSource = consulta.ds.Tables("fondofijo")
Dim rds As New ReportDataSource()
rds.Name = "DatosFondo"
rds.Value = bs


'Llenado del cuerdo del reporte
consulta.Consulta("SELECT *FROM fondofijocaj WHERE  usuario ='" + FormPrincipal.Usuario.Text + "'", "fondofijocaj")
Dim bs2 As New BindingSource()
bs2.DataSource = consulta.ds.Tables("fondofijocaj")
Dim rds2 As New ReportDataSource()
rds2.Name = "DatosFondo2"
rds2.Value = bs2
ReportViewer1.Reset()

ReportViewer1.LocalReport.ReportPath = "ruta del reporte"
ReportViewer1.LocalReport.DataSources.Clear()
"agregado de datasets al reporte"
ReportViewer1.LocalReport.DataSources.Add(rds)
ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource("DataSet1", Invoice))
ReportViewer1.LocalReport.DataSources.Add(rds2)
ReportViewer1.RefreshReport()