Node.jsでMangoDB+SalesforceのHeroku Schedulerバッチを作る

前回のポストには、「APIs(JSForce)経由でSalesforceデータをアクセス」を共有ましたが、
本ポストにも引き続き、MangoDBからSalesforceにデータ同期用のHerokuスケジューラーバッチをNode.jsで作成することを共有したいと思います。次のようなイメージになります。
MangoDB+Salesforce ※勿論、MangoDBとSalesforceのデータ同期については様々な方法があるのです。
例えば:Enrico Murruさんの「 Lightning Connect Custom Adapters and MongoDB」と「Powering Salesforce Lightning Connect with MongoDB」があります。
次回のポストに別途で試して共有する予定です。
さて、早速やってみましょう。

1. In Salesforce

データ格納オブジェクト

MangoDBデータ格納のため、カスタムオブジェクト「MangodbObject」を新規作成します。 MangodbObject

2. In Cloud9 IDE

package.jsonを更新

ライブラリーasyncmomentmongooseをpackage.jsonに追加します。

バッチファイルを新規作成

バッチファイル「db.js」「sfdc.js」をルートディレクトリに以下のソースで新規作成します。

Herokuにデプロイ

編集されたファイルをHerokuにデプロイします。デプロイ方法は以前のポスト「Node.jsの快適な開発デプロイ環境を構築(Heroku+Cloud9)」を参照してください。

3. In Heroku

Add-onsを追加

Add-onsMangoLabHeroku SchedulerをHerokuに追加します。 Add-ons

MongoDBにテストデータの準備

コレクション「accounts」を新規し、下記のテストデータを追加します。 Account

Heroku Schedulerにジョブ追加

Heroku Scheduler

4. 実行結果

Heroku logs

Herokuコマンド「heroku logs」でHerokuのログを確認します。

Salesforceデータ

MangoDBObject  Salesforce これで毎日にMangoLabからSalesforceにデータ同期のバッチができました。;)
Enjoy it.

Post Tagged with , , , ,