SAP Netweaver Gateway のデータをDevExpress Data Grid にデータバインドする。

加藤龍彦
加藤龍彦
デジタルマーケティング
SAP Netweaver Gateway 用の CData ADO.NET プロバイダーをDevExpress Windows Forms とWeb コントロールとともに使用し、SAP Netweaver Gateway をチャートに入力します。

SAP Netweaver Gateway 用の CData ADO.NET プロバイダーはサードパーティーコントロールで使うことのできる通常のADO.NET データベースアクセスコンポーネントを実装しています。データバインドするための通常のADO.NET プロセスに従うことで、UI コントロールから実データへの双方向アクセスを可能にします。 この記事では、CData を使ってDevExpress Windows Forms とウェブコントロールにデータバインドする方法を説明します。ここでは、最新のデータを表示するチャートにデータバインドします。

SAP Gateway 接続プロパティの取得・設定方法

SAP Gateway のテーブルにアクセスするには、次の接続プロパティを設定します。

  • URL = お使いの環境のURL、またはサービスの完全URL。例えば、完全URL は次のようになります:https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/。この例では、環境URL は次のようになります:https://sapes5.sapdevcenter.com。CustomUrlParams プロパティを使用して、追加プロパティを追加します。
  • Namespace = 適切なService Namespace。先ほどの例では、IWBEP が名前空間です。サービスへの完全URL が指定されている場合は任意です。
  • Service = データを取得するサービス。先ほどの例では、サービスはGWSAMPLE_BASIC です。完全URL が指定されている場合は必須ではありません。
  • CustomUrlParams = HTTP リクエストに含まれる必要のある追加プロパティ;例えばsap-client=001&sap-language=EN

SAP Gateway への認証

SAP Gateway はBasic 認証、OAuth 2.0 認証、SAP BTP Destination 認証を許可します。

Basic 認証

Basic 認証を有効にするには、以下のプロパティを設定します。

  • AuthScheme = Basic
  • User = SAP Gateway へのログインに使用するユーザー名。
  • Password = SAP Gateway へのログインに使用するパスワード。

上記のプロパティを設定したら、接続の準備は完了です。ローカルデータにアクセスするには、個人の認証情報を使用します。

他の認証方法については、ヘルプドキュメントの「接続の確立」セクションを参照してください。

Windows Forms コントロール

下のコードでは、SAP Netweaver Gateway でDevExpress のチャートに追加する方法を説明します。SAPGatewayDataAdapter はチャートコントロールのSeries プロパティにバインドします。コントロールのDiagram プロパティはx 軸とy 軸をカラム名として定義します。

using (SAPGatewayConnection connection = new SAPGatewayConnection(
"User=user;Password=password;URL=https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/;")) {
  SAPGatewayDataAdapter dataAdapter = new SAPGatewayDataAdapter(
  "SELECT ProductID, Quantity FROM SalesOrderLineItems WHERE Quantity < 15", 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[] { "Quantity" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "ProductID";
  series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
  chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
The complete code example and the resulting chart.

Web コントロール

下のコードではSAP Netweaver Gateway でDevExpress Web を操作するための設定方法を説明します。SAPGatewayDataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。

using DevExpress.XtraCharts;

using (SAPGatewayConnection connection = new SAPGatewayConnection(
"User=user;Password=password;URL=https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/;"))
{
  SAPGatewayDataAdapter SAPGatewayDataAdapter1 = new SAPGatewayDataAdapter("SELECT ProductID, Quantity FROM SalesOrderLineItems WHERE Quantity < 15", connection);
  DataTable table = new DataTable();
  SAPGatewayDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "Quantity" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "ProductID";
  series.ValueScaleType = ScaleType.Numerical;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
An ASP.NET application created with the ADO.NET Provider and the DevExpress Web Forms control.(Salesforce is shown.)

はじめる準備はできましたか?

SAP Netweaver Gateway Data Provider の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

SAP Netweaver Gateway Icon SAP Netweaver Gateway ADO.NET Provider お問い合わせ

SAP Netweaver Gateway に連携する.NET アプリケーションを素早く、簡単に開発できる便利なドライバー。