製品をチェック

無償トライアル:

無償トライアルへ

製品の情報と無償トライアルへ:

Dynamics 365 Business Central ADO.NET Provider

Items、Sales Orders、Purchase Orders などのDynamics 365 Business Central データを組み込んだパワフルな.NET アプリケーションを短時間・低コストで作成して配布できます。

データ連携でお困りですか?

お問い合わせ

Powershell からの Dynamics 365 Business Central データ連携タスクを自動化


PowerShell から Dynamics 365 Business Central に簡単に接続する方法をお探しですか? CData ADO.NET Provider for D365BusinessCentral は、PowerShell スクリプトの優位性を使い、シンプルで簡単に使えるADO.NET インターフェース を提供します。PowerShell スクリプトで、ADO.NET オブジェクトを使って簡単にDynamics 365 Business Central に接続して、同期、自動化、ダウンロードなどが可能!


加藤龍彦
ウェブデベロッパー



CData ADO.NET Provider for D365BusinessCentral は、ADO.NET 標準インターフェースへ統合し、PowerShell のような. NET アプリケーションからDynamics 365 Business Central API へのデータ連携を可能にします。このプロバイダーは、Dynamics 365 Business Central の認証および相互作用を簡単にします。このチュートリアルでは、PowerShell から直接SQL クエリを実行するための、いくつかの一般的なADO.NET オブジェクトの使い方を説明します。

クエリの実行

次の3つのステップに従って create、read、update、およびdelete (CRUD) のデータ連携コマンドを PowerShell からリアルタイムDynamics 365 Business Central に実行:

  1. プロバイダーのアセンブリをロード:

    [Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for D365BusinessCentral\lib\System.Data.CData.D365BusinessCentral.dll")
  2. Dynamics 365 Business Central に接続:

    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 認証の使用」を参照してください。

    $constr = "OrganizationUrl=https://myaccount.financials.dynamics.com/;" $conn= New-Object System.Data.CData.D365BusinessCentral.D365BusinessCentralConnection($constr) $conn.Open()
  3. D365BusinessCentralDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:

    $sql="SELECT accountid, Name from Accounts" $da= New-Object System.Data.CData.D365BusinessCentral.D365BusinessCentralDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.accountid $_.name }

Dynamics 365 Business Central データの更新

$cmd = New-Object System.Data.CData.D365BusinessCentralCommand("UPDATE Accounts SET Name='MyAccount' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.D365BusinessCentralParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

Dynamics 365 Business Central へのデータの挿入

$cmd = New-Object System.Data.CData.D365BusinessCentralCommand("UPDATE Accounts SET Name='MyAccount' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.D365BusinessCentralParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

Dynamics 365 Business Central データの削除

$cmd = New-Object System.Data.CData.D365BusinessCentralCommand("UPDATE Accounts SET Name='MyAccount' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.D365BusinessCentralParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()