Powershell からの MYOB AccountRight データ連携タスクを自動化

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

MYOB AccountRight ADO.NET Provider

.NET アプリケーションから、MYOB AccountRight データへの双方向連携を実現し、Customers、Transactions、Invoices、Sales Receipts などの検索、Items、Customers などの更新が可能に。



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



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

クエリの実行

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

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

    [Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for MYOB AccountRight\lib\System.Data.CData.MYOB.dll")
  2. MYOB AccountRight に接続:

    これらのプロパティは会社のファイルに接続するときに必要です(クラウドインスタンスおよびオンプレミスインスタンスの両方)。

    • User:会社のファイルに紐づいているユーザー名。
    • Password:会社のファイルに紐づいているパスワード。
    • CompanyFileId:会社ファイルのID。指定しない場合は、最初に返された会社ファイルのID が使用されます。CompanyFiles ビュー をクエリしてこれを見ることができます:
      SELECT Id FROM CompanyFiles

    オンプレミスインスタンスへの接続:

    InitiateOAuth:OFF に設定。

    オンプレミスインスタンスに接続する場合は、上記に加えて、次の接続プロパティを設定する必要があります。

    • Url: MYOB インスタンスのURL。

    クラウドインスタンスへの接続:

    MYOB のクラウドインスタンスに接続するには、OAuth アプリを作成する必要があります。このプロセスの詳細は、カスタムOAuth アプリの作成 にあります。

    $constr = "OAuthClientId=YourClientId; OAuthClientSecret=YourClientSecret; CompanyFileId=yourCompanyFileId; CallbackURL=http://localhost:33333; User=companyFileUser; Password=companyFilePassword; " $conn= New-Object System.Data.CData.MYOB.MYOBConnection($constr) $conn.Open()
  3. MYOBDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:

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

MYOB AccountRight データの更新

$cmd = New-Object System.Data.CData.MYOBCommand("UPDATE Accounts SET Type='Bank' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.MYOBParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

MYOB AccountRight へのデータの挿入

$cmd = New-Object System.Data.CData.MYOBCommand("UPDATE Accounts SET Type='Bank' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.MYOBParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

MYOB AccountRight データの削除

$cmd = New-Object System.Data.CData.MYOBCommand("UPDATE Accounts SET Type='Bank' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.MYOBParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()