オーケストレーション(プロセス定義・フルフィルメント)
オーケストレーションは次の要素で構成されます。
| 要素 | 内容 | 設定タスク |
|---|---|---|
| オーケストレーション・プロセス | ステップの並び。ステップ番号順(例:100 → 600)に実行 | Manage Orchestration Process Definitions |
| ステップ | 1 つのサービスを呼ぶ処理単位。依存関係(分岐)、計画(リードタイム)、変更時の動作を持つ | 同上 |
| タスクタイプ/サービス | Schedule、Reservation、Shipment、Invoice などの仕事の種類と、それを実行するサービス | Manage Task Types |
| タスク・サービス | フルフィルメント・システムからの応答や更新を解釈する | — |
| 割当ルール | どの明細にどのプロセスを使うか | Manage Orchestration Process Assignment Rules |
| ステータス | タスク・明細・プロセスのステータスと条件 | Manage Status Values、Manage Task Status Conditions |
事前定義の ShipOrderGenericProcess のステップは次のとおりです。
| ステップ | サービス | 内容 |
|---|---|---|
| 100 Schedule | Create Scheduling | 納期を満たすスケジュールを GOP で作成 |
| 200 Create Reservation | Create Inventory Reservation | 在庫を引当(予約) |
| 300 Create Shipment Request | Create Shipping | 出荷依頼を作成 |
| 400 Wait for Shipment Advice | Wait for Shipment | 出荷確認を待つ |
| 500 Create Invoice | Create Billing Lines | AR 向けの請求明細を作成 |
| 600 Wait for Invoice | Wait for Billing | AR での請求完了を待つ |
事前定義プロセス
Section titled “事前定義プロセス”| プロセス | 含まれる主な処理 | 用途 |
|---|---|---|
| ShipOrderGenericProcess | スケジュール、引当、出荷、請求 | 在庫からの通常出荷 |
| ReturnOrderGenericProcess | 返品受入、請求(クレジットメモ) | 返品 |
| OrderFulfillmentGenericProcess | 条件付きスケジュール、供給の要求、一時停止、バック・ツー・バック/ドロップシップ/倉庫出荷の分岐、請求 | ドロップシップ・バック・ツー・バックを含む受注 |
| DOO_ScheduleShipInvoice | スケジュール、出荷、請求 | 大量の受注の処理 |
設定・実装の手順
Section titled “設定・実装の手順”公式ガイドの順序で設定します。ナビゲーションは「Setup and Maintenance > Order Management オファリング > 機能領域 Orders」です。
- タスクタイプ(Manage Task Types):独自の業務ステップが必要なら独自タスクタイプを作ります。各タスクタイプはフルフィルメント・システムと通信するサービスを参照します。
- プロセスの作成(Manage Orchestration Process Definitions):事前定義プロセスをコピーして修正します。コピー前にコピー元を検証し、エラーを解消しておきます。
- 変更受注のビジネスルール:変更が起きたときに各ステップで何をするかを決めます(後述の変更管理)。
- スケジュールと計画(26D 以降は計画機能が利用不可。上記の注意を参照):ステップごとの既定リードタイム、条件付きのリードタイム(ビジネスルール)、計画時に期待するステータスなどを設定します。
- ジェパディ(計画機能に依存するため、26D 以降の扱いは公式で確認):ジェパディ閾値とジェパディ優先度で、遅延リスクを低・中・高で評価します(Manage Jeopardy Thresholds、Manage Jeopardy Priorities)。
- ステータス:Manage Status Values でオーケストレーション・プロセス・クラスを選び、そのクラスのステータスをタスクに追加します。フルフィルメント・システムごとにステータス値が違う場合(例:SCHEDULED と FULFILLMENT_SCHEDULED)は両方を登録します。
- リリース・デプロイ:プロセスをリリースしてデプロイし、OM 全体で使えるようにします。
- 割当ルール(Manage Orchestration Process Assignment Rules):受注タイプや品目などの条件で、明細に割り当てるプロセスを決めます。
計画と再計画
Section titled “計画と再計画”パラメータ Enable Orchestration Process Planning and Calculate Jeopardy を有効にすると、OM はプロセスを計画し(各ステップの完了予定日)、ジェパディを計算します。再計画のタイミングは次から選びます。
- 変更時:受注が変更されたときに再計画
- ステップ完了後:各ステップの完了直後に再計画
- イベント時:受注システムからの更新などのイベントで再計画。定期的にはスケジュール済プロセス Plan Orchestration Processes で更新(26D 以降は利用不可)
Replan Instantly(即時再計画)は性能に影響するため、優先度の高い受注やジェパディ閾値が 1 日未満の受注に限って使います。
一時停止(Pause)と保留
Section titled “一時停止(Pause)と保留”- 一時停止:プロセスに一時停止のステップを入れ、時間の経過・イベント・依存関係の解消まで待たせます(公式トピック:Pause Orchestration Processes for Time / for Events / for Dependencies)。待機中のタスクはスケジュール済プロセス Release Pause Tasks で解除できます。
- 保留:保留をかけるとプロセスの進行が止まります。保留の適用・解除は作業領域、REST、拡張から行えます(受注入力)。
変更管理(Change Orders)
Section titled “変更管理(Change Orders)”受注の変更は、オーケストレーション・プロセスが自動で吸収するように設計します。
- 変更とみなす属性を決めます(Manage Order Attributes That Identify Change)。
- 変更が来たら、プロセスは補償パターン(compensation pattern)に従って、完了済みのステップを取り消す・やり直す・何もしない、を判断します。公式の例では、出荷前に数量が変わると、フルフィルメントをロールバックして再スケジュールし、新しい出荷依頼を送ります。
- 変更のコスト(Measure the Cost of Change)を設定すると、変更の影響度を評価できます。
- 変更を外部システムに知らせる場合は、ビジネスイベントのトリガー・ポイント(Manage Business Event Trigger Points)を設定します。
処理制約(Manage Processing Constraints)は、そもそも変更を受け付けるかどうかを決めます。たとえば、請求に連携済みの明細の数量は変更できません。制約エンティティは Order Header(提出前)、Order Line(提出前)、Order Fulfillment Line(提出後)で、変更後は Generate Constraint Packages で反映します。
外部フルフィルメント・システムとの連携
Section titled “外部フルフィルメント・システムとの連携”OM は、明細を複数のフルフィルメント・システム(外部の倉庫システムや別の ERP など)に振り分け、各システムの応答をまとめて受注システムに返せます。
- Manage Upstream and Fulfillment Source Systems:受注システムとフルフィルメント・システムを登録します。
- Manage External Interface Web Service Details:フルフィルメント・システムの URL・資格情報・証明書を登録します(コネクタ)。
- Manage External Interface Routing Rules:どの品目・条件の依頼をどのシステムに送るかのルーティング・ルールを設定します。
- フルフィルメント・システムは、タスク・サービスを通じて応答(出荷完了など)を OM に返します。
下流に独自の項目を渡したい場合は、拡張フレックスフィールドをサービス・マッピングに追加し、値の加工が必要なら統合アルゴリズム(Integration Algorithm)で処理します。たとえば、出荷料金を AR で通常明細として課税するには、Integration Algorithm for Sales Order Charges で LineType を LINE にし、サービス・マッピング FulfillmentIntegration に属性を追加します(機能 Enable Custom Payloads for Downstream Integration も有効化)。サービス・マッピングの編集にはサンドボックスが必要です。
ドロップシップとバック・ツー・バック
Section titled “ドロップシップとバック・ツー・バック”ドロップシップ(Drop Ship)
Section titled “ドロップシップ(Drop Ship)”仕入先が顧客に直送する流れです。
- OM がプロセスを割り当て、スケジュールのタスクで GOP に依頼します。GOP はソーシングルール・仕入先カレンダー・能力から仕入先と仕入先サイトを選びます。
- 購買依頼組織を Supply Chain Financial Orchestration から取得し、Procurement に購買依頼を送ります。パラメータ Preparer for Procurement の設定が必要です。
- Procurement が購買依頼・購買オーダーを作成します。明細は Requisition Created → Awaiting Shipping と進みます。
- 仕入先が顧客に出荷し、Supplier Portal で ASN を登録します。受入では論理的な受入が作られます。
- Financial Orchestration がドロップシップの財務フローを実行し、原価管理が受入会計と原価計算を行います。
- OM は ASN を出荷確認として扱い、AR で顧客に請求します。
バック・ツー・バック(Back-to-Back)
Section titled “バック・ツー・バック(Back-to-Back)”受注ごとに供給(購買・製造・移動)を手配し、その供給を出荷まで受注に引き当てておく流れです。GOP が受注に対して供給を予約し、Supply Chain Orchestration が供給オーダーを作成します。製造(make)の場合は、GOP 用に作業定義を収集しておかないと供給オーダーが作られません。
移動オーダー
Section titled “移動オーダー”同じ組織内の拠点間で品目を移す取引です。移動オーダーは Supply Chain Orchestration で作成され、OM にインポートされて処理されます。
オーケストレーションが止まっている明細を探す SQL の例です(公式ドキュメントの照会例をもとに、待機中の有効なタスクがない提出済み明細を抽出)。
SELECT h.source_order_number, l.display_line_number, f.fulfill_line_number, f.status_code, f.last_update_dateFROM doo_headers_all hJOIN doo_lines_all l ON l.header_id = h.header_idJOIN doo_fulfill_lines_all f ON f.line_id = l.line_idWHERE h.submitted_flag = 'Y'AND f.open_flag = 'Y'AND f.status_code = 'NOT_STARTED'AND f.creation_date >= :P_FROM_DATEAND NOT EXISTS ( SELECT 1 FROM doo_wait_task_details w JOIN doo_orchestration_groups g ON g.group_id = w.group_id WHERE w.status_code = 'Active' AND g.status = 'ACTIVE' AND g.transaction_entity_name = 'DOO_ORDER_FLINES_V' AND g.transaction_entity_id = f.fulfill_line_id)ORDER BY h.source_order_number抽出した受注は、作業領域のエラー回復の操作(公式トピック:Recover Sales Orders That Are Locked or Not Started)で対処します。運用では、この SQL を BI Publisher のレポートにして日次で確認すると、止まった受注の早期発見に役立ちます。
落とし穴とベストプラクティス
Section titled “落とし穴とベストプラクティス”- ステップは少なく:大量処理には DOO_ScheduleShipInvoice のような簡潔なプロセスを使います。
- ステータス値を外部システムに合わせる:フルフィルメント・システムが返すステータスをすべて登録しておかないと、応答を正しく解釈できません。
- ジェパディは計画とセット:ジェパディを使うには、ステップのリードタイムと計画の有効化が前提です。
- テストは変更系を重視:出荷前・出荷後・請求後の数量変更や取消で、補償パターンと処理制約が期待どおり動くかを確認します。
試験対策ポイント
Section titled “試験対策ポイント”- 対応する試験:受注 模擬テスト の「高度なサプライチェーン・フルフィルメント手法の実装(Implementing Advanced Supply Chain and Fulfillment Techniques)」
- 事前定義プロセス 4 種の用途と、ShipOrderGenericProcess のステップとサービス
- 「コピーして修正」「処理中の受注には効かない」「移行時に名前を変えない」
- 設定順序(タスクタイプが最初、デプロイが最後、割当ルールはデプロイ後)
- 処理制約の制約エンティティと Generate Constraint Packages
- ドロップシップの登場人物(GOP、Supply Chain Financial Orchestration、Procurement、Supplier Portal、受入、AR)とステータス
- Replan Instantly の使いどころ(26C まで。26D 以降は計画機能自体が利用不可)
公式ドキュメント
Section titled “公式ドキュメント”- Oracle Fusion Cloud Order Management 25D What’s New(Replaced and Removed Features)
- Overview of Orchestration Processes
- Guidelines for Setting Up Orchestration Processes
- Roadmap to Set Up Order-to-Cash
- How Drop Ship Works in Order Management
- Use Order Management to Fulfill Different Types of Sales Orders
- Integrate Order Management with Oracle Receivables
本サイトは学習目的で個人が作成した非公式の教材であり、Oracle Corporation およびその関連会社とは関係ありません。内容の正確性は保証しません。最新の仕様・試験範囲は必ず公式ドキュメントと Oracle University の情報で確認してください。
模擬テストの問題は公開されている出題範囲(Exam Topics)と公式ドキュメントをもとに独自に作成したもので、実際の試験問題ではありません。
Oracle、Java、MySQL は Oracle Corporation およびその子会社、関連会社の米国およびその他の国における登録商標です。その他の製品名・会社名は各社の商標です。
© 2026 Fusion ERP 実装ラボ