Home > コンポーネント シリーズ > ServiceMax > ServiceMax - 設定 > ServiceMax - XML

ServiceMax - XML

ServiceMaxコネクタは、Magic xpiのXMLインタフェースを使用して動作するように設計されています。ServiceMaxコネクタをフローにドラッグすると、[プロパティ]ペインが開きます。

[インタフェース]プロパティでXMLを選択した後で、コンポーネントをダブルクリックするか、右クリックしコンテキストメニューから[設定]を選択してください。[ServiceMax設定]ダイアログボックスが開きます。

このダイアログボックスには、以下のフィールドが含まれています。

プロパティ

説明

接続

リソース名

コンポーネントの[プロパティ]ペインで選択したリソースの名前。リソースは、[設定]ダイアログボックスの[リソース]セクションで定義されます。

オペレーション

オブジェクト

をクリックして、オブジェクトリストを開きます。オペレーションが実行されるオブジェクトを選択してください。[ServiceMaxリソース]ダイアログボックスでリソースを有効にすると、このリストが生成されます。

オブジェクトリストは、リソースに組み込まれる必要があります。そうしないと、ステップまたはトリガでオブジェクトリストを取得できません。

オペレーション

ドロップダウンリストから以下のいずれかを選択します。

  • Query…… オブジェクトからデータを取り出すの場合に使用します。データマッパーを使用して特定の条件を基にオブジェクトを取り出すことができます。ソースに複数のレコードがある場合、最初にマッピングされた値だけが返ります。

  • Query All …… ServiceMaxから削除されたレコード(削除レコードは、IsDeleted要素がTrueのもの)を返すこと以外は、Queryと同じです。

  • Bulk Query:  …… これは、大きなデータセットを検索するために使用されます。これは、必要な結果を取り出すBulk Retrieve Query Results メソッドと連携して使用する必要があります。

  • Create …… これは組織のデータに新しいオブジェクトを作成する場合に使用します。データマッパーを使用して新しいオブジェクトフィールドの値を指定することができます。

  • Bulk Create …… これは、多くのレコードを含む外部ファイルを使用して実行することが可能になる以外は、Createと同じです。

  • Update …… これは組織のデータの特定のオブジェクトを更新する場合に使用します。オブジェクトを更新する場合、そのIDを知る必要があります。例えばQuery(上記参照)を行ってオブジェクトIDを取得し、その後でUpdateを行ないます。データマッパーを使用してオブジェクトIDや他の更新したいフィールドを指定してください。

  • Bulk Update …… これは複数のレコードをを含む外部ファイルを使用して処理を実行することを除いて、Updateと同じです。

  • Delete …… これは組織のデータから特定のオブジェクトを削除する場合に使用します。オブジェクトを削除する場合、そのIDを知る必要があります。Query(上記参照)を行いオブジェクトIDを取得し、その後Deleteを行います。データマッパーを使用してオブジェクトIDを指定してください。これが指定すべき唯一の値です。

  • Bulk Delete …… これは複数のレコードをを含む外部ファイルを使用して処理を実行することを除いて、Deleteと同じです。

  • Upsert …… これは、ServiceMaxへの重複レコードの挿入を防止するために使用されます。Upserオペレーションは、フィールド値に基づいて、オブジェクトインスタンスの存在をチェックし、存在しているならば、オブジェクトを更新するか、存在していないならば、新しいものを挿入します。Upsertオプションは、更新または作成が可能なオブジェクトでのみ有効です。.

  • Bulk Upsert …… これは複数のレコードをを含む外部ファイルを使用して処理を実行することを除いて、Upsertと同じです。

オブジェクトでサポートされているオペレーション(オブジェクトタイプとユーザー権限に基づく)のみが表示されます。

バッチモード

 [オペレーション]フィールドでBulkオペレーションのうちの1つを選択した場合、このフィールドが利用できます。ここでは、ジョブのバッチ処理方法を指定できます。ドロップダウンリストからの以下のどれかを選択します。

  • パラレル (デフォルト) …… バッチが同時に処理されます。

  • ライナー ……バッチが逐次処理されます。

バッチサイズ

ここは、[オペレーション]フィールドでCreateUpdate、またはUpsetが選択された場合のみ利用できます。

ここでは、ServiceMaxに送られる各リクエストのオブジェクトの最大数を制御します。1〜200の間に値を入力してください。

更新フィールド名

[オペレーション]フィールドでUpsertまたはBulk Upsertが選択された時のみ、このフィールドは有効です。

リストされるフィールドは、選択されたオブジェクトのためのユニークなフィールドです。少なくとも1つのオブジェクトは、Upsertのルックアップ処理のために選択されなければなりません。選択されたオブジェクトは、後で値によってマッピングされなければなりません。

Bulk Upsertオペレーションで動作する場合、ここで選択されたフィールドも、データマッパー画面に表示されるように、オブジェクトフィールドリストで選択されなければなりません。

詳細については、Salalesforce APIドキュメントのUpsertオペレーションの説明を算用してください。

新規オブジェクトID

ここは、[オペレーション]フィールドでCreateもしくはUpsertを選択した場合のみ有効になります。

をクリックして変数リストを開きアップサートされたオブジェクトIDを保持する変数を選択します。

戻り値

ここは、[オペレーション]フィールドでQueryもしくはQuery All または Bulk Queryを選択した場合のみ有効になります。

隣接したチェックボックスの選択で、Allを選択するか、オブジェクトフィールドリストから特定フィールドを選択することができます。

戻り子オブジェクト

ここは、[オペレーション]フィールドでQueryもしくはQuery All または Createを選択した場合のみ有効になります。

[オペレーション]フィールドでQueryが選択された場合は、一つのXMLファイルからオブジェクトが選択された子オブジェクトと一緒に取得されます。

親とその子オブジェクトの両方に対して照会を行うことができます。

[オペレーション]フィールドでCreateを選択した場合、オブジェクトは選択された子オブジェクトと一緒に取得されます。

をクリックして子オブジェクトリストを開きます。ここでは、取得したい子オブジェクトを選択することができます。

20以上の子オブジェクトを持ったオブジェクトは、QueryやQuery All オペレーションが実行できません。

オブジェクトフィールド

ここは、[オペレーション]フィールドでBulk が選択された場合のみ利用できます。

をクリックしてオブジェクトフィールドリストを開きます。ここで、必要なオブジェクトフィールドを選択し、それらの関係の詳細を埋めることができます。[インデックス]と[外部ID]フィールドに関係するデータのみを入力することができます。デフォルトでは、フィールドは選択されません。

戻りジョブID

ここは、[オペレーション]フィールドでBulk が選択された場合のみ利用できます。

をクリックして変数リストを開きます。ここで、ジョブIDを保持する変数を選択します。

結果オプション

結果保存

結果のXMLファイルを保存したい場所を定義します。ドロップダウンリストから以下のいずれかを選択します。

  • ファイル …… ServiceMaxから返されたオブジェクトデータを保持するファイルを選択します。 をクリックして式エディタを開くか をクリックしてこの情報を保存するファイルパスを入力します。

  • 変数(デフォルトは C.UserBlob) …… ServiceMaxから返されたオブジェクトデータを保持する変数を選択します。 をクリックして変数リストを開きます。情報を保存する変数を選択します。

  • 分割ファイル …… 大きなXMLファイルをより小さなXMLファイルに分割します。このオプションを選択すると、このダイアログボックス(下記)の[分割ファイル]オプションに必要な情報を入力する必要があります。

オペレーション成功

このフィールドは、データオブジェクトがServiceMax内に正しく書き出されたかを簡単に判断できるようにします。ドロップダウンリストから以下のいずれかを選択します。

  • None(デフォルト) …… コネクタの成否のステータスを保存しない場合は、このオプションを選択してください。

  • Variable …… コネクタの成否のステータス情報を保存する変数を選択します。 

Build オペレーション(上記)のどれかを使用する場合、このフィールドは、ServiceMaxジョブがMagic xpiによって正しく作成されたかどうかを定義します。

分割ファイルオプション

ディレクトリ

分割ファイルを保持しているディレクトリ。 をクリックして式エディタを開き、ディレクトリ名を入力します。

接頭辞

分割ファイルのの接頭辞。をクリックして式エディタを開き、接頭辞を入力します。

ファイル毎のレコード数

各分割ファイルのレコード数。をクリックして式エディタを開き、必要なレコード数を入力します。

分割数

分割数が返る数値変数。をクリックして変数リストを開き、必要な変数を選択します。

[ServiceMax構成]ダイアログボックスには以下のボタンもあります。

ボタン

説明

XSDのリフレッシュ

現在のスキーマを更新します。

[XSDをリフレッシュ]をクリックすると現在のスキーマは上書きされます。メッセージダイアログボックスが開き、[OK]をクリックすると更新と上書きを承認します。[キャンセル]をクリックするとスキーマを上書きせずにプロセスを終了します。

 

  • CreateUpdateを使用する場合、フィールドマッピング時に作成、更新できないフィールドや定義済みの値が必要なフィールドに注意してください。各フィールドの[プロパティ]ペイン[追加XMLプロパティ]セクションで必要な情報を得るのことができます。

  • Bulk Query オペレーションは、以下のSOQLステートメントをサポートしません。

  • COUNT

  • ROLLUP

  • SUM

  • GROUP BY CUBE

  • OFFSET

  • Nested SOQL queries

  • Relationship fields

  • データマッパソースからのリピート可能な要素は、ServiceMaxオブジェクトのrowコンパウンドにマッピングしてください。

  • NULL値を許可するオブジェクトフィールドは、Magic xpi内のNULL値でマッピングされ、追加することができます。

  • 高度なQueryを行う場合は、作成されたXSDのSOQL合成要素内のSOQL WHERE句のフリーテキストにマッピングすることができます。この合成要素は、QueryQuery Allのメソッドで使用することができます。合成要素には、WHEREと呼ばれる文字列があります。SOQLステートメントのWhere部をこの要素にマップすることができます。そして、Where部はマッピング処理中にWhere句ビルドに追加します。

関連トピック:

ServiceMax - 外部IDによるオブジェクト参照