SugarCRM でオブジェクトを使用する
SugarCRM を外部ストレージ システムとして使用して、 SugarCRM オブジェクト (たとえば、 リード) にマップされるオブジェクトを作成できます。 統合されると、Liferay オブジェクトのデータは SugarCRM にのみ保存されます。 どちらのシステムも、ユーザーがいずれかのコンテキストでエントリを追加、更新、または削除するたびに自動的に更新されます。
- この機能を使用するには、プロキシ オブジェクト (LPS-135430) 機能フラグを有効にします。
- アカウント制限は SugarCRM プロキシ オブジェクトでは機能しません。
SugarCRMの準備
SugarCRM では、Liferay との API 統合を構成するために OAuth キー を生成する必要があります。 その後、Liferay を SugarCRM に接続できます。
Liferay は OAuth2を使用します。 SugarCRM で OAuth キーを生成するときは、OAuth バージョン フィールドで OAuth 2.0 を選択します。
SugarCRMとLiferayを接続するための情報収集
アクセス トークンを取得し、OAuth パスワード付与を使用して SugarCRM インスタンスに接続するために Liferay が必要とする情報を収集します。
- インスタンスの ルート API エンドポイントへの URL
- OAuthトークンを取得するためのエンドポイントのURL
- 生成された OAuth キーのコンシューマー キー
- SugarCRM 管理ユーザーのユーザー名とパスワード
接続を確立した後、SugarCRM オブジェクトに関する情報を収集します。
SugarCRM オブジェクトに関する情報の収集
Liferay オブジェクトを作成する前に、SugarCRM オブジェクトに必要なフィールドがすべて含まれていることを確認してください。 Liferay オブジェクト フィールドとリンクする前に、不足しているフィールドを定義します。
さらに、SugarCRM API を使用してオブジェクトとそのフィールドを検査します。 Liferay オブジェクトを SugarCRM オブジェクトにマッピングするには、次の情報を取得する必要があります。
- REST APIへの認証されたリクエストを行うための OAuthトークン
- Liferayのオブジェクト定義外部参照コード(ERC)として使用するオブジェクト (SugarCRMではモジュールとして知られています)の GETエンドポイント
- オブジェクトのGET APIエンドポイントによって返される各フィールドの名前。Liferayオブジェクトの対応するフィールドのERCとして使用します。
Liferayインスタンスの設定
-
グローバル メニュー (
) を開き、 コントロール パネル タブに移動して、 インスタンス設定をクリックします。 -
サードパーティ をクリックし、 SugarCRM統合 エントリに移動します。
-
SugarCRM インスタンスから収集した詳細を構成フォームに入力します。
アクセストークン URL: インスタンスのルート API エンドポイントへの URL
ベースURL: OAuthトークンを取得するためのエンドポイントへのURL
クライアントID: OAuthキーのコンシューマーキー
許可タイプ:
パスワードパスワード: SugarCRM に認証できる適切な権限を持つユーザーのパスワード
ユーザー名: SugarCRM に認証できる適切な権限を持つユーザーのユーザー名

-
[保存]をクリックします。
SugarCRM ストレージタイプでオブジェクトを作成する
SugarCRM にデータを保存するためのプロキシ オブジェクトを作成するには、 通常のプロセスに従いますが、 SugarCRM ストレージ タイプを選択します。 これにより、オブジェクトが SugarCRM を外部ストレージ システムとして使用するように構成されます。

Liferay オブジェクト ドラフトを作成するときに、SugarCRM オブジェクトの REST エンドポイント リソース パスの最後の部分と一致するように ERC を編集します。 たとえば、エンドポイントが /Contactsで終わる場合、ERC として Contacts を使用する必要があります。
データの損失を防ぐために、SugarCRM オブジェクトのすべてのフィールドにオブジェクト フィールド を追加します。 各フィールドが SugarCRM オブジェクト内のフィールドに対応していることを確認します。 次に、各フィールドを編集し、目的の SugarCRM フィールドにリンクする外部参照コードを追加します。 各 ERC ごとに、対応するカスタム SugarCRM フィールドの名前を使用します (例: last_nameなど)。
各 Liferay オブジェクト フィールドの ERC が、対応するオブジェクトに対して SugarCRM REST API によって返されるフィールド名と一致していることを確認する必要があります。 たとえば、Liferay オブジェクトの First Name フィールドでは、次の理論上の SugarCRM オブジェクト JSON の first name にマッピングするために、ERC として first_name を使用する必要があります。
{
"name": "Lord Voldemort",
"first_name": "Tom",
"last_name": "Riddle",
"title": "Lord"
}

公開されると、Liferay オブジェクトのデータは SugarCRM にのみ保存されます。 関係のどちらかの側でユーザーがエントリを追加、更新、または削除するたびに、両方のシステムが自動的に更新されます。