Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerPremium
Siebel 用 Anypoint Connector は、Mule インテグレーションアプリケーションと Oracle Siebel カスタマーリレーションシップマネージャー (CRM) との接続を実現します。
リリースノート: Siebel Connector リリースノート
Siebel Connector は 3 つの個別モジュールで構成されており、それぞれのモジュールに Siebel アプリケーションを接続するための異なるオプションが用意されています。
Oracle Siebel ビジネスオブジェクト: Siebel ビジネスコンポーネントを作成、更新、アップサート、クエリおよび削除します。
Oracle Siebel インテグレーションオブジェクト: Siebel インテグレーションオブジェクトを作成、更新、アップサート、クエリ、削除、ページクエリ、実行、および同期します。
Oracle Siebel ビジネスサービス: Siebel ビジネスサービスを実行します。
各オプションは、対応する Siebel Connector のインストール後に利用可能になります。 Siebel Connector は、Siebel Java Data Beans インターフェースを使用して構築されています。Java Data Beans は、Siebel オブジェクトマネージャーにアクセスするためのネイティブ Java インターフェースを提供します。 Siebel オブジェクトマネージャーにより、コネクタは、カスタムインストールに依存しない汎用インターフェースを使用できます。Siebel オブジェクトのメタデータをデザイン時に発見するには、Anypoint Studio で DataSense を使用します。Siebel Connector は、Siebel リポジトリを利用して、利用可能なオブジェクトのリストと構造を Siebel カスタムインストールで表示します。 オブジェクトは、インストールしたコネクタ種別に基づいて、ビジネスコンポーネント、ビジネスオブジェクト、インテグレーションオブジェクト、またはビジネスサービスのいずれかになります。
コネクタは Siebel CRM と密接に結合されているため、このドキュメントでは読者が Siebel ビジネスコンポーネント、ビジネスオブジェクト、ビジネスサービス、およびインテグレーションオブジェクトに精通していることを前提としています。 このドキュメントでは、読者が Mule、Anypoint Connector、Anypoint Studio の基礎、Mule フローの要素、グローバル要素に精通していることも前提としています。
このドキュメントでは、Anypoint Studio のコンテキスト内の実装例、Mule のグラフィカルユーザーインターフェースについて説明します。並行して、XML エディターで同じことを行う設定の詳細が含まれています。
Siebel Connector では、Siebel.jar と SiebelJI_xxx.jar の 2 つの Siebel JAR ファイルが必要です。
SiebelJI_xxx.jar は、Siebel インストールのロケールに従って選択してください。たとえば、Siebel インストールのロケールが US_EN である場合は SiebelJI_enu.jar を使用します。
Siebel.jar と SiebelJI_enu.jar は、Siebel サーバーの %SIEBEL_HOME%\8.1\Tools_1\CLASSES フォルダーにあります。 %SIEBEL_HOME% は Siebel のインストールディレクトリです。
Siebel グローバル要素の設定中に JAR ファイルを Studio プロジェクトに追加できます。
| アプリケーション/サービス | バージョン |
|---|---|
Mule Runtime |
3.6.1 以上 |
Siebel |
v8.1 |
Siebel v3.x Connector は、Oracle Siebel 8.1 と IP2016.17 を使用して構築およびテストされています。Java Data Bean インターフェースは汎用であるため、Siebel v3.x Connector は Siebel バージョン 7.7、7.8、8.0 と連携します。ただし、8.1 と IP2016.17 以外のバージョンでのコネクタの互換性についてはテストされていません。このコネクタは Siebel v7.5 以下とは互換性がありません。
Anypoint Studio で、Studio タスクバーの Exchange アイコンをクリックします。
Anypoint Exchange で [Login (ログイン)] をクリックします。
コネクタを検索して [Install (インストール)] をクリックします。
画面の指示に従ってコネクタをインストールします。
Studio の更新がある場合、右下隅にメッセージが表示されます。メッセージをクリックすると、更新をインストールできます。
インストールする Siebel Connector を選択する必要があります (Oracle Siebel ビジネスオブジェクト、Oracle Siebel ビジネスサービス、Oracle Siebel インテグレーションオブジェクトの中から選択)。各 Siebel Connector は個別にインストールされます。
Siebel Connector を本番環境で使用するには、Mule を使用するための Enterprise ライセンス、または CloudHub Starter、Professional、または Enterprise アカウントが必要です。
いずれかのライセンスを手配するには、MuleSoft 営業チームにお問い合わせください。「Enterprise ライセンスのインストール」も参照してください。 Studio でインストールした Siebel Connector がパレットに表示されます。
表示されるコネクタは次のとおりです。
Oracle Siebel ビジネスオブジェクト: ビジネスロジックを定義してテーブルデータをカプセル化する Siebel ビジネスオブジェクトおよびコンポーネントに接続します。
Oracle Siebel ビジネスサービス: Siebel ビジネスサービスに接続して特定のビジネス機能またはタスクを実行します。
Oracle Siebel インテグレーションオブジェクト: Siebel インテグレーションオブジェクトに接続し、ビジネスコンポーネントの動的かつ階層的な構造を提供します。
利用可能な Siebel Connector は 3 つあります (Oracle Siebel Business Objects Connector、Siebel Business Services Connector、Siebel Integration Objects Connector)。
いずれかのコネクタをインストールすることを選択した場合、以前のバージョンのコネクタをアンインストールして新しいバージョンのコネクタをインストールするよう要求する画面が表示されます。
インストールが完了したら、インストールした Siebel Connector で利用可能な操作を使用できます。他の操作を使用するには、残りの Siebel Connector をインストールする必要があります。
Mule アプリケーションプロジェクトで Siebel Connector を使用する手順は、次のとおりです。
Studio で、[File (ファイル)] > [New (新規)] > [Mule Project (Mule プロジェクト)] を選択します。
新しいプロジェクトの名前を入力し、残りのオプションをデフォルト値のままにします。
Git を使用する場合、プロジェクトの [Create a .gitignore file (.gitignore ファイルを作成)] チェックボックスをオンにして Studio プロジェクトのデフォルトの gitignore ファイルを作成し、[Next (次へ)] をクリックします。
[Finish (完了)] をクリックして、プロジェクトを作成します。
Mule アプリケーションで Siebel Connector を使用するには、使用する Siebel Connector 用にグローバル要素を設定します。
ビジネスオブジェクト
ビジネスサービス
インテグレーションオブジェクト
Mule アプリケーションで Siebel Connector のグローバル要素を設定する手順は、次のとおりです。
キャンバスの下部にある [Global Elements (グローバル要素)] タブをクリックします。
[Global Mule Configuration Elements (グローバル Mule 設定要素)] 画面で、[Create (作成)] をクリックします。
[Choose Global Type (グローバル種別の選択)] ウィザードで、[Connector Configuration (コネクタ設定)] を展開し、Oracle Siebel ビジネスオブジェクト、Oracle Siebel ビジネスサービス、Oracle Siebel インテグレーションオブジェクトの中から設定するコネクタを選択します。
[OK] をクリックします。
グローバル要素のプロパティを入力します。
Oracle Siebel Business Objects Connector の場合:
| 項目 | 説明 | ||
|---|---|---|---|
RSA Encryption (RSA 暗号化) |
RSA 暗号化を使用する場合に選択します。 |
||
Name (名前) |
後から参照するためにコネクタの名前を入力します。 |
||
ユーザー |
使用する Siebel ユーザー名を入力します。 |
||
Password (パスワード) |
対応する Siebel パスワードを入力します。 |
||
サーバー |
Siebel インスタンスのサーバー IP アドレスを入力します。 |
||
Port (ポート) |
ポート番号を入力します。 |
||
Server Name (サーバー名) |
Siebel Enterprise のサーバー名を入力します。 |
||
Object Manager (オブジェクトマネージャー) |
Siebel インスタンスのオブジェクトマネージャーの値を入力します。デフォルト値は EAIObjMgr_enu です。 |
||
Language (言語) |
Siebel インスタンスのロケールに対応した言語を入力します。 |
||
Encoding (エンコード) |
Siebel サーバーでサポートされるエンコード種別を入力します。 |
||
Enable DataSense (DataSense の有効化) |
このオプションはデフォルトでオンになっています。このオプションを無効にするには、チェックボックスをクリックしてオフにします。 |
||
DataSense Filters Business Components (DataSense 検索条件ビジネスコンポーネント): |
(下記の 2 つの項目、Default View Mode (デフォルトのビューモード) と DataSense Filter Query (DataSense 検索条件クエリ) で構成されています) |
||
Default View Mode (デフォルトのビューモード) |
DataSense のデフォルトビューを入力します。この項目のデフォルト値は 3 です。 サポートされる値:
|
||
DataSense Filter Query (DataSense 検索条件クエリ) |
この項目は、アプリケーションにダウンロードされるビジネスコンポーネントのメタデータに絞り込むためのクエリを作成する場合に使用します。
|
||
DataSense Filters Business Objects (DataSense 検索条件ビジネスオブジェクト): |
(下記の 2 つの項目、Default View Mode (デフォルトのビューモード) と DataSense Filter Query (DataSense 検索条件クエリ) で構成されています) |
||
Default View Mode (デフォルトのビューモード) |
ビジネスコンポーネントの表示種別を設定するために使用します。サポートされる値:
|
||
DataSense Filter Query (DataSense 検索条件クエリ) |
この項目は、アプリケーションにダウンロードされるビジネスオブジェクトのメタデータに絞り込むためのクエリを作成する場合に使用します。
|
||
Required Dependencies (必要な連動関係) |
[Add File (ファイルを追加)] をクリックして必要な JAR ファイルを参照してプロジェクトの Build パスに添付します。
JAR ファイルが添付されると、プロジェクトのルートフォルダーの
間違ったファイル (無効な .jar またはまったく異なるライブラリ) を指定すると、Studio に次のエラーメッセージが表示されます。
|
Siebel Business Services Connector の場合:
| 項目 | 説明 | ||
|---|---|---|---|
RSA Encryption (RSA 暗号化) |
RSA 暗号化を使用する場合に選択します。 |
||
Name (名前) |
後から参照するためにコネクタの名前を入力します。 |
||
ユーザー |
この設定に使用する Siebel ユーザー名を入力します。 |
||
Password (パスワード) |
対応する Siebel パスワードを入力します。 |
||
サーバー |
Siebel インスタンスのサーバー IP アドレスを入力します。 |
||
Port (ポート) |
ポート番号を入力します。 |
||
Server Name (サーバー名) |
Siebel Enterprise のサーバー名を入力します。 |
||
Object Manager (オブジェクトマネージャー) |
Siebel インスタンスのオブジェクトマネージャーの値を入力します。デフォルトは EAIObjMgr_enu です。 |
||
Language (言語) |
Siebel インスタンスのロケールに対応した言語を入力します。 |
||
Encoding (エンコード) |
Siebel サーバーでサポートされるエンコード種別を入力します。 |
||
Enable DataSense (DataSense の有効化) |
このオプションはデフォルトでオンになっています。このオプションを無効にするには、ボックスをクリックしてオフにします。 |
||
Default View Mode (デフォルトのビューモード) |
デフォルトのビューモードは 3 です。ビジネスサービスの表示種別を設定するために使用します。 サポートされる値:
|
||
DataSense Filter Query (DataSense 検索条件クエリ) |
この項目は、アプリケーションにダウンロードされるビジネスサービスのメタデータに絞り込むためのクエリを作成する場合に使用します。
|
||
Required Dependencies (必要な連動関係) |
[Add File (ファイルを追加)] をクリックして必要な JAR ファイルをプロジェクトの Build パスに添付します。
JAR ファイルが添付されると、プロジェクトのルートフォルダーの
間違ったファイル (無効な JAR ファイルまたはまったく異なるライブラリ) を指定すると、Studio に次のエラーメッセージが表示されます。
|
Siebel Integration Objects Connector の場合:
| 項目 | 説明 | ||
|---|---|---|---|
RSA Encryption (RSA 暗号化) |
RSA 暗号化を使用する場合に選択します。 |
||
Name (名前) |
後から参照するためにコネクタの名前を入力します。 |
||
ユーザー |
この設定に使用する Siebel ユーザー名を入力します。 |
||
Password (パスワード) |
対応する Siebel パスワードを入力します。 |
||
サーバー |
Siebel インスタンスのサーバー IP アドレスを入力します。 |
||
Port (ポート) |
ポート番号を入力します。 |
||
Server Name (サーバー名) |
Siebel Enterprise のサーバー名を入力します。 |
||
Object Manager (オブジェクトマネージャー) |
Siebel インスタンスのオブジェクトマネージャーの値を入力します。デフォルトは EAIObjMgr_enu です。 |
||
Language (言語) |
Siebel インスタンスのロケールに対応した言語を入力します。 |
||
Encoding (エンコード) |
Siebel サーバーでサポートされるエンコード種別を入力します。 |
||
Enable DataSense (DataSense の有効化) |
このオプションはデフォルトでオンになっています。このオプションを無効にするには、ボックスをクリックしてオフにします。 |
||
Default View Mode (デフォルトのビューモード) |
この項目のデフォルト値は 3 です。インテグレーションオブジェクトの表示種別を設定するために使用します。 サポートされる値:
|
||
DataSense Filter Query (DataSense 検索条件クエリ) |
この項目は、アプリケーションにダウンロードされるインテグレーションオブジェクトのメタデータに絞り込むためのクエリを作成する場合に使用します。
|
||
DataSense Flat Fields (DataSense フラット項目) |
このボックスをオンにすると、Studio で DataSense 用にオブジェクトをフラット化できます。
|
||
Required Dependencies (必要な連動関係) |
[Add File (ファイルを追加)] をクリックして必要な JAR ファイルをプロジェクトの Build パスに添付します。
|
[Pooling Profile (プーリングプロファイル)] タブと [Reconnection (再接続)] タブは、デフォルトエントリのままにします。
[Test Connection (接続をテスト)] をクリックして、グローバル Siebel Connector のパラメーターが正確であることと、Mule が Siebel のインスタンスに正常に接続できることを確認します。詳細は、「Testing Connections (接続のテスト)」を参照してください。
[OK] をクリックして、グローバルコネクタ設定を保存します。
Siebel Connector は操作ベースであるため、フローにコネクタを追加する際には、実行する操作を指定する必要があります。
それぞれの Siebel Connector で受け入れるデータ型と返されるデータ型については、下記の最新バージョンのテクニカルリファレンスドキュメントを参照してください。
Siebel Connector の一般的なユースケースを紹介します。
新しいレジストリがないか定期的に Siebel Connector をポーリングし、出力を Salesforce に送信する。
新しいレジストリがないか定期的に Salesforce Connector をポーリングし、出力を Siebel に送信する。
Anypoint Studio で新しい Mule プロジェクトを作成します。
フローを開始するための適切な Mule インバウンドエンドポイント (HTTP リスナーやファイルエンドポイントなど) を追加します。
Siebel Business Objects Connector をキャンバスにドラッグし、それを選択してプロパティエディターを開きます。
Business Objects Connector をキャンバスにドラッグし、それを選択してプロパティエディターを開きます。
コネクタのパラメーターを設定します。
| 項目 | 説明 | ||
|---|---|---|---|
Display Name (表示名) |
コネクタの一意の表示ラベルを入力します。 |
||
Connector Configuration (コネクタ設定) |
ドロップダウンからグローバル Siebel Connector 要素を選択します。 |
||
General |
|
||
Sort Specification (並び替え仕様) |
クエリで返されるビジネスコンポーネントのリストの並び替え条件を指定します。 |
||
Business Object Component Type (ビジネスオブジェクトコンポーネント種別) |
アクションを実行する Siebel ビジネスオブジェクトの種別を定義します。Siebel Jdb Connector は、Siebel CRM で利用可能な多数のビジネスオブジェクトのいずれにもアクセスできます。 |
||
Search Expression (検索式) |
Mule Expression Language (MEL) を使用して、ビジネスコンポーネントのリストを返す検索式を定義します。 |
||
View Mode (ビューモード) |
コネクタによって返される結果の Siebel ビューモードを定義します。 |
||
FieldstoRetrieve |
このセクションを使用して、クエリで取得する項目のリストを指定します。 From Message (メッセージから): 受信ペイロードで指定するビジネスコンポーネント項目を指定します。 Create Object manually (オブジェクトを手動で作成): オブジェクトビルダーエディターを使用して項目を手動で指定します。 |
||
Search Spec (検索指定) |
検索クエリで検索条件として使用する検索値を指定します。 From Message (メッセージから): 受信ペイロードで検索条件として使用する値を定義します。 Create Object manually (オブジェクトを手動で作成): オブジェクトビルダーエディターを使用して検索条件として使用する値を定義します。 |
||
Generic |
|||
操作 |
このコンポーネントで実行する必要があるアクションを定義します: 作成、削除、更新、更新/挿入、またはビジネスコンポーネントのクエリ。 |
Anypoint Studio で新しい Mule プロジェクトを作成します。
フローを開始するための適切な Mule インバウンドエンドポイント (HTTP リスナーやファイルエンドポイントなど) を追加します。
Siebel Business Services Connector をキャンバスにドラッグし、それを選択してプロパティエディターを開きます。
Business Services Connector をキャンバスにドラッグし、それを選択してプロパティエディターを開きます。
コネクタのパラメーターを設定します。
| 項目 | 説明 |
|---|---|
Display Name (表示名) |
コネクタの一意の表示ラベルを入力します。 |
Connector Configuration (コネクタ設定) |
ドロップダウンからグローバル Siebel Connector 要素を選択します。 |
操作 |
このコンポーネントで実行する必要があるアクションを定義します: Execute: SiebelPropertySets を使用して Siebel サービスを実行します。 Execute business service: SiebelPropertySet ではなくマップを使用して Siebel サービスを実行します。 |
General |
Execute 操作を選択した場合:
Integration Object (インテグレーションオブジェクト) |
アクションを実行する Siebel インテグレーションオブジェクトの種別を定義します。 |
Method Name (メソッド名) |
実行するメソッドの名前を入力します。 |
ServiceName |
実行する Siebel サービスの名前を入力します。 |
Input Properties (入力プロパティ) |
From Message (メッセージから): 受信ペイロードで SiebelPropertySet を定義します。 Create Object manually (オブジェクトを手動で作成): 手動で SiebelPropertySet を定義します。 |
Execute business service 操作を選択した場合:
Business Service (ビジネスサービス) |
アクションを実行する Siebel インテグレーションオブジェクトの種別を定義します。 |
入力 |
From Message (メッセージから): 受信ペイロードで実行するサービスを指定します。 Create Object manually (オブジェクトを手動で作成): 手動で実行するサービスを指定します。 |
Anypoint Studio で新しい Mule プロジェクトを作成します。
フローを開始するための適切な Mule インバウンドエンドポイント (HTTP リスナーやファイルエンドポイントなど) を追加します。
Siebel Integration Objects Connector をキャンバスにドラッグし、それを選択してプロパティエディターを開きます。
コネクタのパラメーターを設定します。
| 項目 | 説明 |
|---|---|
Display Name (表示名) |
コネクタの一意の表示ラベルを入力します。 |
Connector Configuration (コネクタ設定) |
ドロップダウンからグローバル Siebel Connector 要素を選択します。 |
操作 |
このコンポーネントで実行する必要があるアクションを定義します: Execute Siebel Adapter。 |
General |
|
Integration Object (インテグレーションオブジェクト) |
アクションを実行する Siebel インテグレーションオブジェクトの種別を定義します。 |
Method (メソッド) |
EAI Siebel アダプターメソッドを定義します。 |
Input Properties (入力プロパティ) |
このセクションを使用して、クエリで取得する項目のリストを指定します。 From Message (メッセージから): 受信ペイロードからのインテグレーションオブジェクト項目をマップします。 Create Object manually (オブジェクトを手動で作成): オブジェクトビルダーエディターを使用してインテグレーションオブジェクト項目を手動でマップします。 |
キャンバス上の空白スペースをクリックして、コネクタ設定を保存します。
定期的に Siebel Connector をポーリングして新しいレジストリを探し、出力を Salesforce に送信します。
| DataMapper 要素と DataWeave 要素は多くの場合、交換可能です。必要な変換を実現するには、多少の調整を行う必要があります。適切なドキュメントを参照してください。 |
これらの Mule 要素についての詳細は、[Poll Scope (ポーリングスコープ)]、DataMapper、または DataWeave、および Salesforce Connector に関するドキュメントを参照してください。
Anypoint Studio で Mule プロジェクトを作成します。
[Poll Scope (ポーリングスコープ)] を新しいフローにドラッグします。
Poll Reference によって、内部に配置した Mule 要素が定期的な間隔で実行されます。この場合は Siebel エンドポイントです。
次のように [Poll Scope (ポーリングスコープ)] を設定します。
| 属性 | Value (値) |
|---|---|
Frequency (頻度) |
60000 |
Start Delay (開始遅延) |
0 |
Time Unit (時間単位) |
MILLISECONDS (ミリ秒) |
Enable Watermark (ウォーターマークの有効化) |
オン |
Variable Name (変数名) |
lastUpdate |
Default Expression (デフォルトの式) |
|
Update Expression (更新式) |
|
このポーリングスコープは 1 分に 1 回トリガーされます。ウォーターマークのおかげで、Siebel DB 内のレジストリが複数回処理されることはありません。これは、最後のポーリングで処理される最後の要素を追跡することで実現されます。
| ウォーターマークの動作と各属性の目的を確認するには、ポーリングスケジューラーに関する記事をご覧ください。 |
Oracle Siebel Business Objects Connector を、[Poll Scope (ポーリングスコープ)] によって提供された領域にドラッグします。
Siebel Connector は、[Poll Scope (ポーリングスコープ)] で指定した間隔でポーリングされます。
Siebel Connector のプロパティエディターを開き、[Config Reference (設定リファレンス)] 項目の横で、プラス記号をクリックして新しいグローバル要素を追加します。
[Global Element Properties (グローバル要素プロパティ)] ウィンドウで、下記の設定に従ってグローバル要素を設定します。
| 属性 | Value (値) |
|---|---|
Name (名前) |
Oracle_Siebel_Business_Object |
ユーザー |
Siebel ユーザー名 |
Password (パスワード) |
Siebel パスワード |
Port (ポート) |
使用しているポート |
Server Name (サーバー名) |
Siebel インスタンスがホストされているサーバー名 |
Object Manager (オブジェクトマネージャー) |
使用するオブジェクトマネージャー |
Default View Mode (デフォルトのビューモード) |
3 |
DataSense Filter Query (DataSense 検索条件クエリ) |
|
Default View Mode (デフォルトのビューモード) |
3 |
DataSense Filter Query (DataSense 検索条件クエリ) |
|
| DataSense は取引先責任者およびアクションからのみデータを抽出するクエリを使用して絞り込まれます。これにより、不要なデータが抽出されなくなり、パフォーマンスが改善されます。 |
すべてが正しく設定されていることを確認するには、ウィンドウ下部の [Test Connection (接続をテスト)] をクリックします。
次に、下記の設定に従って Oracle Siebel Business Objects Connector を設定します。
| 属性 | Value (値) |
|---|---|
Display Name (表示名) |
Oracle Siebel ビジネスオブジェクト |
Connector Configuration (コネクタ設定) |
Oracle_Siebel_Business_Object |
Business Object Component Type (ビジネスオブジェクトコンポーネント種別) |
Contact.Contact |
Search Expression (検索式) |
|
View Mode (ビューモード) |
3 |
fields-to-retrieve |
Create Object Manually (オブジェクトを手動で作成) |
search-spec |
なし |
操作 |
Query business components |
注意: この検索式では、[Poll Scope (ポーリングスコープ)] によって更新される同じ変数を使用します。これにより、Siebel Connector で Mule が最後のポーリングで処理していない DB レコードのみが返されます。
| 子要素 | 説明 |
|---|---|
siebel:fields-to-retrieve |
クエリの出力項目をリストします。 |
出力メッセージの構造をセットアップするには、ビューを Studio XML エディターに切り替えます。XML コードの下記のタグに似たタグ内で Siebel Connector を探します。
<siebel:query-business-components config-ref="Oracle_Siebel_Business_Object"
businessObjectComponentType="Contact.Contact"
searchExpression="[Last Update - SDQ] > '#[flowVars.lastUpdate]'"
doc:name="oracle siebel business objects">
</siebel:query-business-components>
siebel:query-business-components の開始タグと終了タグの間に、次の子要素構造を追加します。
<siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Last Name</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Email Address</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>First Name</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Primary Organization</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Personal Contact</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Employee Number</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Account Integration Id</siebel:fields-to-retrieve>
</siebel:fields-to-retrieve>
[Logger (ロガー)] を [Poll (ポーリング)] の後にドラッグして [Poll (ポーリング)] の出力を登録します。
| 属性 | Value (値) |
|---|---|
Message (メッセージ) |
|
Level (レベル) |
Info (情報) |
Salesforce Connector を [Logger (ロガー)] の後にドラッグします。ポーリングの出力が Salesforce アカウントにアップロードされます。
Salesforce Connector のプロパティエディターを開き、プラス記号をクリックして新しい Salesforce グローバル要素を追加します。
[Choose Global Type (グローバル種別を選択)] ウィンドウで、[Salesforce: Basic authentication (Salesforce: 基本認証)] をクリックして [OK] をクリックします。
Salesforce グローバル要素のプロパティを設定します。
| 属性 | Value (値) |
|---|---|
Name (名前) |
Salesforce |
Username (ユーザー名) |
ユーザー名 |
Password (パスワード) |
パスワード |
Security Token (セキュリティトークン) |
トークン |
Url |
Salesforce アカウントがホストされている URL |
Proxy Port (プロキシポート) |
80 |
Enable DataSense (DataSense の有効化) |
オン |
[Test Connection (接続をテスト)] をクリックしてすべてが正しく設定されていることを確認します。
下記の設定に従って Salesforce Connector を設定します。
| 属性 | Value (値) |
|---|---|
Display Name (表示名) |
Salesforce |
Connector Configuration (コネクタ設定) |
Salesforce |
操作 |
Create (作成) |
sObject Type (sObject 型) |
取引先責任者 |
sObjects |
|
[Logger (ロガー)] と Salesforce Connector の間に DataWeave 要素を追加します。Siebel によって返されるデータ構造から Salesforce で必要となるデータ構造に項目がマップされます。
DataWeave 要素を次のように設定します。
| すでに両方のコネクタを適切に設定している場合、DataWeave で自動的に Siebel が出力として与えている内容と Salesforce が入力として取得している内容が表示されます。 |
入力:
| 属性 | Value (値) |
|---|---|
型 |
Connector (コネクタ) |
Connector (コネクタ) |
Oracle_Siebel_Business_Object |
操作 |
query-business-components |
Object (オブジェクト) |
|
出力:
| 属性 | Value (値) |
|---|---|
型 |
Connector (コネクタ) |
Connector (コネクタ) |
Salesforce |
操作 |
create (作成) |
Object (オブジェクト) |
|
フローの最後に [Logger (ロガー)] を追加し、操作の出力を登録します。
| 属性 | Value (値) |
|---|---|
Message (メッセージ) |
|
Level (レベル) |
Info (情報) |
プロジェクトを保存し、Mule アプリケーションとして実行します。
Mule アプリケーションで Siebel Connector を使用するには、使用する Siebel Connector 用にグローバル要素を設定します。
ビジネスオブジェクト
ビジネスサービス
インテグレーションオブジェクト
プロジェクトの開始時に、Salesforce グローバル要素を追加してこのコネクタのグローバル設定属性をセットアップします。
<sfdc:config name="Salesforce" username="${salesforce.user}"
password="${salesforce.password}" securityToken="${salesforce.securitytoken}"
url="${salesforce.url}" doc:name="Salesforce">
<sfdc:connection-pooling-profile initialisationPolicy="INITIALISE_ONE"
exhaustedAction="WHEN_EXHAUSTED_GROW"/>
</sfdc:config>
| 要素 | 説明 |
|---|---|
sfdc:config |
Salesforce の接続設定を定義します。 |
| 属性 | Value (値) |
|---|---|
name (名前) |
Salesforce |
username (ユーザー名) |
ユーザー名 |
password (パスワード) |
パスワード |
security token (セキュリティトークン) |
セキュリティトークン |
url (URL) |
Salesforce アカウントがホストされている URL |
doc:name |
Salesforce |
| 子要素 | 説明 |
|---|---|
sfdc:connection-pooling-profile |
Salesforce に接続するための接続プーリング設定を定義します。 |
| 属性 | Value (値) |
|---|---|
initialisationPolicy |
INITIALISE_ONE |
exhaustedAction |
WHEN_EXHAUSTED_GROW |
Salesforce グローバル要素の後に、Siebel グローバル要素を追加してこのコネクタのグローバル設定属性をセットアップします。
<siebel:config name="Oracle_Siebel_Business_Object" user="${siebel.user}"
password="${siebel.password}" server="${siebel.server}"
serverName="${siebel.servername}" objectManager="${siebel.mgr}"
dataSenseFilterQueryBusComp="[Name] = 'Action_IO' OR [Name] = 'Contact_IO'"
dataSenseFilterQueryBusObjects="[Name] = 'Action_IO' OR [Name] = 'Contact_IO'" doc:name="oracle siebel business objects">
<siebel:connection-pooling-profile initialisationPolicy="INITIALISE_ONE" exhaustedAction="WHEN_EXHAUSTED_GROW"/>
</siebel:config>
| 要素 | 説明 |
|---|---|
siebel:config |
Siebel の接続設定を定義します。 |
| 属性 | Value (値) |
|---|---|
name (名前) |
Oracle_Siebel_Business_Object |
user (ユーザー) |
ユーザー名 |
password (パスワード) |
パスワード |
server (サーバー) |
Siebel サーバーの IP アドレス |
serverName |
Siebel Enterprise のサーバー名 |
objectManager |
使用するオブジェクトマネージャー |
dataSenseFilterQueryBusComp |
|
dataSenseFilterQueryBusObjects |
|
doc:name |
oracle siebel business objects |
| 子要素 | 説明 |
|---|---|
siebel:connection-pooling-profile |
Siebel に接続するための接続プーリング設定を定義します。 |
| 属性 | Value (値) |
|---|---|
initialisationPolicy |
INITIALISE_ONE |
exhaustedAction |
WHEN_EXHAUSTED_GROW |
新しいフローを作成します。
<flow name="Poll_Siebel_2_Salesforce" doc:name="Poll_Siebel_2_Salesforce" processingStrategy="synchronous">
</flow>
新しいフロー内に [Poll Scope (ポーリングスコープ)] を追加します。
<poll doc:name="Poll">
<fixed-frequency-scheduler frequency="60000"/>
<watermark variable="lastUpdate"
default-expression="#[new org.joda.time.DateTime().withZone(org.joda.time.DateTimeZone.forID("PST8PDT")).minusSeconds(5).toString("MM/dd/yyyy HH:mm:ss")]" update-expression="#[new org.joda.time.DateTime().withZone(org.joda.time.DateTimeZone.forID("PST8PDT")).minusSeconds(5).toString("MM/dd/yyyy HH:mm:ss")]"/>
</poll>
| 要素 | 説明 |
|---|---|
poll (ポーリング) |
[Poll Scope (ポーリングスコープ)] によって、内部に配置した Mule 要素が定期的な間隔で実行されます。この場合は Siebel エンドポイントです。 |
| 子要素 | 説明 |
|---|---|
fixed-frequency-scheduler |
ポーリングの間隔を設定します。 |
| 属性 | Value (値) |
|---|---|
frequency (頻度) |
6000 |
このポーリングスコープは 1 分に 1 回トリガーされます。ウォーターマークのおかげで、Siebel DB 内のレジストリが複数回処理されることはありません。これは、最後のポーリングで処理される最後の要素を追跡することで実現されます。
| 子要素 | 説明 |
|---|---|
ウォーターマーク |
ウォーターマークのおかげで、最後のポーリングで処理される最後の要素を追跡することにより、Siebel DB 内のレジストリが複数回処理されることはありません。 |
| ウォーターマークの動作と各属性の目的を確認するには、ポーリングスケジューラーに関する記事をご覧ください。 |
| 属性 | Value (値) |
|---|---|
variable (変数) |
lastUpdate |
default-expression |
|
update-expression |
|
この [Poll Scope (ポーリングスコープ)] 内に、Siebel:query-business-components 要素を追加します。
<siebel:query-business-components config-ref="Oracle_Siebel_Business_Object" businessObjectComponentType="Contact.Contact" searchExpression="[Last Update - SDQ] > '#[flowVars.lastUpdate]'" doc:name="oracle siebel business objects">
<siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Last Name</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Email Address</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>First Name</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Primary Organization</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Personal Contact</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Employee Number</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Account Integration Id</siebel:fields-to-retrieve>
</siebel:fields-to-retrieve>
</siebel:query-business-components>
Siebel Connector は、[Poll Scope (ポーリングスコープ)] で指定した間隔でポーリングします。
| 要素 | 説明 |
|---|---|
siebel:query-business-components |
Siebel ビジネスコンポーネントに接続します。 |
| 属性 | Value (値) |
|---|---|
config-ref |
Oracle_Siebel_Business_Object |
businessObjectComponentType |
Contact.Contact |
searchExpression |
|
doc:name |
oracle siebel business objects |
| 子要素 | 説明 |
|---|---|
siebel:fields-to-retrieve |
クエリの出力項目をリストします。 |
[Poll Scope (ポーリングスコープ)] の後に、[Logger (ロガー)] を追加してこのポーリングの出力を確認します。
<logger message="Polling from Siebel #[payload]" level="INFO" doc:name="Logger"/>
| 要素 | 説明 |
|---|---|
Logger |
メッセージを Mule コンソールにログ記録します。 |
| 属性 | Value (値) |
|---|---|
message (メッセージ) |
Polling from Siebel #[payload] |
level (レベル) |
Info (情報) |
Salesforce Connector をこのロガーの後に追加します。ポーリングの出力が Salesforce アカウントにアップロードされます。
<sfdc:create config-ref="Salesforce" type="Contact" doc:name="Salesforce">
<sfdc:objects ref="#[payload]"/>
</sfdc:create>
| 要素 | 説明 |
|---|---|
sfdc:create |
指定された Salesforce アカウントで取引先責任者エントリを作成します。 |
| 属性 | Values (値) |
|---|---|
config-ref |
Salesforce |
type (型) |
Contact (連絡先) |
doc:name |
Salesforce |
| 子要素 | 説明 |
|---|---|
sfdc:objects |
作成されたオブジェクトの構造を定義します。 |
| 属性 | Values (値) |
|---|---|
ref (参照) |
|
別のロガーを Salesforce Connector の後に追加し、操作が成功したことを確認します。
<logger message="#[payload.toString()]" level="INFO" doc:name="Logger"/>
| 要素 | 説明 |
|---|---|
Logger |
メッセージを Mule コンソールにログ記録します。 |
| 属性 | Value (値) |
|---|---|
message (メッセージ) |
|
level (レベル) |
Info (情報) |
最初のロガーと Salesforce Connector の間に DataWeave コンポーネントを追加します。Siebel によって返されるデータ構造から Salesforce で必要となるデータ構造に項目がマップされます。
<data-mapper:transform doc:name="DataWeave"/>
DataWeave を正しく設定するには Studio ビジュアルエディターに切り替えます。その項目を編集するには DataWeave アイコンをクリックします。
| すでに両方のコネクタを適切に設定している場合、DataWeave で実行する必要があるマッピングが自動的に提案される必要があります。 |
入力:
| 属性 | Value (値) |
|---|---|
型 |
Connector (コネクタ) |
Connector (コネクタ) |
Oracle_Siebel_Business_Object |
操作 |
query-business-components |
Object (オブジェクト) |
List<Contact.Contact> |
出力:
| 属性 | Value (値) |
|---|---|
型 |
Connector (コネクタ) |
Connector (コネクタ) |
Salesforce |
操作 |
create (作成) |
Object (オブジェクト) |
List<Contact> |
[Create mapping for DataWeave (DataWeave のマッピングを作成)] をクリックして両方のデータ構造間のマッピングを作成します。
一部の項目では、Salesforce での名前が Siebel での名前と一致しません。これらは手動で設定する必要があります。
| Siebel での名前 | Salesforce での名前 |
|---|---|
Email_Address |
Email (メール) |
First_Name |
FirstName |
Last_Name |
LastName |
これらをリンクする方法は次の 2 つです。
DataLoader のグラフィカルビューの両方の列で項目を探し、単純に一方から他方にドラッグアンドドロップします。
この方法は通常は最も簡単ですが、項目数が多い場合、目的の項目を見つけるのが難しくなる場合があります。項目リストの上にある検索ボックスを使用すればこれらの項目をすばやく見つけることができます。
DataLoader のスクリプトビューを入力し、次のコード行を元の内容の下に貼り付けます。
output.Email = input.Email_Address;
output.FirstName = input.First_Name;
output.LastName = input.Last_Name;
コード全文は次のようになります。
//MEL
//START -> DO NOT REMOVE
output.__id = input.__id;
//END -> DO NOT REMOVE
output.Department = input.Department;
output.Email = input.Email_Address;
output.First_Name = input.First_Name;
output.LastName = input.Last_Name;
プロジェクトを保存し、Mule アプリケーションとして実行します。
Siebel インテグレーションオブジェクトを使用してクエリを実行する場合、 Siebel クエリメソッドの結果を絞り込む方法にはいくつかのオプションがあります。
1 つの方法としては、クエリに対する入力として与えられているプロパティセットを変更し、Siebel 式を使用して検索条件を入力する項目の値を変更して、結果を絞り込みます。
もう 1 つの方法は、絞り込むビジネスオブジェクトの「searchspec」項目を使用する方法です。レコードが正しく絞り込まれるように、searchspec 項目と一緒に他のビジネスオブジェクト項目を使用する必要はありません。
コネクタのプーリングプロファイルを手動で定義するには、コネクタの適切なグローバル要素の [Pooling Profile (プーリングプロファイル)] タブにアクセスします。
プーリングの背景情報は、「Tuning Performance (パフォーマンスのチューニング)」を参照してください。
Anypoint Studio でユースケースのコード例が機能するように、Siebel アカウントと Salesforce アカウントの両方のログイン情報を指定する必要があります。コードで変数をそれらの値に置き換えるか、src/main/properties フォルダーに mule.properties という名前のファイルを追加して各変数の値を指定できます。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:context="http://www.springframework.org/schema/context"
xmlns:dw="http://www.mulesoft.org/schema/mule/ee/dw"
xmlns:siebel="http://www.mulesoft.org/schema/mule/siebel" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:data-mapper="http://www.mulesoft.org/schema/mule/ee/data-mapper" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-current.xsd http://www.mulesoft.org/schema/mule/ee/dw http://www.mulesoft.org/schema/mule/ee/dw/current/dw.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/siebel http://www.mulesoft.org/schema/mule/siebel/current/mule-siebel.xsd
http://www.mulesoft.org/schema/mule/ee/data-mapper http://www.mulesoft.org/schema/mule/ee/data-mapper/current/mule-data-mapper.xsd">
<siebel:config name="Oracle_Siebel_Business_Object" user="${siebel.user}" password="${siebel.password}" server="${siebel.server}" serverName="${siebel.servername}" objectManager="${siebel.mgr}" dataSenseFilterQueryBusComp="[Name] = 'Action' OR [Name] = 'Contact'" dataSenseFilterQueryBusObjects="[Name] = 'Action' OR [Name] = 'Contact'" doc:name="oracle siebel business objects">
<siebel:connection-pooling-profile initialisationPolicy="INITIALISE_ONE" exhaustedAction="WHEN_EXHAUSTED_GROW"/>
</siebel:config>
<context:property-placeholder location="mule.properties"/>
<flow name="siebel2salesforce" >
<poll doc:name="Poll">
<fixed-frequency-scheduler frequency="60000"/>
<watermark variable="lastUpdate" default-expression="#[new org.joda.time.DateTime().withZone(org.joda.time.DateTimeZone.forID("PST8PDT")).minusSeconds(5).toString("MM/dd/yyyy HH:mm:ss")]" update-expression="#[new org.joda.time.DateTime().withZone(org.joda.time.DateTimeZone.forID("PST8PDT")).minusSeconds(5).toString("MM/dd/yyyy HH:mm:ss")]"/>
<siebel:query-business-components config-ref="Oracle_Siebel_Business_Object" businessObjectComponentType="Contact.Contact" searchExpression="[Last Update - SDQ] > '#[flowVars.lastUpdate]'" doc:name="oracle siebel business objects">
<siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Last Name</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Email Address</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>First Name</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Primary Organization</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Personal Contact</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Employee Number</siebel:fields-to-retrieve>
<siebel:fields-to-retrieve>Account Integration Id</siebel:fields-to-retrieve>
</siebel:fields-to-retrieve>
</siebel:query-business-components>
</poll>
<logger message="Polling from Siebel #[payload]" level="INFO" doc:name="Logger"/>
<dw:transform-message doc:name="Transform Message">
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
{
"SiebelMessage":payload.SiebelMessage
}]]></dw:set-payload>
</dw:transform-message>
<sfdc:create config-ref="Salesforce" type="Contact" doc:name="Salesforce">
<sfdc:objects ref="#[payload]"/>
</sfdc:create>
<logger message="#[payload.toString()]" level="INFO" doc:name="Logger"/>
</flow>
</mule>
Mule トランスフォーマーを使用する方法を学習します。