各製品の資料を入手。
詳細はこちら →CData
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
データバインドによって、UI コントロールからデータに接続できます。 CData ADO.NET Provider for D365BusinessCentral を使って、Visual Studio 上でWindows Forms およびWeb Forms とDynamics 365 Business Central をデータバインドできます。この記事で、Dynamics 365 Business Central を、ウィザードから変更をリアルタイムで反映するチャートにデータバインドする方法を説明します。 Code Walk-through セクションではチャートはほんの10行のコードで作成します。
データバインドは3つのステップから構成されます。コントロールのインスタンス作成、データソースの設定、最後にデータバインドです。
下の手続きにより、データソース構成ウィザードを使ってチャートコントロールとDynamics 365 Business Central との接続を作成します。ウィザード上でデータバインドをするDynamics 365 Business Central エンティティを使います。
データ接続の選択ダイアログで、「変更」をクリックして、CData Dynamics 365 Business Central のデータソースを選択して、接続プロパティを入力します。下は代表的な接続文字列ですです。:
OrganizationUrl=https://myaccount.financials.dynamics.com/;
Dynamics 365 Business Central への認証には、User およびAccessKey プロパティが必要です。
データに接続するには、OrganizationUrl を指定します。OrganizationUrl は、 http://businesscentral.dynamics.com/abc123/ などのBusiness Central アカウントへのエンドポインであるか、Web サービスのルートを参照する必要があります。OrganizationUrl を指定する方法 および利用可能なエンドポイントについての詳細は、Business Central エンドポイント を参照してください。組織内に複数の会社がある場合は、どの会社に接続するかを特定するためにCompany を指定する必要があります。 会社が1つだけの場合は、Company を指定する必要はありません。
Dynamics 365 Business Central に認証するには、User およびAccessKey 接続プロパティを指定します。Microsoft では、これらをテストおよび開発目的で推奨します。ただし、運用環境での使用は推奨していません。User およびAccessKey の値を取得するには、Dynamics 365 Business Central の「ユーザー」ページに移動して「編集」をクリックします。User Name および Web Service Access Key の値は、User およびPassword 接続文字列プロパティとして入力する値です。User Name はE メールアドレス ではありません。短縮されたユーザー名です。
Microsoft では、OAuth 認証を使用する本番ユースケースを推奨します。詳細については、ヘルプドキュメントの「OAuth 認証の使用」を参照してください。
データソースの追加とデータベースオブジェクトを選択したら、チャートにオブジェクトをバインドします。この例では、X軸に accountid をY軸に Name を設定します。
チャートはこれでDynamics 365 Business Central にデータバインドされました。チャートを実行して最新のデータを表示させましょう。
Dynamics 365 Business Central へのデータバインドはほんの数行のコードのみが必要で、3つの簡単なステップで完了できます。
下に完全なコードを示します:
D365BusinessCentralConnection conn = new D365BusinessCentralConnection("OrganizationUrl=https://myaccount.financials.dynamics.com/;");
D365BusinessCentralCommand comm = new D365BusinessCentralCommand("SELECT accountid, Name FROM Accounts", conn);
D365BusinessCentralDataAdapter da = new D365BusinessCentralDataAdapter(comm);
DataSet dataset = new DataSet();
da.Fill(dataset);
chart1.DataSource = dataset;
chart1.Series[0].XValueMember = "accountid";
chart1.Series[0].YValueMembers = "Name";
// Insert code for additional chart formatting here.
chart1.DataBind();