原創|其它|編輯:郝浩|2012-09-04 14:36:31.000|閱讀 426 次
概述:本文介紹了如何作為一個簡單的XtraReport而不是一個XafReport對象生成報告。方法是XtraReport類可以從包含在一個字節數組布局的流中載入。只需從現有的ReportData對象中將布局讀取到字節數組中,并從中加載XtraReport即可,并附上示例代碼。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
DevExpress有一個很好的為eXpressApp Framework框架服務的模塊框架稱為Report Module模塊。這個模塊的目的是為對象提供一個報告引擎,允許您通過處理和UI生成報告。到目前為止,我所遇到的最大問題是一旦他們設計好了,如何在框架以外生成這些報告。一個典型的場景中包含有一個設計的應用程序,然后需要開發一些服務流程,每天獲取并發送報告。
通過研究,我發現了如何作為一個簡單的XtraReport而不是一個XafReport對象生成這些報告。XtraReport類可以從包含在一個字節數組布局的流中載入。我只是從現有的ReportData對象中將布局讀取到字節數組中,并從中加載XtraReport。下面是代碼示例:
VB.NET
1 Dim uowUnitOfWork As New UnitOfWork(XpoDefault.DataLayer)
2 Dim obsObjectSpace As New ObjectSpace(uowUnitOfWork, XafTypesInfo.Instance)
3 Dim rptReportData As Reports.ReportData
4 Dim xfrReport As Reports.XafReport
5
6 rptReportData = obsObjectSpace.FindObject(Of Reports.ReportData)(Nothing)
7 xfrReport = rptReportData.LoadXtraReport(obsObjectSpace)
C#
using( UnitOfWork uow = new UnitOfWork( XpoDefault.DataLayer ) ) {
ObjectSpace objectSpace = new ObjectSpace( uow , new XpoTypesInfoAdapter(
uow.DataLayer.Dictionary ) );
uow.Connect();
ReportData reportData = objectSpace.FindObject<ReportData>( new BinaryOperator( "Name",
"ContactsGroupedByPosition" ) );
if( reportData != null ) {
XafReport report = reportData.LoadXtraReport( objectSpace );
report.ObjectSpace = objectSpace;
report.ShowPreview();
}
}
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:翻譯