ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →無償トライアル:
無償トライアルへ製品の情報と無償トライアルへ:
QuickBooks Online への完全な読み書きアクセスにより、任意の.NET アプリケーションから検索(顧客、トランザクション、請求書、販売レシートなど)、アイテムの更新、顧客の編集などを実行できます。
加藤龍彦
ウェブデベロッパー
CData ADO.NET Provider for QuickBooksOnline は、ADO.NET 標準インターフェースへ統合し、PowerShell のような. NET アプリケーションからQuickBooks Online API へのデータ連携を可能にします。このプロバイダーは、QuickBooks Online の認証および相互作用を簡単にします。このチュートリアルでは、PowerShell から直接SQL クエリを実行するための、いくつかの一般的なADO.NET オブジェクトの使い方を説明します。
次の3つのステップに従って create、read、update、およびdelete (CRUD) のデータ連携コマンドを PowerShell からリアルタイムQuickBooks Online に実行:
プロバイダーのアセンブリをロード:
[Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for QuickBooksOnline\lib\System.Data.CData.QuickBooksOnline.dll")
QuickBooks Online に接続:
QuickBooks Online への接続にはOAuth 認証標準を使います。Embedded Credentials を使用すると、接続プロパティを設定せずに接続できます。接続すると、本製品はデフォルトブラウザでOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えるだけです。本製品がOAuth プロセスを完了します。
詳細はヘルプドキュメントを参照してください。
$constr = ""
$conn= New-Object System.Data.CData.QuickBooksOnline.QuickBooksOnlineConnection($constr)
$conn.Open()
QuickBooksOnlineDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:
$sql="SELECT DisplayName, Balance from Customers"
$da= New-Object System.Data.CData.QuickBooksOnline.QuickBooksOnlineDataAdapter($sql, $conn)
$dt= New-Object System.Data.DataTable
$da.Fill($dt)
$dt.Rows | foreach { Write-Host $_.displayname $_.balance }
$cmd = New-Object System.Data.CData.QuickBooksOnlineCommand("UPDATE Customers SET FullyQualifiedName='Cook, Brian' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.QuickBooksOnlineParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
$cmd = New-Object System.Data.CData.QuickBooksOnlineCommand("UPDATE Customers SET FullyQualifiedName='Cook, Brian' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.QuickBooksOnlineParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
$cmd = New-Object System.Data.CData.QuickBooksOnlineCommand("UPDATE Customers SET FullyQualifiedName='Cook, Brian' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.QuickBooksOnlineParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
CodeProject