はじめに
Forguncy はグレープシティ社から提供されているExcel ライクな操作感でWeb アプリが開発できるツールです。絶妙なネーミングもあいまって人気のツールになっています。Excel 的なシートでセルの大きさや色、入力フィールなどのデザインができるほか、Excel のテンプレートをそのままインポートできる便利なツールです。リストと入力フォームを別につくりページ遷移なども簡単に制作できるのでガチのプログラマではなくても本格的なWeb アプリが開発できます。
Forguncy には外部データベースを扱う機能があり、ODBC データソースのデータをCRUD することが可能です。今回の記事では、CData ODBC Drivers のSalesforce をForguncy の外部データソースとして利用する方法をまとめました。CData ODBC Drivers は100以上のSaaS・DB の対応をしています。ほぼ同様の使い方でForguncy からCRUD 利用が可能になります。
環境と準備
Forguncy: https://www.forguncy.com/
CData ODBC Driver for Salesforce: https://www.cdata.com/jp/drivers/salesforce/odbc/
Salesforce 開発者アカウント取得:Salesforce Sales Cloud 開発者アカウント、および、セキュリティトークン取得方法 - Qiita
ODBC Driver for Salesforce の設定方法
まずは、CData website からCData ODBC Driver for Salesforceをダウンロードします。30日の無償版を使ってみましょう。
インストール実施後、DSN 設定画面が立ち上がります。
User: Salesforce のユーザーID です。
Password: Salesforce のパスワードです。
Security Token: Salesforce のSecurity token です。
Security Token の入手方法の詳細については、CData のヘルプを参照してください。
[テスト接続]を押して、問題が無ければ[OK]をクリックして、接続を確立します。
Forguncy のリンクテーブルとしてSalesforce に接続
Forguncy Builder で空のプロジェクトを作成します。
[データ]タブから、[リンクテーブルの作成]をクリックしてウィザードを開きます。
ウィザードで、ODBC を選択、ドロップダウンからすでに設定してある[CData Salesforce Syc]を選択します。
Salesforce のユーザー名とパスワードを入れて[テスト接続]し、接続を確認したら[OK]で閉じます。
次にテーブル選択画面で、Salesforce 内のどのオブジェクトを使うかを選択します。今回はLead (リード)テーブルを選択します。
主Key を選択します。
これでSalesforce のリードデータがリンクテーブルとしてForguncy 上で使えるようになりました。
Salesforce の取引先をCRUD するアプリをつくる
アプリ概要
今回は、Salesforce のリード情報をリスト表示して、CRUD 操作を行うアプリをつくります。 Create:フォーム画面で登録 Read:リスト表示 Update:リストで直接更新 Delete:リスト画面から削除
今回は、リスト画面からの操作を多用していますが(便利だから)、それぞれ別フォームやコマンド設定で操作が可能です。
リスト画面作成
Forguncy はExcel っぽいので、デザインが楽ですね。 まずはリストを表示するセルを範囲指定して、リスト作成ボタンをクリック。
それぞれの列に右ペインの[データ連結]でSalesforce リンクテーブルのカラムとバインドしていきます。今回は、ID、LastName、FirstName、Company、Title の4項目を設定します。
更新処理(削除、追加、更新)をリスト上から許容するためにリボンの該当箇所をチェック。
これでリスト画面はOK です。
登録フォームを作る
登録フォームもExcel ライクにセルをテキストボックスに変更してならべます。
あとは登録アクションのボタンを作ります。
アクションの中身を作り、Salesforce リードのどの項目に登録するかをマッピングします。
もどるボタンも一応つくりましたが、登録ボタン一発で登録→リストに戻るのアクションに。
ごく基本的ですが、これでSalesforce のリードをCRUD するアプリ完成。
動かしてみます
実行するとブラウザでリストが表示されました。
たしかにSalesforce のリード情報がリスト取得できています。
では、フォームに移動して、新しいリードを入力します。
入力したら登録ボタンをクリック
リストに新しく登録したレコードが反映されています。
たしかにSalesforce 側にも新しいリードが反映されています。
リスト画面からの削除、更新、登録も可能なのでためしてみてください。