各製品の資料を入手。
詳細はこちら →PowerShell を使ってMonday.com のデータをSQL Server にレプリケーション
Monday.com をPowerShell スクリプトを記述。リアルタイムデータへの接続を使用してMonday.com のデータをSQL Server にレプリケーション(複製)。
最終更新日:2023-09-26
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData ODBC Driver for Monday は、Microsoft のビルトインODBC サポートを使用して、追加設定なしで連携を可能にします。ODBC ドライバーは、PowerShell から実際のMonday.com のデータへの連携を即座に実現します。
PowerShell に組み込まれている.NET Framework Provider for ODBC を使用して、Monday.com を他のデータベースに複製するなどの統合タスクを素早く自動化できます。この記事では、Monday.com をSQL Server に5 行のコードで複製する方法を説明します。
PowerShell コードを記述し、Monday.com のダウンロード以下の例を参照してください。
CData ODBC ドライバとは?
CData ODBC ドライバは、以下のような特徴を持ったリアルタイムデータ連携ソリューションです。
- Monday.com をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレミスデータソースに対応
- 多様なアプリケーション、ツールにMonday.com のデータを連携
- ノーコードでの手軽な接続設定
- 標準 SQL での柔軟なデータ読み込み・書き込み
CData ODBC ドライバでは、1.データソースとしてMonday.com の接続を設定、2.PowerShell 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。
CData ODBC ドライバのインストールとMonday.com への接続設定
まずは、本記事右側のサイドバーからMonday ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。
未指定の場合は、初めにODBC DSN(data source name)で接続プロパティを指定します。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC Data Source Administrator を使用して、ODBC DSN を作成および構成できます。
Monday 接続プロパティの取得・設定方法
Monday AuditLog API
Monday AuditLog API は、API トークンによる認証のみをサポートしています。
監査ログAPI トークンを生成するには:
- monday.com アカウントにログインします。
- 画面右上のアバター(画像アイコン)をクリックします。
- 表示されたメニューからAdministration を選択します。
- 左側のナビゲーションでSecurity をクリックします。
- Audit タブをクリックします。
- Monitor by API -> Copy をクリックして、AuditLog API トークンをコピーします。
API トークンを取得した後、以下の接続プロパティを設定します。
- Schema:"AuditLog" に設定。
- AuthScheme:Token
- APIToken:取得した監査ログAPI トークン
- URL:Monday アカウントURL。ログイン後、自身のMonday ホームページのURL をコピーできます。例:https://your-account-name.monday.com/。
Monday GraphQL API
Monday GraphQL API は、API トークンまたはOAuth 標準による認証をサポートしています。
API トークン
API トークンで接続するには、AuthScheme をToken に設定し、次の手順でAPIToken を取得します。
- monday.com アカウントにログインします。
- 画面右上のアバター(画像アイコン)をクリックします。
- 表示されたメニューからAdministration を選択します(管理者権限が必要です)。
- 左側のナビゲーションでConnections をクリックし、表示されたページでAPI タブをクリックします。
- Personal API Token で、Create token をクリックしてパーソナルAPI トークンを作成します。APIToken 接続プロパティをこの値に設定します。
- すでにトークンを作成している場合は、Personal API Token でCopy ボタンをクリックしてAPI トークンをコピーします。APIToken 接続プロパティをこの値に設定します。
OAuth で認証する場合は、ヘルプドキュメントの「OAuth 認証の使用」セクションを参照してください。
Monday.com への接続
以下のコードは、DSN を使用してPowerShell でデータソースへの接続を初期化する方法を説明します。
$conn = New-Object System.Data.Odbc.OdbcConnection
$conn.ConnectionString = "DSN=CData Monday Source x64"
Monday.com のデータをSQL Serverにバックアップ
キャッシュを有効にした後、以下のコードを使用して、データをSQL Server に複製できます。
次の接続プロパティを設定し、キャッシュデータベースを構成します。
CacheProvider:ADO.NET プロバイダの名前です。これは、ご使用のバージョンの.NET のMachine.config にあります。例として、SQL Server を構成するにはSystem.Data.SqlClient と入力します。
CacheConnection:データベースの接続に必要なプロパティの接続文字列です。以下はSQL Server の一例です。
Server=localhost;Database=RSB;User Id=sqltest;Password=sqltest;
この例のSQL クエリを使用して、スキーマを含むキャッシュされたテーブル全体を更新できます。既存のキャッシュはすべて削除されます。
$conn.Open()
# Create and execute the SQL Query
$SQL = "CACHE DROP EXISTING SELECT * FROM " + $Invoices
$cmd = New-Object System.Data.Odbc.OdbcCommand($sql,$conn)
$count = $cmd.ExecuteNonQuery()
$conn.Close()
ドライバーを使用すると、キャッシュ機能を完全に制御できます。その他のキャッシュコマンドと使用例については、ヘルプドキュメントを参照してください。他のデータベースに複製する手順についても、ヘルプドキュメントを参照してください。
その他の操作
PowerShell でMonday.com を取得するには、OdbcDataAdapter メソッドのFill メソッドを呼び出します。データ操作コマンドを実行するには、OdbcCommand オブジェクトを初期化してからExecuteNonQuery を呼び出します。以下は、.NET Framework Provider for ODBC を介した、Monday.com への コマンドの例です。
Monday.com のデータの取得
$sql="SELECT Id, DueDate from Invoices"
$da= New-Object System.Data.Odbc.OdbcDataAdapter($sql, $conn)
$dt= New-Object System.Data.DataTable
$da.Fill($dt)
$dt.Rows | foreach {
$dt.Columns | foreach ($col in dt{
Write-Host $1[$_]
}
}
Monday.com からPowerShell へのデータ連携には、ぜひCData ODBC ドライバをご利用ください
このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。
CData ODBC ドライバは日本のユーザー向けに、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。