2012-05-04 57 views
0

我開始使用DevExpress XtraReports作爲公司項目。我的問題是以下幾點:DevExpress XtraReports - 如何從自定義數據源配置字段

我有一個存儲過程提取數據,給出三個參數:startDay,endDay和開發人員ID,這個SP是在.dbml文件中。

遵循此實例http://www.devexpress.com/Support/Center/p/B223095.aspx,我們有以下方法:

靜態無效report_DataSourceDemanded(對象發件人,發送System.EventArgs) {

 Reports.WeeklyTimesheet report = (Reports.WeeklyTimesheet)sender; 
     DataClasses1DataContext context = new DataClasses1DataContext(); 
     System.Data.Linq.ISingleResult<WeeklyTimesheetUserReportResult> res = >context.WeeklyTimesheetUserReport(Convert.ToDateTime("2012/01/16"), >Convert.ToDateTime("2012/01/20"), 52); 
     var result = from orderDetail in res select orderDetail; 
     report.DataSource = res.ToList(); 

}

哪是我發現(工作)將參數傳遞給報表的SP的唯一方式。

我能做些什麼因此報告帶有我成功帶來的數據,但沒有綁定到報告中?附圖將更好地說明這一點。

我必須指出,當我在圖像中製作報告時,最初是使用嚮導從數據集格式化的(因此爲什麼要排序),但我不知道如何使用.dbml文件格式化它。

在此先感謝。

http://imgur.com/YQ7RE

回答

0

XtraReport有xrTables,xrLabel控制,他們將讓您創建自定義報告後,可以綁定這些細胞等,並修改報告的XRControl綁定以下列方式:

[C#] ...

// Original 
    //this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { 
    // new DevExpress.XtraReports.UI.XRBinding("Text", null, "Symbols.Description")}); 
    // Modified 
    this.xrTableCell14.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] { 
    new DevExpress.XtraReports.UI.XRBinding("Text", null, "Description")}); 

...

參考這些鏈接和SA mples ..

Binding a Report to an Entity Framework object at runtime [ How to use LINQ to SQL data source to create a Master-Detail report example

+0

你的指針是有用的;我能夠通過在編程方面直接訪問它們並在設計視圖中設計它們來填充報告,然後傳遞填充專有XReport.Parameter的參數 –

相關問題