Lightning ConnectはSAPなどの外部データをコードを書かずに、かつSalesforce組織にコピーせずにアクセスできるようにしてくれる連携ツールです。Lightning Developer Weekで紹介されたチュートリアルサイトでわかりやすく勉強できるようになっています。
Module 1: Developer Editionアカウントの作成
チュートリアルではSalesforce Developer Editionのアカウント作成の方法から確認できます。既にアカウント作成済みならスキップして大丈夫です。
チュートリアル内で使用するカスタムオブジェクトなどを用意するためにパッケージのインストールを行ったりするので、それらの作業を行っても大丈夫な環境を用意してください。とのことです。
モジュール 2: Schemaパッケージのインストール
インストールすると『External Orders』というアプリケーションが作成されます。このアプリケーション内のカスタムオブジェクトなどを利用して進めていきます。
モジュール 3: 外部データソース及び外部オブジェクトの設定
このモジュールで、サンプルの注文データを含む外部のデータベースへ接続し、Salesforce内の外部オブジェクトで表示を行います。
ステップ 1: 外部データソースの設定
設定→開発→外部データソースのメニューを選択します。
新規ボタンから新しい設定を作成できます。今回のチュートリアルで必要な設定はこんな感じです。
チュートリアルに記載された注意事項です。
これはシンプルな読み込み専用のデータベースで認証がない場合の設定となります。実際の外部システムは認証が必要となるケースがほとんどですが、Lightning コネクトでは全てのデータソースへのアクセスに同じセットを利用するか、ユーザ毎に異なる認証を行うかを選択することができます。オンラインヘルプの'Identity Type'により詳しい情報があります。
実際の設定では認証のための設定が必要になりますが、今回のチュートリアルではそのあたりはスキップします。という感じだと思います。
上記設定が完了したら最後に検証して同期ボタンから同期するオブジェクトを設定します。
これで外部データソースの設定が完了し、Salesforce環境に任意のテーブル定義を読み込むことが可能になりました。
ステップ 2: 外部オブジェクトの設定を確認
外部オブジェクトの設定については設定→開発→外部オブジェクトから確認できます。
外部オブジェクトは通常のオブジェクトと違い、外部のデータを表示するだけなので、データストレージは気にする必要がありません。(たしか...)
チュートリアルで試した時点(Spring'15)では、作成や編集もできないようになっていますが、今後できるようになるという話だったと思います。
これが外部オブジェクトの設定画面です。
カスタムオブジェクトと外部オブジェクトの違いです。
- 外部オブジェクトのAPI名はサフィックスに __c の代わりに __x を持ちます。
- 外部オブジェクトは外部データソースへの参照を持っており、実際のテーブルはソース側にあります。
- 外部オブジェクトは別の標準項目を持っています。表示 URL はレコードの外部データベースのOData 2.0 URL を表しており、 外部 ID はレコードごとの主キーの値を表します。
外部オブジェクトがSalesforceの組織にコピーされずにアクセスできるメリットについても紹介されていました。
外部データはSaleforceにコピーされることは無いという点は重要です。Lightning コネクトは常に現在の外部データをリアルタイムに取得しに行きます。
通常のオブジェクトと同じような感じでタブなどからレコード情報を確認できます。
モジュール 4: 間接及び外部参照関係の設定
外部オブジェクトはただレコードに表示できるだけではなく、間接参照 / 外部参照の設定が可能になっています。これにより外部オブジェクト同士で参照関係を設定したり、標準オブジェクトやカスタムオブジェクトと参照関係を設定することができます。
ステップ 1: 外部参照関係の設定
外部オブジェクトにリンクするリレーションを設定したい場合は、データ型の外部参照関係で設定します。
設定の進め方は画面に記載されているとおりです。
項目レベルセキュリティも設定できます。
表示ラベルや追加するレイアウトも設定できます。
リレーションを設定すると関連リストで表示できます。
ステップ 2: 間接参照関係を設定する
続いて間接参照関係についてです。これは外部オブジェクトを標準オブジェクトに関連付けしたい場合に使用するデータ型です。
通常の参照関係とは異なり、特定のID値と一致するレコードと関連付けされます。
外部オブジェクト側のCustomerID項目値
標準オブジェクト側のCusotmerID項目値
少し特殊な感じですがリンク等は利用できるようになっています。この設定で標準オブジェクトやカスタムオブジェクトのレコードの関連リストに外部オブジェクトの情報を表示できます。
モジュール 5: 確認: Chatterを有効化しSalesforce1で注文を見る
外部オブジェクトは有効化の設定を行うことでChatter機能でも利用できます。有効化はChatter設定のフィード追跡で行います。項目の追跡はできませんが、フィード追跡の有効化は可能です。
これで外部オブジェクトでChatterが利用できます。
Chatterが有効化されたオブジェクトはSalesforce1の最近参照したレコードからアクセスできるようになります。
これでSalesforce1モバイルアプリで外部オブジェクトの情報にアクセスできます。
チュートリアル完了
以上がLightning Connectの基本的な設定方法です。Lightning Connectは有料のサービスですが、Developer Editionでは無料で試してみることができます。連携のための複雑なコードを実装することなく標準カスタマイズと同じように設定することができるので便利な連携ツールだと思います。