2012-11-06 1 views
0

J'ai une application web dans laquelle j'utilise les rapports de cristal.Dans le rapport de cristal principal, je veux afficher deux sous-rapports, mais quand j'essaye, il affiche les données du rapport principal. les deux autres données du sous-rapport ne sont pas affichées. J'ai essayé le code suivant, mais cela ne fonctionne pas.rapport de cristal avec sous-rapport ne pas afficher les données dans le sous-rapport

ReportDocument rptDoc = new ReportDocument(); 
DataTable dt1, dt2; 
dt1 = new SalesMasterRepository().GetSalesHeaderData(Salesid); 

dt2 = new SalesMasterRepository().GetSalesFooterData(Salesid); 

DataTable dtproductview=getProductViewDetails(); 
    rptDoc.Load(Server.MapPath("../Reports/SalesProductReport.rpt")); 
      rptDoc.SetDataSource(dtproductview); 
      rptDoc.Subreports[0].SetDataSource(dt1); 
      rptDoc.Subreports[1].SetDataSource(dt2); 
CrystalReportViewer1.ReportSource = rptDoc; 

c'est ça je n'obtiens pas d'erreur mais les données ne sont pas non plus affichées.

Répondre

1

j'ai la solution

SalesProductReport rptDoc = new SalesProductReport(); //Main report 

    DataTable dt1, dt2; 
    dt1 = new SalesMasterRepository().GetSalesHeaderData(Salesid); 

    dt2 = new SalesMasterRepository().GetSalesFooterData(Salesid); 

    DataTable dtproductview=getProductViewDetails(); 
    salesrpt.Subreports["Sales_header1.rpt"].SetDataSource(dt1);//datasource for subreport 

     rptDoc .SetDataSource(dtproductview);//Mainreport datasourcce 
     rptDoc .Subreports["SalesFooter.rpt"].SetDataSource(dt2);//datasource for subreport 

    CrystalReportViewer1.ReportSource = rptDoc ; 
Questions connexes