CData Software Blog

クラウド連携のCData Software の技術ブログです。

SalesforceからMySQLへレプリケートしたデータをbiz-StreamでPDF出力する:CData Sync

こんにちは、CData の宮本です。

今回も 帳票ツールの biz-Stream を使ってみます。前回は、CData Salesforce JDBC Driver を biz-Stream に組み込み、biz-Stream から直接 Salesforce にアクセスする内容でした。
www.cdatablog.jp

ただ、「帳票出力の度にアクセスしたくない」というようなケースもあるかと思います。その場合は、DB にクラウドサービスのデータを連携し、biz-Stream からはDBだけを参照するようなことで可能になります。

ということで、今回は Salesforce から MySQL へデータのレプリケートを行い、biz-Stream からMySQLのデータを出力する内容をご紹介していきます。

構成

f:id:sennanvolar44:20200507151153p:plain

SalesforceMySQL(他のRDBでも可)の連携は CData Sync に全て任せます。CData Sync はクラウド・オンプレ問わず起動できますので、要件にあった環境にて実行することができます。今回は1台のマシンの中にCData Sync 、MySQL、 biz-Stream を置く構成にしていますが、 それぞれ別のマシン上で実行するような構成にすることも可能です。

必要なもの

  • biz-Stream

https://www.brainsellers.com/product/bizstream/

  • CData Sync(30日間無料です)

CData Sync のインストール & アクティベート

まずは以下のリンクよりCData Sync をダウンロードします。 https://www.cdata.com/jp/sync/ なお、CData Sync はWindows版、Java版、AMI版と3種類存在しますので、実行環境に合ったものを選択ください。 f:id:sennanvolar44:20200503013133p:plain

ダウンロードしたインストーラーを実行します。基本的にデフォルトのまま次へと進んでしまって構いません。 f:id:sennanvolar44:20200507163952p:plain

次に30日の評価版をアクティベートします。
CData Sync にログイン後、情報タブより「30日の評価版をアクティベート」ボタンをクリックし、名前・Eメールを入力してアクティベートを行います。
f:id:sennanvolar44:20200507164906p:plain
以上でインストール & アクティベートが完了しました。

手順

ここからはSalesforceMySQL の連携と、biz-Stream でPDF出力する内容になります。

Salesforce から MySQL への連携

Salesforce への接続設定
まずは接続設定を行います。ヘッダーメニューの「接続」から接続画面を表示 → データソースタブから Salesforce アイコンをクリックし、以下の画面が表示されるのでSalesforce のアカウント情報を入力します。
セキュリティトークンの取得などはこちらを参照ください。

http://cdn.cdata.com/help/RFE/jp/jdbc/pg_connectionj.htm

f:id:sennanvolar44:20200503015228p:plain

MySQL への接続設定
こちらも同じように接続設定を行いますが、データソースタブではなく、同期先タブより MySQL のアイコンをクリックし、接続情報を入力します。 f:id:sennanvolar44:20200507171246p:plain

連携ジョブの作成
CData Sync のTOP画面にて「ジョブを追加」から以下の内容を選択して作成します。 f:id:sennanvolar44:20200507171449p:plain

前回に引き続きは Leadデータを使います。「テーブルを追加」から「Lead」を選択します。 f:id:sennanvolar44:20200507171722p:plain

連携ジョブを実行
ジョブを実行するには、作成したクエリにチェックを入れて実行ボタンをクリックします。正常に処理が終了すると、実行日時とレプリケートした件数が表示されます。 f:id:sennanvolar44:20200507171931p:plain

これで、MySQLSalesforceにあるLead情報をレプリケートすることができました。定期的に作成したジョブを実行したい場合は、スケジュールタブより設定することができます。

biz-Stream の設定 & PDF出力

今回使用する帳票レイアウトは、冒頭にご紹介したJDBC Driver を使った記事で使用したものになります。なので、見た目は変えずに、biz-Stream からのアクセス先だけを変更する内容になります。

MySQLJDBC Driver をダウンロード
https://downloads.mysql.com/archives/c-j/
f:id:sennanvolar44:20200507173231p:plain

jarファイルをコピー
解凍した中に「mysql-connector-java-X.X.XX.jar」がありますので、それをbiz-Stream にコピーします。
コピー先:C:\Program Files (x86)\brainsellers\biz-Stream レイアウト・デザイナ\lib_jdbc
f:id:sennanvolar44:20200507173400p:plain

データソースの設定
レイアウトデザイナーを起動し、リソース定義からMySQLへの接続設定を行います。
f:id:sennanvolar44:20200507174201p:plain

クエリ編集にて「Name、Company、Phone、Email」をセレクトするよう指定します。
f:id:sennanvolar44:20200507174453p:plain

ここでは、前回作成したデータソースに今回作成した分を追加してみます。
f:id:sennanvolar44:20200507175009p:plain

MySQLのデータをマッピング
ではMySQLのデータを前回作成したレイアウトにマッピングしていきます。
f:id:sennanvolar44:20200507175915p:plain

各項目に対して、MySQLのデータをセットして保存します。
f:id:sennanvolar44:20200507180351p:plain

では、実際にPDF出力したいと思いますが、現状では前回のデータと全く同じになるため、MySQLのデータを参照しているのかが不明ですので、MySQL WorkBenchからアクセスしてNameの一部分を以下のように変更しました。 f:id:sennanvolar44:20200507181213p:plain

PDF出力
作成したレイアウトを選択してプレビューボタンをクリックします。
f:id:sennanvolar44:20200507182128p:plain

ちゃんと名前のデータがMySQLで書き換えた内容で表示されています。
f:id:sennanvolar44:20200507182356p:plain

おわりに

いかがでしょうか。今回のようにクラウドサービスとデータベース間の連携は CData Sync に任せてしまい、biz-Stream は MySQL だけを参照するように設定することでより役割をはっきりすることができます。この構成であれば、ほかのデータソース(kintone やMarkto、Sansanなど)からMySQLにデータを集約することも容易にできます。 CData Sync は 30日間無料でご利用いただけますので、是非お試しください。

www.cdata.com