Siebel コネクタ

Premium

Siebel 用 Anypoint コネクタは、Mule インテグレーションアプリケーションと Oracle Siebel カスタマーリレーションシップマネージャ (CRM) との接続を実現します。

Siebel コネクタには、Siebel のオブジェクトやサービス別に分類される Siebel アプリケーションとの接続オプションが 1 つしかありません。

  • Oracle Siebel ビジネスオブジェクト: Siebel ビジネスコンポーネントを作成、更新、アップサート、クエリおよび削除します。

  • Oracle Siebel インテグレーションオブジェクト: Siebel インテグレーションオブジェクトを作成、更新、アップサート、クエリ、削除、ページクエリ、実行、および同期します。

  • Oracle Siebel ビジネスサービス: Siebel ビジネスサービスを実行します。

すべてのオプションは、Siebel コネクタのインストール後に利用可能になります。

Siebel コネクタは、Siebel Java Data Beans インターフェースを使用して構築されています。Java Data Beans は、Siebel オブジェクトマネージャにアクセスするためのネイティブ Java インターフェースを提供します。

Siebel オブジェクトマネージャにより、コネクタは、カスタムインストールに依存しない汎用インターフェースを使用できます。Siebel オブジェクトのメタデータをデザイン時に発見するには、Anypoint Studio で DataSense を使用します。Siebel コネクタは、Siebel リポジトリを利用して、利用可能なオブジェクトのリストと構造を Siebel カスタムインストールで表示します。

オブジェクトは、ビジネスコンポーネント、ビジネスオブジェクト、インテグレーションオブジェクト、またはビジネスサービスのいずれかです。

前提条件

このドキュメントは、読者が Mule、Anypoint コネクタ、Anypoint Studio、Mule の概念、Mule フローの要素、グローバル要素に精通していることを前提としています。

対象リソースへの接続をテストするには、ログイン情報が必要です。

Maven でこのコネクタを使用するには、Anypoint Exchange の [Dependency Snippets (連動関係スニペット)] で pom.xml の連動関係情報を確認してください。

コネクタは Siebel CRM と密接に結合されているため、このドキュメントでは読者が Siebel ビジネスコンポーネント、ビジネスオブジェクト、ビジネスサービス、およびインテグレーションオブジェクトに精通していることを前提としています。

Siebel コネクタでは、Siebel.jarSiebelJI_xxx の Siebel JAR ファイルが必要です。

SiebelJI_xxx.jar は、Siebel インストールのロケールに従って選択してください。たとえば、Siebel インストールのロケールが US_EN である場合は SiebelJI_enu.jar を使用します。 Siebel.jarSiebelJI_enu.jar は、Siebel サーバの <%SIEBEL_HOME%>\8.1.1.11\Tools_1\CLASSES フォルダにあります。 %SIEBEL_HOME% は Siebel のインストールディレクターです。

このコネクタの新機能

以前の 3 つのモジュール (Oracle Siebel ビジネスオブジェクト、Oracle Siebel インテグレーションオブジェクト、Oracle Siebel ビジネスサービス) が 1 つのコネクタに統合されました。

Design Center での接続方法

  1. Design Center で、[Set Up (セットアップ)] > [Upload (アップロード)] をクリックし、ファイルシステムにあるこのコネクタのドライバを参照して選択し、アップロードします。または、すでにアップロードされているドライバを検索して選択します。

  2. トリガをクリックします。トリガ時にこのコネクタを選択することで、グローバル要素を作成できます。 グローバル要素が不要な場合は、HTTP リスナまたはスケジューラトリガを使用できます。

  3. このコネクタのグローバル要素 (省略可能) を作成するには、次の項目を設定します。

    省略可能なグローバル要素
    • Name (名前) - この設定を後で参照するための名前を入力します。

    • User (ユーザ) - 使用する Siebel ユーザ名を入力します。

    • Password (パスワード) - 対応する Siebel パスワードを入力します。

    • Server (サーバ) - Siebel インスタンスのサーバ IP アドレスを入力します。

    • Port (ポート) - ポート番号を入力します。デフォルト値は 2321 です。

    • Server Name (サーバ名) - Siebel Enterprise のサーバ名を入力します。

    • RSA Encryption (RSA 暗号化) - RSA 暗号化を使用する場合に選択します。デフォルト値は false です。

    • Object Manager (オブジェクトマネージャ) - Siebel インスタンスのオブジェクトマネージャの値を入力します。

    • Language (言語) - Siebel インスタンスのロケールに対応した言語を入力します。デフォルト値は ENU です。

    • Encoding (エンコード) - Siebel サーバでサポートされるエンコード種別を入力します。デフォルト値は utf8 です。

  4. プラス記号を選択して、コンポーネントを追加します。

  5. コンポーネントとしてコネクタを選択します。

  6. 次の項目を設定します。

    Design Center の Siebel 操作リスト
    • 以前に作成してあるコネクタ設定を選択します。

    • 使用する操作の項目を同様に入力します。

このコネクタのライブラリの追加

  1. コネクタの [Global Configuration (グローバル設定)] に移動します。

  2. メッセージの下の [Set Up (セットアップ)] をクリックして、ドライバをセットアップします。

  3. ライブラリをアップロードして選択します。

    ライブラリの選択

Anypoint Studio 7 での接続

このコネクタを Anypoint Studio で使用するには、まず Exchange からダウンロードして必要に応じて設定します。

Studio でコネクタをインストールする

  1. Anypoint Studio で、Studio タスクバーの Exchange アイコンをクリックします。

  2. Anypoint Exchange で [Login (ログイン)] をクリックします。

  3. このコネクタを検索して [Install (インストール)] をクリックします。

  4. 画面の指示に従ってこのコネクタをインストールします。

Studio の更新がある場合、右下隅にメッセージが表示されます。メッセージをクリックすると、更新をインストールできます。

Studio で設定する

  1. 実行する操作を Studio キャンバスにドラッグしてドロップします。

  2. Siebel コネクタの新しい設定を作成するには、[Basic Settings (基本設定)] 領域にあるプラスボタンをクリックします。

    Studio での設定の作成
  3. 設定フォームにデータを入力します。

    studio-siebel-config
    1. [Required Libraries (必須のライブラリ)] セクションでは、以前にダウンロードしてある Siebel.jar ライブラリと SiebelJI_xxx ライブラリを追加する必要があります。

      Studio への JAR ファイルの追加

      [Finish (完了)] をクリックすると、ライブラリが連動関係として追加されますが、Maven 連動関係 UI でさらに多くの連動関係を追加できるように、[Global Element Properties (グローバル要素のプロパティ)] ウィンドウは更新されません。

    2. 設定セクションの項目は次の通りです。

      • Name (名前) - この設定を後で参照するための名前を入力します。

      • User (ユーザ) - 使用する Siebel ユーザ名を入力します。

      • Password (パスワード) - 対応する Siebel パスワードを入力します。

      • Server (サーバ) - Siebel インスタンスのサーバ IP アドレスを入力します。

      • Port (ポート) - ポート番号を入力します。デフォルト値は 2321 です。

      • Server Name (サーバ名) - Siebel Enterprise のサーバ名を入力します。

      • RSA Encryption (RSA 暗号化) - RSA 暗号化を使用する場合に選択します。デフォルト値は false です。

      • Object Manager (オブジェクトマネージャ) - Siebel インスタンスのオブジェクトマネージャの値を入力します。

      • Language (言語) - Siebel インスタンスのロケールに対応した言語を入力します。デフォルト値は ENU です。

      • Encoding (エンコード) - Siebel サーバでサポートされるエンコード種別を入力します。デフォルト値は utf8 です。

    3. 一般検索条件は次のように構成されます。

      • Default View Mode Bus Comp (デフォルトビューモードバスコンポーネント) - DataSense のデフォルトビューを入力します。この項目のデフォルト値は 3 です。

        サポートされる値:

        • 0 (SalesRepView):

      • 単一の役職または営業チームに従ってアクセス制御を適用します。

      • ユーザの役職またはユーザの役職を含む営業チームのいずれかに従ってレコードを表示します。ビジネスコンポーネントの Visibility (表示) 項目または Visibility MV (表示 MV) 項目によって表示を決定します。

        • 1 (ManagerView):

          ユーザとユーザの部下がアクセスできるレコードを表示します。たとえば、Siebel CRM が「My Team’s Accounts (私のチームのアカウント)」という表示検索条件で表示するレコードが含まれます。

        • 2 (PersonalView):

          BusComp ビューモードオブジェクトの Visibility Field (表示項目) プロパティに従ってユーザがアクセスできるレコードを表示します。たとえば、Siebel CRM が「My Accounts (私のアカウント)」という表示検索条件で表示するレコードが含まれます。

        • 3 (AllView):

          有効な所有者を含むすべてのレコードを表示します。たとえば、Siebel CRM が「All Accounts Across Organizations (組織全体のすべてのアカウント)」という表示検索条件で表示するレコードが含まれます。

      • DataSense Filter Query Bus Objects (DataSense 検索条件クエリバスオブジェクト) - この項目は、アプリケーションにダウンロードされるビジネスオブジェクトのメタデータに絞り込むためのクエリを作成する場合に使用します。

      • DataSense Filter Query Bus Comp (DataSense 検索条件クエリバスコンポーネント) - この項目は、アプリケーションにダウンロードされるビジネスコンポーネントのメタデータに絞り込むためのクエリを作成する場合に使用します。

      • DataSense Filter Int Objects (DataSense 検索条件クエリインテグレーションオブジェクト) - この項目は、アプリケーションにダウンロードされるインテグレーションオブジェクトのメタデータに絞り込むためのクエリを作成する場合に使用します。

      • DataSense Filter Query (DataSense 検索条件クエリ) - この項目は、アプリケーションにダウンロードされるビジネスサービスのメタデータに絞り込むためのクエリを作成する場合に使用します。

      • Other (その他) - この項目は、アプリケーションにダウンロードされるビジネスオブジェクト、サービス、またはインテグレーションオブジェクトのメタデータに絞り込むためのクエリを作成する場合に使用します。

検索指定を使用して DataSense で取得するオブジェクトを少ない数に制限してください。そうしないと、大量のメタデータの取得によって Studio の処理速度が遅くなります。

ユースケース: Studio

Siebel コネクタは操作ベースであるため、フローにコネクタを追加する際には、実行する操作を指定する必要があります。

ユースケースの例

Siebel v4.0.0 コネクタの一般的なユースケースを紹介します。

  1. Create Business Component (アクション、アカウントなど)

    1. Anypoint Studio で新しい Mule プロジェクトを作成します。

    2. フローを開始するための適切な Mule インバウンドエンドポイント (HTTP リスナなど) を追加します。

    3. Create business component 操作を Siebel JDB パレットからキャンバスにドラッグし、選択してプロパティエディタを開きます。

    4. 操作パラメータを設定します。

      操作パラメータの設定
    5. Transform Message (メッセージ変換) コネクタをフロー上の HTTP リスナと Siebel コネクタの間にドラッグします。

    6. 入力ペイロードの必要な項目を設定します。

      入力ペイロードの設定
  2. Execute Business Service (連絡先の作成、アカウントの作成など)

    1. Anypoint Studio で新しい Mule プロジェクトを作成します。

    2. フローを開始するための適切な Mule インバウンドエンドポイント (HTTP リスナなど) を追加します。

    3. Execute business service 操作を Siebel JDB パレットからキャンバスにドラッグし、選択してプロパティエディタを開きます。

    4. 操作パラメータを設定します。

      操作パラメータの設定
    5. Transform Message (メッセージ変換) コネクタをフロー上の HTTP リスナと Siebel コネクタの間にドラッグします。

    6. 入力ペイロードの必要な項目を設定します。

      入力ペイロードの設定
  3. Execute Siebel Adapter (インテグレーションオブジェクトの作成)

    1. Anypoint Studio で新しい Mule プロジェクトを作成します。

    2. フローを開始するための適切な Mule インバウンドエンドポイント (HTTP リスナなど) を追加します。

    3. Create business component 操作を Siebel JDB パレットからキャンバスにドラッグし、選択してプロパティエディタを開きます。

    4. 操作パラメータを設定します。

      操作パラメータの設定
    5. Transform Message (メッセージ変換) コネクタをフロー上の HTTP リスナと Siebel コネクタの間にドラッグします。

    6. 入力ペイロードの必要な項目を設定します。

      入力ペイロードの設定

ユースケース: XML

Siebel コネクタを使用したプロジェクトからの XML スニペット

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core" xmlns:siebel="http://www.mulesoft.org/schema/mule/siebel"
      xmlns:http="http://www.mulesoft.org/schema/mule/http"
      xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="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/core http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">

    <configuration-properties file="mule-app.properties"/>

    <siebel:siebel-config name="Siebel_JDB_Siebel" doc:name="Siebel JDB Siebel" dataSenseFilterQueryBusComp="[Name] = 'Action'">
        <siebel:basic-connection user="${siebel.user}" password="${siebel.password}" server="${siebel.server}"
                                     serverName="${siebel.servername}" objectManager="${siebel.objectManager}"/>
    </siebel:siebel-config>

    <http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config">
        <http:listener-connection host="localhost" port="8081"/>
    </http:listener-config>

    <flow name="siebel-demosFlow1">
            <http:listener config-ref="HTTP_Listener_config" path="/create" doc:name="Listener"/>
            <ee:transform doc:name="Transform Message">
                <ee:message>
                    <ee:set-payload><![CDATA[%dw 2.0
                                        output application/java
                                        ---
                                        {
                                            "Type":payload.actionType as String,
                                            "Description": payload.description as String
                                        }]]>
                    </ee:set-payload>
                </ee:message>
            </ee:transform>
            <siebel:create-business-component config-ref="Siebel_JDB_Siebel" businessObjectComponentType="Action.Action"
                                              doc:name="Create business component"/>
            <ee:transform doc:name="Transform Message">
                <ee:message>
                    <ee:set-payload><![CDATA[%dw 2.0
                                        output application/json
                                        ---
                                        payload]]>
                    </ee:set-payload>
                </ee:message>
            </ee:transform>
        </flow>
</mule>

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub