機械翻訳について

スケジュールされた統合でのAtomフィードのサブスクライブ

このユースケースでは、「Oracle HCM Cloudアダプタ」を使用してスケジュールされたオーケストレートされた統合を作成し、Atomフィードをサブスクライブする方法の概要を示します。 Atomフィードを使用すると、Oracle Global Human Resources Cloudのフィード対応リソースに対する変更を追跡できます。 新入社員、退職者、従業員の移転、および昇進などのダウンストリーム・アプリケーションへの関心の更新については、Oracle Global Human Resources CloudはAtomフィードを発行します。

このユースケースでは、Atomフィード「従業員の更新」を使用して「Oracle HCM Cloudアダプタ」を構成します。 このフィードは、3つの更新(PrimaryPhoneNumberCitizenshipStatusおよびCitizenshipId)で構成されています。 「FTPアダプタ」は、FTPサーバーにフィード更新を書き込むようにも構成されています。

Oracle Global Human Resources Cloudがすべてのフィードで公開するエントリには、次の2つのタイプがあります:
  • すでに有効なエントリ。
  • 将来有効になるエントリ(将来の日付のエントリと呼ばれる)。
これらの要件に基づいて統合を設計します。 統合で先日付の入力を処理する必要がある場合は、次のオプションがあります:
  • 将来の日付のエントリは、その有効日に処理されます。
  • 将来の日付のエントリは即座に処理されます。

ノート:

ビジネス・オブジェクトとともに従業員関連のフィード(新規採用、アサイメント、退職、更新など)を使用する新しいAtomフィード・エンドポイントでは、設計時と実行時の両方でワーカー・リソースが使用されるようになりました。 ワーカー・リソースがマッパーに表示されます。

既存のAtomフィード・エンドポイントでは、下位互換性のためにビジネス・オブジェクトとともにすでにデプロイされており、再マッピングの必要性を避けるために、従業員関連のフィードにEmpsリソースを引き続き使用します。 Atomフィードを使用する新しいデプロイメントはすべて、Workersビジネス・オブジェクトを使用する必要があります。

次の例は、マッパー内のビジネス・オブジェクトを使用した従業員更新フィードを示しています:


EmployeeUpdateFeedWithBO_Updateの下には、マッパーのWorkers要素があります。

有効日における将来の日付エントリの処理

Oracle Global Human Resources Cloudでは、有効日に将来の日付のエントリが処理されます。 このユースケースでは、このタイプの統合を設計する方法の概要を説明します。

  1. 接続ページで、Oracle HCM Cloudアダプタを作成し、次の詳細を構成します:
    1. 名前を指定します。
    2. 「接続の構成」ダイアログで、「両方の」にサービス・カタログのWSDL URLとインタフェース・カタログのURLを指定します。 インタフェース・カタログURLが指定されていない場合、アダプタ・エンドポイント構成ウィザードのアクション・ページに「更新のサブスクライブ(Atomフィード経由)」オプションは表示されません。
    3. 資格証明ダイアログで、「ユーザー名パスワード・トークン」セキュリティ・ポリシーを選択し、ログイン資格証明を指定します。
  2. 統合ページで、スケジュールされたオーケストレートされた統合を作成します。
  3. Oracle HCM Cloudアダプタを起動接続として統合キャンバスにドラッグし、次の詳細を使用してAdapter Endpoint Configuration Wizardを構成します:
    1. 「基本情報」ページで、名前(この例ではgetData)を指定します。
    2. アクション・ページで、「更新のサブスクライブ(Atomフィード経由)」を選択します。
    3. 操作ページで、次の項目を選択します:
      • 「Atomフィード」リストから、「従業員の更新」を選択します。

      • 「ビジネス・オブジェクトをAtomフィードに含める」チェック・ボックスを選択し、Atomサーバーにフィード内の各エントリのHTTPリクエストを送信して、ビジネス・リソースの最新スナップショットをフェッチします。 チェックボックスの動作は次のとおりです:

        • 選択されていません: コンテキストおよび変更された属性は、設計時および実行時に使用されます。 マッパー内の操作名にサフィクスWithBOがなく、ビジネス・オブジェクトが操作名要素の下に表示されません。

        • 選択済: コンテキスト属性およびビジネス・オブジェクト属性は、設計時および実行時に使用されます。 マッパーの操作名のサフィクスはWithBOです。

      • 「処理する最大エントリ数」リストから処理する最大エントリ数を選択します。

        これにより、リクエストの一部としてAtomサーバーに送信されるpage-size問合せパラメータの値が、フィードを取得するように設定されます。 Atomフィード・サイズは、この数によって制限されます。 このオプションには少数を使用し、統合の実行頻度を高くすることをお薦めします。

  4. スケジュール・アイコンをダブルクリックし、「編集」を選択して、スケジュール・パラメータを作成します(この例では、tsという名前)。 初期値は、開始するタイムスタンプである必要があります。 実行時に、このタイムスタンプ以降からエントリを受け取ります。 タイムスタンプの書式は次のようにする必要があります:
    YYYY-MM-DDTHH:MM:SS:sssZ e.g. 2018-06-03T02:34:06.000Z

    説明:

    • YYYY: 4桁の年
    • MM: 2桁の月(01 = 1月、など)
    • DD: 月の2桁の日(01から31)
    • hh: 2桁の時間(00から23) (am/pmは許可されない)
    • mm: 分の2桁(00から59)
    • ss: 2桁の数(00から59)
    • s: 秒の小数部を表す3桁(ミリ秒)
    このパラメータを使用すると、統合が起動されるたびに新しい項目が処理されます。 最後に処理されたエントリのタイムスタンプをこのパラメータに格納する必要があります。 この値は、統合の呼出し全体で使用可能です。 最初のリクエストでは、updated-min問合せパラメータ値は空白であり、フィードの最新のnエントリ数が返されます。nは、操作ページの「処理する最大エントリ数」オプションで選択された値です。

  5. スケジュールと「Oracle HCM Cloudアダプタ」の間のリクエスト・マッパーで、$ts (タイムスタンプ値)をupdated-minにマップします。 「Oracle HCM Cloudアダプタ」は、フィードをリクエストするときにupdated-min問合せパラメータをAtomサーバーに送信します。 Atomサーバーは、タイムスタンプ値の新しい更新後に更新されたエントリを持つフィードを返します。 これにより、毎回新しい更新を処理することができ、同じ更新が複数回処理されるのを防ぐことができます。
  6. 統合キャンバスの「Oracle HCM Cloudアダプタ」の下にFor Eachアクションを追加して構成します。
    操作ページで「ビジネス・オブジェクトをAtomフィードに含める」オプションが選択されているため、マッパーにはビジネス・オブジェクト(「ワーカー」)、コンテキスト(EmployeeUpdateFeedWithBO_Context)、変更された属性(ChangedAttributes)およびタイムスタンプが表示されます。 タイムスタンプは、フィードのエントリから更新された要素です。 これは、処理されたエントリを追跡するために使用されます。 これは、scheduleパラメータの助けを借りて行われます。 最初のFor Eachアクションはエントリを反復します。
  7. 1つ目の「それぞれ」アクション内に2つ目の「それぞれ」アクションを追加して構成し、変更した属性を反復処理します。
  8. 統合内の2番目のFor Eachアクションの内部に「FTPアダプタ」を追加して構成します。
    変更された属性ごとに、ファイルがFTPサーバーに書き込まれます。 また、RESTアダプタ接続を使用して、これらの変更を含む複数のパッチ・リクエストをエンドポイントに送信することもできます。

    最初のループ(この例ではloop1)の最後に、tsスケジュール・パラメータがエントリのタイムスタンプで更新されます。 これはデータベースに格納され、後続の起動で使用できます。 この値は、後続の統合の実行全体にわたって、また非アクティブ化およびアクティブ化にわたって維持されます。 これは、処理されたエントリがどのように追跡されるかです。 ts scheduleパラメータはリクエスト・マッピングで使用されるため、以降の起動ではデータベースからのその値が使用されます。 したがって、新しいエントリだけが処理されます。

  9. 最初のFor Eachアクション(loop1)の下部に「割り当て」アクションを追加します。 assignアクティビティは、フォールト・トレランスのためにloop1の最後に配置されます。 FTPのロケーションへの書込み時にフォルトが発生した場合は、最後に処理されたエントリの更新されたタイムスタンプが次の呼出しに使用されます。 hcm_assign.pngの説明は以下のとおりです
    「図hcm_assign.pngの説明」

    updated_timestamp要素は、次のように、更新要素(フィード内のエントリ)からスケジュール・パラメータtsの値として選択されます。

    スケジュールによって統合が起動されると、変更された属性ごとにFTPディレクトリにファイルが作成されます。 統合の完全な設計は次のとおりです:
    hcm_summary.pngの説明は以下のとおりです
    図hcm_summary.pngの説明

先日付入力の即時処理

Oracle Global Human Resources Cloudでは、公開されるとすぐに、将来の日付のエントリが処理されます。 このユースケースでは、統合を設計して有効日に将来の日付のエントリを処理することと、将来の日付のエントリを即時に処理するための統合を設計することの違いを説明します。

  • 操作ページで、「先日付入力の即時処理」を選択します。 このチェック・ボックスを有効にすると、リクエスト・マップが異なる問合せパラメータ、published-minに変更されます。
  • スケジュールと「Oracle HCM Cloudアダプタ」との間のリクエスト・マッパーで、$ts (タイムスタンプ値)をpublished-minにマップします。

  • フィードで先日付入力をただちに使用できるようにするには、リクエストでpublished_timestamppublished-minとして送信する必要があります。フローの後続の起動で新しいエントリを処理するには、published_timestamptsスケジュール済パラメータにも保持する必要があります。tsにはpublished_timestampを格納する必要があります。

サマリー

要約すると、統合では、将来の日付のエントリを処理するために次の変更が必要になります。

将来の日付のエントリ・オプション リクエスト・パラメータ スケジュール・パラメータに格納されたタイムスタンプ
即時処理済 published-min published_timestamp
有効日に処理済 updated-min updated_timestamp