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

加藤龍彦
加藤龍彦
デジタルマーケティング
CData ADO.NET Provider for Anaplan をDevExpress のWindows Forms およびWeb コントロールと組み合わせて使い、チャートに Anaplan のデータ を取り込みます。



CData ADO.NET Provider for Anaplan は、サードパーティ製コントロールと組み合わせて使える標準的なADO.NET データアクセスコンポーネントを備えています。通常のADO.NET データバインドの手順に沿って進めるだけで、UI コントロールからリアルタイムデータへの双方向アクセスを実現できます。この記事では、CData のコンポーネントを使って DevExpress UI コントロール(Windows Forms およびWeb コントロール) にデータバインドする方法を紹介します。今回は、リアルタイムのデータを可視化するチャートにデータバインドしていきます。

Anaplan への認証

ドライバーはBasic、証明書、またはOAuth による認証をサポートしています。いずれの場合も、Region をAnaplan アカウントデータがホストされているリージョン(例:US1、これがデフォルト)に設定してください。

Basic 認証の使用

AuthSchemeBasic に設定し、Anaplan のUserPassword を入力します。ワークスペースがシングルサインオン(SSO)を使用している場合は、Basic 認証を使用するために Exception User として割り当てられている必要があります。

証明書認証の使用

AuthSchemeCertificate に設定し、CertificateCertificateTypePrivateKey プロパティを入力します(どちらかが暗号化されている場合はCertificatePassword / PrivateKeyPassword も設定してください)。証明書は、Anaplan テナント管理者に登録されたCA 発行のX.509 証明書である必要があります。

OAuth 認証の使用

Anaplan でカスタムOAuth アプリケーションを登録し、以下のプロパティを設定します:

  • OAuthClientId:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントId。
  • OAuthClientSecret:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。
  • CallbackURL:アプリケーションの登録時に定義したリダイレクトURI。
  • InitiateOAuthGETANDREFRESH に設定すると、ドライバーがOAuth トークンの交換と更新を自動的に管理します。

カスタムOAuth アプリの作成方法とOAuth の使用方法については、ヘルプドキュメントの「はじめに」の章を参照してください。

Windows Forms コントロール

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

using (AnaplanConnection connection = new AnaplanConnection(
"OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=your_callback_url;Region=US1;InitiateOAuth=GETANDREFRESH;")) {
  AnaplanDataAdapter dataAdapter = new AnaplanDataAdapter(
  "SELECT Region, Product FROM [Workspace].[Model].[Sales] WHERE Value = \'100\'", 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[] { "Product" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "Region";
  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 コントロール

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

using DevExpress.XtraCharts;

using (AnaplanConnection connection = new AnaplanConnection(
"OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=your_callback_url;Region=US1;InitiateOAuth=GETANDREFRESH;"))
{
  AnaplanDataAdapter AnaplanDataAdapter1 = new AnaplanDataAdapter("SELECT Region, Product FROM [Workspace].[Model].[Sales] WHERE Value = \'100\'", connection);
  DataTable table = new DataTable();
  AnaplanDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "Product" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "Region";
  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.)

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

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

 ダウンロード

詳細:

Anaplan Icon Anaplan ADO.NET Provider

Anaplan と連携する高機能な.NET アプリケーションを迅速に開発・デプロイ。