Heroku プラットフォームは、マルチクラウドアプリケーションプラットフォームである Salesforce Platform の一部ですちょっと分かりづらいかも知れませんね。簡単に言えば、Salesforce Platform は多数のツールとサービスが密に統合された 1 つのプラットフォームにまとめられているため、貴重なアプリケーションを構築できる、ということです。Heroku は、そのツールセットの一部です。優れたカスタマーエクスペリエンスを促進するカスタムアプリケーションを構築できます。
ご存知かもしれませんが、Lightning Platform では従業員向けアプリケーションを構築し、Salesforce CRM のカスタマイズと拡張を行うことができます。Heroku ではさらに、Java、Ruby、Python、PHP、JavaScript、Go などのオープンソース言語で顧客向けのピクセル単位まで完璧なアプリケーションを構築できます。
この記事では私個人の開発過程を記録するものとなります。heroku開発入門に関する以下内容が分かるようになります。
・Herokuアカウントの作成
・Heroku Connect
・Salesforce Connect
1.Herokuアカウントを取得
Heroku開発の下準備としてHerokuアカウントの取得が必要となります。
実際に公式ホームページに入って新規登録をクリックしましょう。
https://jp.heroku.com/free
必須項目を入力しましょう。
記入した自分のメールを確認しましょう。
メール内のアドレスをクリックしましょう。
パスワードを入力しましょう。
クリックして次へ進みましょう。
承認ボタンをクリックしましょう。
これで無事にアカウントの作成できました。
2.Heroku Connectの活用
このセクションでHerokuを使うアプリ開発する方法及びローカル環境での動作などを一通り紹介します。
2-1.Herokuでのアプリ作成
herokuを使うアプリ開発は色々ありますが、今回はjames wardさん開発したPhone changeを用いて開発を行います。herokuにログインした状態でdeployをクリックしましょう。
https://github.com/jamesward/heroku-connect-phone-change
アプリ名を決めてDeploy appをクリックしましょう。
アプリの環境は自動的に整えますので終わりましたらManage Appをクリックしましょう。
このように最初のアプリが作成できました。
Open appをクリックしましょう。
これがアプリの内容です。またsalesforceと連携してないので動作しません。
2-2.HerokuアプリにpostgresとHeroku Conectを加えよう
manage画面に戻ってResourcesタブをクリックしましょう。
Add onsの検索欄にpostを入力し「Heroku postgres」を選択しましょう。
Submit Order Rormをクリックしましょう。
これでpostgresqlがデータベースとしてセットされました。
次はHeroku Conectを加えよう
Heroku Conectをsalesforceと連携しましょう。
nextをクリックしましょう。
ログインしましょう。
データベースが無事に接続しました。
Mappingタブを開いてCreate Mappingをクリックしましょう。
Contactをクリックしましょう。
Phone,HomePhone,MobilePhone,LastName,FirstName,Emailにチェックしましょう。Databaseからsalesforceに書き込みできるよにチェックする
saveをクリックしましょう。
アプリのページに戻ってOpen appをクリックしましょう。
salesforceに実在する取引責任者を選んで更新してみましょう。
入力した通りに電話番号が書き換えました。
2-3.Herokuアプリのローカル環境を整えよう
まずはsamplephonechangetest1のActivityをクリックしましょう。
次は環境構築の情報を確認しましょう。
Herokuアプリを実行できるローカル環境を整えましょう。先ずはバージョンが一致するNode.jsをインストールしましょう。
https://nodejs.org/ja/download/releases/
pgもインストールしましょう。
npm install pg@4.5.7
次はHeroku toolbeltをインストールしましょう。
https://devcenter.heroku.com/articles/heroku-cli
最後はgitをインストールしましょう。
https://gitforwindows.org/
ダウンロードした後にインストールしましょう。
cmdを開いて確認しましょう。
heroku --version
node --version
git --version
2-4.ローカル環境でのアプリ実行
まずはCMDを使いログインしましょう。
heroku login
次はgitでphone changeアプリをローカルにクローンしましょう。
git clone https://github.com/jamesward/heroku-connect-phone-change 自分が決めた名前
publicフォルダのindex.htmlを開きましょう。
クローンしたフォルダに入りherokuでリモートにしましょう。
cd 自分が決めた名前
heroku git:remote -a 自分が決めた名前
npm update
herokuを開いてアプリのセットを開きましょう。
Reveal Config Varsをクリックしましょう。
この値をコピーして以下命令を実行しましょう。
SET DATABASE_URL=`heroku config:get DATABASE_URL`
次はPGSSLMODEの命令を実行しましょう。
SET PGSSLMODE=require
npm start
3.Salesforce Connectの活用
Salesforce Connect では、ユーザが Salesforce 組織外に保存されているデータを表示、検索、および変更できるようにすることで、システムの境界を越えてデータをシームレスに統合できます。このセクションでは外部データソースを作成して実践を行います。
3-1.Lightning Connect Quickstartをインストールしましょう。
まず、Lightning Connectを行うためのパッケージをインポートしましょう。
https://developerforce.github.io/lightning-connect-tutorial/install-schema-package.html
以下内容を選択してインストールしましょう。
Set Customer IDsをクリックしましょう。
最後は完了をクリックしましょう。
アプリケーションマネージャーでlightningにアップグレードしましょう。
3-2.外部データソースを作成
まず、salesforce組織にログインした後にホーム画面に入ります。
検索欄から検索して外部データソースを選択しましょう。新規外部データソースをクリックしましょう。
外部データソースの名前をOrderDB、種別をSalesforce Connect:O Data 2.0、URlはhttps://orderdb.herokuapp.com/orders.svc/とする。保存ボタンを押しましょう
検証して同期を押しましょう
今回同期するのがOrderDetailとOrder、同期を押しましょう
外部オブジェクトを選択して同期成功したかを確認しましょう。
外部オブジェクトを一つ選んで確認しましょう。外部オブジェクトは基本的に__xで終わる
3-3.外部オブジェクトがデータアクセス用のタブを作成
まず、ホームの検索欄にタブを検索してクリックしましょう。次は新規を押しましょう。
まずはOrderのタブを作成しましょう。
3-4.外部参照関係のリレーションを作成
まずはOrderDetailを開いて
次はorderIDを開いて編集をクリック
データ型の変更をクリック
外部参照関係を選択する
関連先はOrderに変更する
文字数を18とする
参照可能にチェックしましょう。
保存しましょう。
orderタブから参照関係を確認しましょう。
適当に開いて関連性が着いたかを確認しましょう。
3-4.外部オブジェクトと標準オブジェクトに間接参照関係を作成
まずは外部オブジェクトを開きましょう。Orderをひらいてレコードを編集
カスタム項目customerIDを編集する
間接参照関係を選択する
関連先を取引先と選択する
Customer_ID_cを選択する
参照可能にチェックしましょう。
Orderタブを開いて詳細ページで確認しましょう。