2012-05-04 11 views
0

私はDevExpress XtraReportsを使用して会社のプロジェクトを開始しています。私の問題は次のとおりです。DevExpress XtraReports - カスタムデータソースからフィールドを設定する方法

startDay、endDay、および開発者IDの3つのパラメータを指定してデータを抽出するストアドプロシージャがあり、このSPは.dbmlファイル内にあります。

この例http://www.devexpress.com/Support/Center/p/B223095.aspx後、我々はこの方法を有する:

静的ボイドreport_DataSourceDemanded(オブジェクト送信者、System.EventArgs e)の {

 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を満たすパラメータを渡しました。パラメータ –

関連する問題