2010-06-02 19 views
5
DataTable reportData = this.GetReportData(startId, endId, empId, minAmount, reportType); 


       ReportViewer reportViewer = new ReportViewer(); 
       reportViewer.ProcessingMode = ProcessingMode.Local; 

       reportViewer.LocalReport.ReportEmbeddedResource = "PDCL.ERP.Modules.Marketing.Reports.rptDoctorDetail.rdlc"; 

       ReportDataSource ds = new ReportDataSource(); 
       ds.Name = "DoctorDetail_Report"; 
       ds.Value = reportData; 
       reportViewer.LocalReport.DataSources.Add(ds); 


       reportViewer.RefreshReport(); 
       this.WindowsFrmHost.Child = reportViewer; 

यह मेरा कोड है। मैं एसएसआरएस का उपयोग कर रहा हूं लेकिन दर्शक केवल दिखाता है लेकिन कोई डेटा नहीं। क्यों ..?एसएसआरएस रिपोर्ट समस्या wpf

+0

क्या आपने ईवेंट ऑपरेटर को रिपोर्ट एरर या रेंडरिंग में जोड़ने का प्रयास किया है यह देखने के लिए कि दर्शक नियंत्रण से कोई अतिरिक्त जानकारी आ रही है या नहीं? –

उत्तर

1

मुझे लगता है कि रिपोर्टव्यूअर दृश्य में लोड होने के बाद आपको रीफ्रेश रिपोर्ट को कॉल करने की आवश्यकता है।

यहाँ मेरी कोड है जो काम करता है SqlReportViewModel की LoadReport विधि में

private void UserControl_Loaded(object sender, RoutedEventArgs e) 
     { 
      SqlReportViewModel report = (SqlReportViewModel)this.DataContext; 
      Microsoft.Reporting.WinForms.ReportViewer reportviewer = new Microsoft.Reporting.WinForms.ReportViewer(); 
      reportViewerHost.Child = reportviewer; 
      reportviewer.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local; 
      reportviewer.LocalReport.ReportPath = report.FileName; 
      report.LoadReport(reportviewer.LocalReport); 
      reportviewer.RefreshReport(); 
     } 

(reportViewerHost WindowsFormsHost, XAML का उपयोग कर UserControl में घोषित है), मैं

_report.DataSources.Add(new ReportDataSource(dataset.Name, tbl)); 

जहां के रूप में डेटा स्रोत की स्थापना कर रहा हूँ _report स्थानीय रिपोर्ट ऑब्जेक्ट का संदर्भ है

LocalReport _report; 

यह मुझे कुछ समय लिया इस यह पता लगाने की ... उम्मीद है कि इस मदद करता है .. गुड लक .. :)

0
ReportViewer reportViewer = new ReportViewer(); 
DataTable reportData = this.GetReportData(startId, endId, empId, minAmount, reportType); 
reportViewer.LocalReport.ReportPath = "Reports//abc.rdlc"; 
ReportDataSource ds = new ReportDataSource("DataSet1", reportData); 
//DataSet1 is the datasetname of the datasource on the rdlc report 
reportViewer.LocalReport.DataSources.Add(ds); 
reportViewer.RefreshReport(); 
Reports.TReportViewer report = new Reports.TReportViewer(); 
//TReportViewer is the window of wpf application where i set the reportviewerhost. 
report.reportViewerHost.Child = reportViewer; 

आशा है कि यह आपके प्रश्न का उत्तर होगा।

संबंधित मुद्दे