Static Process Tutorial [1/3]


目的

このチュートリアルは、Oracle Integration Cloud(以下OIC)のProcessにおける以下の基本的な操作を学習・理解することを目的としています。

最終構成

このチュートリアルでは、General ForemanがWebの入力画面から入力した内容を、Deputy Managerが確認し、承認を行うプロセスを作成します。

前提条件

作業手順

スペースの作成

OICのホーム画面左のメニューから ProcessBuilder をクリックします。

スペースを作成します。

スペースを作成することで、アプリケーションをチームメンバーへ共有できます。

  1. 左のメニューから スペース をクリックします。

  2. 右上の 作成 ボタンをクリックします。

  3. Spaceの名前をCapital Improvement とします。

  4. 作成 をクリックします。


アプリケーションの作成

アプリケーションを作成します。最終的に完成するプロセスについては、最終構成を参照してください。

  1. Capital Improvementをクリックします。

  2. 作成 を選択し、 新規アプリケーション をクリックします。

  3. アプリケーション名を PurchaseRequisition とします。

  4. 作成 をクリックします。

言語の変更

  1. 右上のメニューをクリックします。

  2. デフォルトは英語なので、これを日本語に変更します。 他の言語を追加 をクリックします。

  3. 左側の日本語を選択して>をクリックし、右側の英語を選択して<をクリックします。

  4. OKをクリックします。


プロセスの作成

このハンズオンでは、General ForemanがWebの入力画面から入力した内容を、Deputy Managerが確認し、承認を行うプロセスを作成します。

  1. プロセス タブを選択します。

  2. フォーム承認パターン を選択します。

  3. プロセスの名前をPurchaseRequistionとし、 Create をクリックします。

  4. PurchaseRequistionプロセスが作成されます。 PurchaseRequistion をクリックします。

    下図のような画面が現れます。この画面でプロセスを定義していきます。


スイムレーンの作成

プロセスに必要な役割を決定し、そのロールをスイムレーンとして定義します。

  1. Process Ownerというスイムレーン名をクリックし、 General Foreman に変更します。

  2. Process Reviewerのスイムレーン名を Deputy Manager に変更します。

  3. ページ下部の+マークからスイムレーンを追加できます。

  4. 追加したスイムレーンの名前をProcess Owner からFinanceに変更します。

  5. スイムレーンを選択し、ゴミ箱のマークをクリックすると、スイムレーンを削除できます。 Finance のスイムレーンを削除しましょう。


リクエスト送信アクティビティの実装

入力画面のフレームを作成します。

  1. Submit Request をダブルクリックし、タイトルを購買申請に変更します。

  2. 購買申請 のアイコンをダブルクリックします。

  3. タイトルを 購買申請フォーム と指定します。

  4. フォームの右側にある+をクリックします。

  5. フォーム名として PurchaseRequisitionUI を入力し、 作成 をクリックします。

注意 : こまめに 保存 ボタンをクリックしておくことをおすすめします。


フォームの実装

入力画面を作成します。

アプリケーションのアクティブ化後、作成した入力画面からプロセスを開始できます。

  1. 購買申請 をクリックし、右側のアイコンをクリックして、 フォームを開く を選択します。

  2. フォーム作成画面が現れます。

  3. 以下の表に従ってコンポーネントを配置します。

    コンポーネント 名前 ラベル
    入力テキスト ProjectName プロジェクト名
    入力テキスト ProjectID プロジェクトID
    日付 ProjectStartDate プロジェクト開始日
    日付 ProjectExpectedEndDate プロジェクト終了予定日
    テキスト領域 ProjectDescription プロジェクトの概要
    入力テキスト RequisitionID 申請番号
    日付 RequisitionDate 申請日付
    ItemTable 購買申請品目リスト
    金額 Total 合計金額

    なお、画面作成にあたっての注意点は以下の通りです。

    • コンポーネントの名前は必ず半角英数字を使用する
    • ラベルは日本語でもよい
    • バインドはコンポーネント名に従って自動的に作成されるため、手を付けない

  4. 画面コンポーネントの設定を変更します。
  5. (オプション)「プレビュー」ボタンを押すと、作成したフォームの動作を確認できます。


アクティビティの名称変更

アクティビティ名を変更します。

  1. Approve Requestアクティビティをクリックし、「リクエストの承認」アクティビティへ名前を変更します。

    ➡︎

  2. Resubmitアクティビティをクリックし、「再送信」アクティビティへ名前を変更します。

    ➡︎

  3. FulFillアクティビティをクリックし、「履行」アクティビティへ名前を変更します。

    ➡︎


リクエストの承認アクティビティの設定

アクティビティと、先ほど作成したWebフォームを紐づけます。

  1. リクエストのアクティビティをクリックし、右に出るメニューアイコンから プロパティを開く を選択します。

  2. フォーム の虫眼鏡アイコンをクリックします。

  3. 先ほど作成した、PurchaseRequisitionUIを選択し、 OK をクリックします。


再送信アクティビティの設定

  1. リクエストの承認アクティビティと同様に、 再送信 アクティイビティにて、作成したPurchaseRequisitionUIを指定します。

履行アクティビティの設定

このハンズオンでは、「履行」のアクティビティをドラフトとして取り扱います。

ドラフトを使うと、すべてのアクティビティの定義が完了していなくても、プロセスの一部をテスト・実行できます。

  1. プロパティを開きます。

  2. ドラフトのチェックボックスをONにします。

  3. この設定で、履行アクティビティはグレーに変わります。

  4. ここまで作成した内容を保存しておきます。


承認ゲートウェイの実装

ゲートウェイを定義することによって、フローを分岐および統合させることが出来ます。

このハンズオンでは、「リクエストの承認」アクティビティの承認結果に応じて、フローを変更する処理を設定します。

その他のゲートウェイの種類については、以下ガイドを参照してください。

Oracle Integration Cloud

https://docs.oracle.com/en/cloud/paas/integration-cloud-um/user-processes-um/controlling-process-flow-using-gateways.html#GUID-9E5FAFE6-01D2-45A4-9505-2A885DD18BDB

Autonomous Integration Cloud

https://docs.oracle.com/en/cloud/paas/integration-cloud/user-processes/controlling-process-flow-using-gateways.html#GUID-9E5FAFE6-01D2-45A4-9505-2A885DD18BDB

  1. 「リクエストの承認」アクティビティをクリックします。

    アクションの内容を確認することで、「リクエストの承認」結果として返却する値を確認できます。

    「リクエストの承認」アクティビティは『APPROVE』または『REJECT』を返却します。

  2. ゲートウェイからの分岐 No をクリックします。

  3. 条件 の鉛筆アイコンをクリックします。

  4. 式エディタに、
     TaskOutcomeDataObject != "APPROVE"
    

    と設定します。TaskOutcomeDataObjectは変数リストで選択し、 式に挿入 をクリックします(直接記述することもできます)。

  5. 検証 をクリックして、式が構文上問題ないことを確認します。

  6. OKをクリックします。

データアソシエーション

購買申請、リクエストの承認、再送信の各アクティビティでフォームとプロセス・データ・オブジェクト間でデータをマッピングします。この作業をデータ・アソシエーションと呼びます。

このハンズオンでは、アクティビティとフォームを紐付けたことで、自動的にデータ・アソシエーションが完了しています。そのため、設定内容を確認するだけにとどめます。

  1. 購買申請アクティビティで データ・アソシエーションを開く を選択します。

  2. 以下の画面が開き、既にデータ・アソシエーションが完了していることがわかります。右側のデータ・オブジェクト側でpurchaseRequisitionUIDataObjectを展開し、画面の項目(formArg)と一致していることを確認してください。

  3. 設定変更せず、 取消 をクリックします。

  4. 他のアクティビティでも既にデータ・アソシエーションが完了していることを確認してください。


テストモードへのアプリケーションのアクティブ化

では、作成したプロセスを検証してみましょう。

  1. テスト アイコンをクリックします。 現在のアプリケーション検証に成功しました と表示されていればアクティブ化が可能です。

  2. アクティブ化 をクリックします。

  3. クリック後、 テスト用にアクティブ化 というダイアログが出ます。この中で、 自分を全てのロールに追加 というチェックボックスが出てきますが、このチェックは外さずに、 アクティブ化 をクリックしてください。この設定を有効化しておくと、テストモードでは、各スイムレーンにアクティブ化時に操作しているユーザーを割り当てるため、ユーザーの切り替えの手間を省くことができます。

  4. アプリケーションのアクティブ化が成功することを確認してください。


テストモードでのアプリケーション実行

  1. アクティブ化完了後、 テスト・モードで試行 をクリックします。

  2. PRというアイコンが存在するので、このアイコンをクリックします(背景色は環境によって変わります)。

  3. PurchaseRequisitionUIが現れますので、適宜入力します。以下は入力例です。

  4. 入力が完了したら、 送信 を押します。

  5. My Tasks をクリックします。

  6. 先ほど送信したPurchaseRequisitionが1個表示されているはずです。これをクリックします。

  7. 入力した内容が正しく表示されていることを確認します。その上で、APPROVE/REJECTのいずれかを選択し、クリックします。 APPROVE すると、プロセスは終了します。REJECTすると、再送信アクティビティに遷移します。今回は APPROVE を選択します。

  8. 先ほど実行したプロセスインスタンスの状況を確認するため、 Processes をクリックします。

  9. フィルターアイコンをクリックします。

  10. 左側のステータスから、 Completed にチェックを入れます。

  11. 先ほど完了したプロセスインスタンス(PurchaseRequisition)が現れるので、この行をクリックします。

    グラフィカル・ビューでプロセスのどの経路を通ったかがわかります

  12. ツリー・ビュー にすると、各アクティビティでのデータの出入りがわかります。

  13. 例えば、 Approve RequestInstance entered the activity をクリックすると、XML形式でどのようなデータが流れてきて、フォームに入るのかがわかります


本番モードへのアプリケーションアクティブ化

作成したプロセスをテストモードで実行して問題がないことを確認後、本番環境へアクティブ化します。

  1. Processの編集画面に戻ります。

  2. 本番モードへのアクティブ化にあたっては、データベースに永続化して公開する必要があります。 公開 をクリックします。

  3. ダイアログでコメントを入力し、 公開 をクリックします。

  4. アクティブ化 をクリックします。

  5. 新規バージョンのアクティブ化 をクリックします。

  6. ウィザードに従ってアクティブ化を進めます。

    • バージョンの選択 スナップショットは最終公開バージョン
    • アプリケーションは正常に検証されました が表示されたことを確認し、 オプション をクリック
    • リビジョンIDは1.0、オーバーライド、デフォルトを強制使用にチェックを入れて、 アクティブ化 をクリック

    • アプリケーションは正常にアクティブ化されました が表示されたことを確認し、 終了 をクリック


本番モードでのアプリケーション実行

  1. Process Workspaceを開き、Integration Cloudのトップページから My Tasks をクリックします。

  2. Workspace をクリックします。

  3. テストモードとは異なり、本番モードでは、この時点では、ユーザーやグループがスイムレーンに割り付けられていません。そのため、スイムレーン(=ロール)にユーザーやグループを割り付ける必要があります。

    • 画面左のメニューから 管理 を選択します。

    • 検索ボックスに PurchaseRequisition を入力し、設定したいロールのみを表示します。

    • 今回ロールにユーザーもしくはグループを割り付ける対象のロールと割り付けるユーザーは以下の通りです。

      ロール 割り当てるユーザーもしくはグループ
      PurchaseRequisition.Deputy Manager ご自身のユーザーアカウント
      PurchaseRequisition.General Foreman ご自身のユーザーアカウント
  4. ユーザーやグループの割り付け方法は以下の通りです。

    • ユーザーやグループを割り付けたいロールを選択した状態で、 メンバーの追加 をクリック

    • ユーザー、もしくはグループを検索し、割り付けたいユーザーもしくはグループにチェックを入れ、選択済として表示されていることを確認してから、 OK をクリック(複数ユーザーやグループを追加することもできる)。

    • 保存 をクリック

  5. 左のメニューからWorkspaceのホーム画面に戻ります。

  6. 左のメニューから 自分のアプリ をクリックします。

  7. テストモードの場合と同様、丸囲みのPRを確認できるはずです。これをクリックして、プロセスを開始します。以後はテストモードの場合と同様です。