hola gente les cuento que tengo un reporte en crystal que me andaba barbaro y cambie la forma de conexion de un store procedure a un dataset y ahora no me pasa los parametros que tomo del form, les adjunto los dos codigos no se que estoy haciendo mal les agradesco cualquier ayuda
codigo con el que llamo al report con el store procedure QUE FUNCIONA:
Código:
CrystalReport1 mipres = new CrystalReport1();
//los siguientes parametros los tomo del form y los muestro en el report
mipres.SetParameterValue("codp", f_principal.codp);
mipres.SetParameterValue("desp", f_principal.descp);
mipres.SetParameterValue("fecha", f_principal.fecha);
mipres.SetParameterValue("ayn", f_principal.apellido +" "+ f_principal.nombre);
mipres.SetParameterValue("obras", f_principal.obras);
mipres.SetParameterValue("desc", f_principal.desc);
mipres.SetParameterValue("total", f_principal.total);
mipres.SetParameterValue("afil", f_principal.afil);
mipres.SetParameterValue("parametro1", f_principal.factura);
crystalReportViewer1.ReportSource = mipres;
codigo con el que llamo al report con el data set QUE NO FUNCIONA:
Código:
report1 tb = new report1();
DataSet ds = tb.DevuelveDataSet();
CrystalDecisions.CrystalReports.Engine.ReportDocument rd = new CrystalReport1();
//los siguientes parametros los tomo del form y los muestro en el report
rd.SetParameterValue("codp", f_principal.codp);
rd.SetParameterValue("desp", f_principal.descp);
rd.SetParameterValue("fecha", f_principal.fecha);
rd.SetParameterValue("ayn", f_principal.apellido + " " + f_principal.nombre);
rd.SetParameterValue("obras", f_principal.obras);
rd.SetParameterValue("desc", f_principal.desc);
rd.SetParameterValue("total", f_principal.total);
rd.SetParameterValue("afil", f_principal.afil);
mipres.SetDataSource(ds);
foreach (CrystalDecisions.CrystalReports.Engine.ReportDocument sr in mipres.Subreports)
{
if (sr.Database.Tables.Count > 0)
{
sr.SetDataSource(ds);
}
}
this.crystalReportViewer1.ReportSource = rd;
this.crystalReportViewer1.Show();