DevExpress での一覧、帳票等のレポート(ASPxWebDocumentViewer)にDB情報を出力するためにデータソース準備(XpoDataSource)のサンプルです。
現状の画面デザインはこのようになっています。
<レポートのデータソース準備(XpoDataSource)>
3個のテーブルを準備します。
【注文テーブル(ORDER_T_ORDER):トランザクション】
【支店テーブル(ORDER_M_OFFICE):マスター】
【ステータステーブル(ORDER_M_STATUS):マスター】
コンテキストメニューから「追加」→「新しい項目」を選択します。
左側側の一覧から「DevExpress」を選択し、「DevExpress ORM Data Model Wizard」を選択します。
既にDBを用意しているため、「Map to existing database」を選択します。
DBの接続情報を設定します。
使用するテーブルを選択します。
デフォルト設定のまま、「完了」ボタンを選択します。
↓
ビルドを実施すると設定したテーブルのXPOファイルが自動で作成されます。
※必ずビルドを行って下さい。ビルドなしの場合、「XpoDataSource」等の設定でエラーが発生します。
「XtraReport1」ファイルを選択します。
↓
「XtraReport」のプロパティから「DataSource」を選択します。
下部の「Add Report Data Source」を選択します。
「XPO」を選択します。
↓
「注文テーブル(ORDER_T_ORDER):トランザクション」を選択します。
↓
デフォルト設定のまま、「Finish」ボタンを選択します。
「XtraReport」のプロパティに「Me.DataSource = Me.XpObjectSource1」が設定されます。
「Global.asax」ファイルを選択します。
「Application_Start」メソッドに対して下記情報を追記します。
※「DevExpress.Xpo.XpoDefault.DataLayer」、「DevExpress.Xpo.XpoDefault.Session」
【サンプルプログラム(VB.Net)】
1 2 3 4 5 6 |
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs) ' アプリケーションの起動時に呼び出されます DevExpress.Xpo.XpoDefault.DataLayer = DevExpressSample.ConnectionHelper.GetDataLayer(DevExpress.Xpo.DB.AutoCreateOption.SchemaAlreadyExists) DevExpress.Xpo.XpoDefault.Session = Nothing DevExpress.XtraReports.Web.ASPxWebDocumentViewer.StaticInitialize() End Sub |
それでは、実行して動作確認を行います。
無事、一覧、帳票等のレポート(ASPxWebDocumentViewer)でデータソース準備(XpoDataSource)が出来ました。