SAP BusinessObjects BI のデータをDevExpress Data Grid にデータバインドする。
SAP BusinessObjects BI 用の CData ADO.NET プロバイダーはサードパーティーコントロールで使うことのできる通常のADO.NET データベースアクセスコンポーネントを実装しています。データバインドするための通常のADO.NET プロセスに従うことで、UI コントロールから実データへの双方向アクセスを可能にします。 この記事では、CData を使ってDevExpress Windows Forms とウェブコントロールにデータバインドする方法を説明します。ここでは、最新のデータを表示するチャートにデータバインドします。
SAP Business Objects BI インスタンスに接続するには、次の接続プロパティを設定する必要があります。
- URL:SAP BusinessObjects BI REST API URL。これを見つけるには:
- セントラル管理コンソールにログインします。
- コンボボックスからアプリケーションを選択します。
- RESTful Web Service を選択します。セントラル管理コンソールは、アクセスURL を表示します。デフォルトでは、http://{Server-Name}:6405/biprws です。
- AuthScheme:SAP BusinessObjects BI に接続する際に使用する認証の種類に設定。
SAP BusinessObjects BI への認証方法は、Basic、Enterprise、LDAP、Windows AD、CyberArk をサポートしています。
Basic
デフォルトのBasic 認証メカニズムを使用してSAP BusinessObjects BI に接続するには、AuthScheme をBasic に設定し、次のプロパティを設定します。
- User: インスタンスのユーザー名。
- Password: インスタンスのパスワード。
その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。
Windows Forms コントロール
下のコードでは、SAP BusinessObjects BI でDevExpress のチャートに追加する方法を説明します。SAPBusinessObjectsBIDataAdapter はチャートコントロールのSeries プロパティにバインドします。コントロールのDiagram プロパティはx 軸とy 軸をカラム名として定義します。
using (SAPBusinessObjectsBIConnection connection = new SAPBusinessObjectsBIConnection(
"User=username;Password=password;Url=http://myinstance:6405/biprws")) {
SAPBusinessObjectsBIDataAdapter dataAdapter = new SAPBusinessObjectsBIDataAdapter(
"SELECT StoreName, TotalRevenue FROM MyCustomReport WHERE State = 'CA'", connection);
DataTable table = new DataTable();
dataAdapter.Fill(table);
DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series();
chartControl1.Series.Add(series);
DataTable table = new DataTable();
series.ValueDataMembers.AddRange(new string[] { "TotalRevenue" });
series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
series.ArgumentDataMember = "StoreName";
series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
Web コントロール
下のコードではSAP BusinessObjects BI でDevExpress Web を操作するための設定方法を説明します。SAPBusinessObjectsBIDataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。
using DevExpress.XtraCharts;
using (SAPBusinessObjectsBIConnection connection = new SAPBusinessObjectsBIConnection(
"User=username;Password=password;Url=http://myinstance:6405/biprws"))
{
SAPBusinessObjectsBIDataAdapter SAPBusinessObjectsBIDataAdapter1 = new SAPBusinessObjectsBIDataAdapter("SELECT StoreName, TotalRevenue FROM MyCustomReport WHERE State = 'CA'", connection);
DataTable table = new DataTable();
SAPBusinessObjectsBIDataAdapter1.Fill(table);
DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
WebChartControl1.Series.Add(series);
DataTable table = new DataTable();
series.ValueDataMembers.AddRange(new string[] { "TotalRevenue" });
series.ArgumentScaleType = ScaleType.Qualitative;
series.ArgumentDataMember = "StoreName";
series.ValueScaleType = ScaleType.Numerical;
((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}