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

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

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

まず、Profile 接続プロパティにShippo プロファイルのディスク上の場所を設定します(例:C:\profiles\Shippo.apip)。次に、ProfileSettings 接続プロパティにShippo の接続文字列を設定します(以下を参照)。

Shippo API プロファイル設定

Shippo に認証するには、API Key が必要です。このAPI Key は「Settings」>「API」>「Generate Token」で確認できます。キーを生成した後、ProfileSettings 接続プロパティのAPIKey に設定します。

Windows Forms コントロール

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

using (APIConnection connection = new APIConnection(
"Profile=C:\profiles\Shippo.apip;ProfileSettings='APIKey=my_api_key';")) {
  APIDataAdapter dataAdapter = new APIDataAdapter(
  "SELECT ObjectId , OrderStatus FROM Orders WHERE ShopApp = 'Shippo'", 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[] { "OrderStatus" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "ObjectId ";
  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 コントロール

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

using DevExpress.XtraCharts;

using (APIConnection connection = new APIConnection(
"Profile=C:\profiles\Shippo.apip;ProfileSettings='APIKey=my_api_key';"))
{
  APIDataAdapter APIDataAdapter1 = new APIDataAdapter("SELECT ObjectId , OrderStatus FROM Orders WHERE ShopApp = 'Shippo'", connection);
  DataTable table = new DataTable();
  APIDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "OrderStatus" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "ObjectId ";
  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.)

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

API Driver で Shippo のライブデータに接続

Shippo に接続 お問い合わせ