USER MANUALS

Dynamics 365 Business Central

Microsoft Dynamics 365 は、顧客関係管理 (CRM) と企業資源計画 (ERP) の構成要素を組み合わせたクラウドベースのビジネスアプリケーションプラットフォームです。これは、Microsoft が Dynamics AX (同社の ERP アプリケーション) を Dynamics CRM アプリケーションと統合した 2016 年に発売されました。

Dynamics 365 は、従来の ERP と CRM の機能間の仕切りをなくし、営業、マーケティング、財務、顧客サービス、フィールドサービス、運用、プロジェクト管理など、お客様のビジネス全体におけるすべてのロールや事業単位向けに設計された特定のビジネスプロセスを備えた統合型多機能アプリケーションです。

このため、多くのデータ、メニュー、ビューなどをすべて Denodo に移行するのは困難です。このプロセスを使いやすくするために、以下の機能が利用可能な Dynamics 365 ウィザードが用意されています。

  • Finance

    • General journals

    • Chart Accounts

    • G/L Account Categories

    • Fixed Assets

    • Employees

  • Cash management

    • Bank Accounts

    • Bank Acc. Statements

  • Sales

    • Customers

    • Items

    • Sales Quotes

    • Sales Orders

    • Sales Invoices

    • Sales Credit Memos

    • Finance Charge Memos

    • Posted Sales Invoices

    • Posted Sales Credit Memos

  • Purchasing

    • Vendors

    • Purchase Quotes

    • Purchase Orders

    • Purchase Invoices

    • Purchase Credit Memos

    • Posted Purchase Invoices

    • Posted Purchase Credit Memos

上記のビューごとに、簡易版 (Dynamics 365 の Web インターフェイスですでに表示されているフィールドのみを表示) と完全版 (エンティティのすべてのフィールドを表示) があります。場合によっては、請求書、注文書、見積書などの明細を確認するための接尾辞 _lines が付いているビューがあります。

OAuth 2.0 資格情報の取得

Dynamics 365 への認証に必要なパラメータを取得するには、以下の手順に従う必要があります。

  1. ユーザー名とパスワードを使用して https://portal.azure.com/ にログインします。

  2. Azure Active Directory にアプリケーションを登録します。ここで、クライアント ID (アプリケーション ID) を取得します。

    App in Azure portal

    Azure ポータルのアプリ

  3. [API permissions] > [Add a permission] で、アプリに権限を付与します。[Dynamics CRM API] を選択して、[Delegated Permissions] をクリックします。[user_impersonation] を選択して、[Add permissions] をクリックします。

  4. [Certificates & secrets] でクライアントシークレットの値を設定します。再度アクセスできないため、この値を書き留めておいてください

  5. トークンエンドポイントの URL は、[Endpoints] タブにあります。

  6. 認証サーバーの URL は https://login.windows.net/<username>/oauth2/authorize?resource=https://api.businesscentral.dynamics.com のようになります。前述の手順で行ったように、ユーザー名も含める必要があります。

  7. また、 [Settings] > [Callback URL] でコールバック URL を構成し、http://localhost:9090/oauth/2.0/redirectURL.jsp を設定する必要があります。

これで、Denodo の OAuth 2.0 資格情報ウィザードに必要なデータがすべて揃いました。

OAuth wizard step 1

OAuth ウィザードの手順 1

このウィザードの手順 1 の入力フィールドに入力したら、[Generate the authorization URL] をクリックすると、リンクのすぐ下に URL が表示されます。ブラウザーで開くと、以下のように表示されます。

OAuth wizard step 2

OAuth ウィザードの手順 2

最後に、そのコードをコピーしてウィザードの手順 3 に貼り付け、[Obtain the OAuth 2.0 credentials] をクリックします。資格情報は、構成プロセスで後から使用する必要があるため、クリップボードにコピーできます。

OAuth wizard step 3

OAuth ウィザードの手順 3

アーティファクトのインポート

Dynamics 365 Business Central ビューを作成するには、 [File] メニュー > [New] > [Data source] をクリックし、[Dynamics 365 Business Central] を選択します。

Dynamics 365 Business Central wizard

Dynamics 365 Business Central ウィザード

以下のパラメータを入力します。

  • Database: Dynamics 365 ビューが作成されるデータベースの名前。

  • Company: この値は、Business Central の [Companies] セクションで確認できます。値は企業リストの [Name] 列に表示されます。空白などの特殊文字をエスケープできることに注意してください (CRONUS%20US など)。

  • API version: 使用する Dynamics 365 API for Business Central のバージョン。デフォルトでは、v1.0 に設定されています。

  • Azure directory ID: Azure で [Azure active directory] > [Properties] に移動すると、[Directory id] に値が表示されます。

  • Access token: 前のセクションで生成された OAuth 2.0 アクセストークン。

  • Refresh token: 前のセクションで生成された OAuth 2.0 更新トークン。

  • Client ID: 新しく作成された Azure アプリケーションのクライアント ID。

  • Client secret: 新しく作成されたアプリケーションに対して、前のセクションで生成されたシークレットの値。

ここで [Execute import] をクリックして、Dynamics 365 にクエリを実行するためのデータソースとビューを作成します。

Dynamics 365 Business Central views

Dynamics 365 Business Central のビュー

制限事項

  • Dynamics 365 Business Central web services exposed There are a lot of entities involving Business Central, but out-of-the-box only a few of them have active endpoints to access them. Some have to be activated manually (described in Appendix II section), so you need to go to the Appendix I Accessing other entities to add it by yourself. Those steps are also valid for adding new entities not included here.

  • 挿入操作 Dynamics 365 Business Central では、NULL 値に対応していない ID フィールドのエンティティがレポートされるため、ID 値を指定しないと挿入操作が機能しません。ただし、ソースでは該当フィールドが自動生成されるため、挿入操作で値を指定するとエラーが発生します。

  • Business Central API バージョン 現行バージョンの Denodo Dynamics 365 Business Central ウィザードでは、Microsoft Business Central API のバージョン 1.0 のみをサポートしています。これらのテンプレートを新しいバージョンで使用すると、既存のエンティティやフィールドが部分的にサポートされる場合があります。

付録 I: 他のエンティティへのアクセス

There are many entities involving Dynamics 365 Business Central and, out-of-the-box, there are only web services exposed to consume data for a few of them. So, some of them need to be activated manually. And you will have to follow these steps also if you need to access an entity not included in this wizard.

  1. 目的のエンティティを Web サービスとして公開します。 Business Center Web アプリケーションのアカウントにアクセスして、検索ボタンを押します。表示されたダイアログに「web services」と入力し、WS リストのリンクを取得してクリックします。

    Expose an entity as a web service

    エンティティを Web サービスとして公開

    リンク先が表示されたら、[New] ボタンをクリックし、表示された空の行に必要なエンティティ名を入力します。ここでは、Employee Card エンティティの例を示しています。

    Add new entity

    新しいエンティティの追加

    EmployeeCard entity

    Employee Card エンティティ

    After selecting the entity, you must enter a Service Name and select the Publishable check box. When saved, the application will show you the ODataV4 URL for the web service you have just created.

    New entity added URL

    URL が追加された新しいエンティティ

  2. Denodo VDP で基本ビューを作成します。**Web サービスを取得したので、データにアクセスするための基本ビューを作成できます。Design Studio に移動し、ウィザードの実行時に作成された ds_dynamics_365_bc データソースを開き、[**Create base view] を選択します。

    Create base view

    基本ビューの作成

    表示された新しいダイアログで、以下のように入力します。

    • Entity Collection: アクセスする OData サービスで定義されるコレクション。この例では employeeCard を設定します。

    • Entity name: 直前に説明した名前。この例では、employeeCard になります。

    [Create Base View] をクリックすると、新しい基本ビューが表示されます。

付録 II: 最も関連性の高いエンティティのエンドポイントのリスト

As you have seen in Appendix I Accessing Other Entities, we had to search in the web services section of Business Central for the Employee Card endpoint, that matches the object Employee Card with the ID 5200.

Search Employee Card entity

Employee Card エンティティの検索

以下は、最も関連性の高いエンティティ ID のリストです。エンドポイントはデフォルトで無効になっているため、追加するエンティティごとに前の手順に従うだけです。オブジェクトセレクターを開く前に、[Object type] コンボでページを選択する必要があります。エンティティを追加する際に、ここで記述したサービス名を使用し、すべてが正しく機能していることを確認します。

Entities list

エンティティのリスト

Add feedback