連携 / ERP / Oracle Fusion Cloud
Oracle Fusion Cloud連携ガイド SkyPlanner APSで生産スケジューリングを行うために
このOracle Fusion Cloud連携ガイドでは、パートナーやIT部門向けに、Oracle Fusion Cloud ManufacturingとSkyPlanner APSを接続する方法を解説します。SkyPlannerはOracle標準のRESTリソースを使い、Oracle Fusion Cloudと双方向にデータを連携します。
- 製造指図とその工程、作業定義、作業区、生産リソース、カレンダー、品目、品目構成、手持在庫残高、購買オーダーを取り込みます。
- 開始予定日時と完了予定日時を、製造指図の各工程に書き戻します。
- 作業者が確定した実績を、工程取引とリソース取引として書き戻します。
- スケジュールが変更されるたびに、SkyPlannerのWebhookが変更内容をプッシュ通知します。
導入時には、SkyPlannerチームがお客様のOracle Fusion Cloud環境に合わせて連携を設定し、稼働開始後もサポートします。このガイドは、連携作業に参加するパートナーや開発者、またはSkyPlannerのドキュメント化されたREST API(APIリファレンス)を使って自社で連携を構築する方を対象としています。
Oracle Fusion Cloudの連携インターフェース
Oracle Fusion Cloudには、外部の生産スケジューラとデータをやり取りする方法が三つあります。
- Oracle Fusion Cloud SCMのREST API。ベースパスは
/fscmRestApi/resources/11.13.18.05/です。スケジューラが使用するリソースは、workOrders(子リソースはWorkOrderOperation、WorkOrderOperationResource、WorkOrderOperationMaterial)、processWorkOrders、workDefinitions、workCenters、productionResources、calendars、itemsV2、itemStructures、inventoryOnhandBalancesです。進捗はoperationTransactions、resourceTransactions、materialTransactionsに登録します。購買オーダーはProcurement REST APIのpurchaseOrdersから取得します。(RESTエンドポイント) - File-Based Data Import (FBDI)。Import Work Ordersプロセスは、テンプレートから製造指図とその工程、工程リソースを作成または更新します。Import Work Order Resource Transactionsはリソース実績を取り込みます。Oracleは取り込みのタイミングについて、”This option isn’t suitable for importing manufacturing data on a real-time basis.”(この方法は、製造データをリアルタイムで取り込む用途には適していません)と明記しています。(出典)
- Oracle Integration (OIC)。Oracleの連携プラットフォームで、Fusionと他のシステム間のデータフローを実行します。Oracle Integrationには、Oracle Fusion Cloud ManufacturingのWork Order Status Changeイベントを受信するレシピがあります(出典)。すでにOICを運用している場合に利用します。
リアルタイムのスケジューリングでは、RESTを主な連携手段とします。FBDIはマスタデータの初回取り込みに適しています。
認証とアクセス
- Oracle RESTのセキュリティ。“Fusion Applications REST APIs use a global Oracle Web Services Manager (OWSM) security policy called Multi Token Over SSL RESTful Service Policy.”(Fusion ApplicationsのREST APIは、Multi Token Over SSL RESTful Service PolicyというOracle Web Services Manager (OWSM)のグローバルセキュリティポリシーを使用します)。SSL経由のBasic認証と、SAML 2.0ベアラートークンなどによるトークンベースの認証に対応しています。(クイックスタート)
- 連携用ユーザー。連携専用のOracleユーザーを作成します。製造指図、作業定義、在庫、取引に必要な権限を付与するジョブロールを設定し、アクセス先は連携対象の製造組織に限定します。
- ページング。Oracleでは、SCM RESTを一回呼び出した際に返されるレコード数に上限があります。
limitとoffsetを使って読み取り、組織とステータスで絞り込んでください(出典)。
SkyPlanner側のREST APIでは、Authorization-TokenヘッダーにAPIトークンを設定して認証します(SkyPlanner Settings > API)。API仕様はSwagger/OpenAPIで公開しています。最初の呼び出し手順は、連携チュートリアルで確認できます。
イベントとポーリング
Oracle側のデータはポーリングで取得します。条件を指定したRESTクエリで、新規・変更済みの製造指図、リリース済みステータスへの変更、手持在庫、購買オーダーを取得します。取得間隔は工場ごとに設定し、製造指図は数分おき、在庫は毎時といった頻度で実行します。Oracle Integrationを運用している場合は、Work Order Status Changeイベントをきっかけに即座に読み取ることもできます。
SkyPlannerは状態やスケジュールが変わるとWebhookを送信するため、書き戻しはイベント駆動で行います。
データマッピング
| Oracle Fusion Cloudのオブジェクト(RESTリソース) | SkyPlannerのオブジェクト | 連携方向 | 連携頻度 |
|---|---|---|---|
品目(itemsV2)、単位 | 製品と材料 | Oracle → SkyPlanner | 初回取り込み後、ポーリング |
品目構成(itemStructures) | 製品構成、下位製品、製品ごとの材料 | Oracle → SkyPlanner | 初回取り込み後、変更時 |
作業定義(workDefinitions):工程、工程リソース、使用量、Basis Type | 所要時間、段取り時間、後片付け時間を含む工程 | Oracle → SkyPlanner | 初回取り込み後、変更時 |
作業区(workCenters)、設備・作業者の生産リソース(productionResources) | リソース、リソースグループ、人員、作業効率 | Oracle → SkyPlanner | 初回取り込み後はまれに更新 |
カレンダーとシフト(calendars、シフト例外) | シフトと非稼働日 | Oracle → SkyPlanner | 毎日、またはSkyPlanner側でシフトを管理 |
| 製造組織 | 工場ごとのリソースグループ | Oracle → SkyPlanner | 初回取り込み |
WorkOrderOperationとWorkOrderOperationMaterialを含む製造指図(workOrders、processWorkOrders) | 納期と材料所要量を含むオーダー・作業 | Oracle → SkyPlanner | 数分おきにポーリング |
手持在庫残高(inventoryOnhandBalances) | 在庫残高 | Oracle → SkyPlanner | 毎時またはスケジューリング実行時にポーリング |
確約納期を含む購買オーダー(purchaseOrders) | 購買オーダー、納入日別の入荷予定材料 | Oracle → SkyPlanner | 毎時またはスケジューリング実行時にポーリング |
WorkOrderOperationのPlannedStartDate、PlannedCompletionDate(PATCH) | 作業ごとの開始・終了予定日時 | SkyPlanner → Oracle | スケジュール変更時、SkyPlannerのWebhook経由 |
WorkOrderOperationResourceの日時(PATCH) | 作業ごとのリソース割り当て | SkyPlanner → Oracle | 連携する場合はスケジュール変更時 |
operationTransactions (POST) | 工程ごとの完了数量 | SkyPlanner → Oracle | 実績確定のたび |
resourceTransactions (POST) | 時間実績:作業者の作業時間と機械の稼働時間 | SkyPlanner → Oracle | 連携する場合は実績確定ごと、またはシフトごと |
| Oracle Fusion Cloudにはなし | 段取り時間マトリクス、数量制約のあるリソースとしての工具、代替機械・人員 | SkyPlannerで管理 | 導入時に設定 |
連携パターン
1. マスタデータの初回取り込み。品目、品目構成、作業定義、作業区、生産リソース、カレンダーをRESTで読み取るか、FBDIで抽出したデータから初回にまとめて取り込みます。作業区のマッピング方法は明確に決めておきます。同じリソースに属する四台の機械がある作業区は、一つのリソースグループ、または四つのリソースに対応させます。各製造組織をリソースグループにすることで、すべての工場を一つの計画で扱えます。
2. 製造指図の同期。リリース済み・未リリースの製造指図を工程および資材とともに読み込み、未完了の購買発注も取得します。SkyPlannerは発注済み資材を購買発注の納入日に使用可能とみなし、購買発注がDeliveredになると在庫を更新します。
スケジューリングの対象は製造指図であり、Supply Planningの計画オーダーではありません。計画オーダーは、まずOracleで製造指図に変換します。
3. スケジュールの書き戻し。エンジンが作業を配置または移動すると、SkyPlannerのWebhookを起点に、workOrders/{WorkOrderId}/child/WorkOrderOperation/{WorkOrderOperationId}に対してPlannedStartDateとPlannedCompletionDateを指定したPATCHを実行します。Oracleには次のルールがあります。”The planned start date must not occur before the start date of the work order or after the finish date of the work order.”(計画開始日は、製造指図の開始日より前、または終了日より後には設定できません。)(出典) そのため、新しいスケジュールが製造指図の日付範囲を外れる場合は、連携処理でまず製造指図ヘッダーの日付をPATCHで更新し、その後に工程を更新します。
4. 製造現場からの実績報告。作業者はSkyPlanner Mobile ConfirmationsまたはProduction Timerで作業を記録し、その時間記録に基づいてスケジュールが最新に保たれます。完了数量はoperationTransactionsに、作業時間と機械稼働時間はresourceTransactionsに送信されます。すでに工場でOracleに実績を報告している場合は、SkyPlannerがその進捗を読み込みます。
5. データの管理責任と競合時のルール。本稼働前に、以下を文書化してください。
| データ | 管理元 |
|---|---|
| 品目、品目構成、作業定義、数量、製造指図のステータス | Oracle Fusion Cloud |
| 工程順序、開始・完了日時、リソースの割り当て | SkyPlanner |
| 段取り時間マトリクス、工具と作業者の要件、代替リソース | SkyPlanner |
| シフトと非稼働日 | 要件定義で選定した一つのシステム |
| リソース、工程、資材のトランザクション | Oracle。Oracleで直接入力するか、SkyPlannerの時間記録から送信 |
工程日付の書き込み元は一つに絞ってください。SkyPlannerはOracleのスケジューリング作業領域を必要とせず、Production Schedulingに代わって計画日付を書き込みます。Production Schedulingからも引き続きスケジュールをリリースする場合は、その対象組織とSkyPlannerでスケジューリングする組織を分けてください。
一般的な導入手順
導入は、大企業でも通常、オンボーディング開始から数週間で完了します。その前に、OracleからCSVまたはExcelで出力した作業区、作業定義、未完了の製造指図を使い、30日間の無料トライアルでスケジュールを検証してください。
- マッピング。マッピング表、データの管理責任、対象組織、同期頻度、トランザクションを書き戻すかどうかを確定します。
- Oracleへのアクセス。連携用ユーザーとロールを作成します。まず本番以外のOracle環境でテストしてください。
- 初期データの読み込み。品目、品目構成、作業定義、作業区、生産リソース、カレンダーを読み込みます。
- 製造指図と購買発注の同期。フィルタリング、ページング、再試行を組み込んだポーリングを行います。
- SkyPlannerでの制約設定。段取り時間マトリクス、工具、作業ごとの作業者数、代替の機械や人員を設定します。
- スケジュールの書き戻し。SkyPlannerのWebhookを起点にPATCHを実行します。トランザクションの書き戻しを選択した場合は、それも送信します。
- 並行テスト。現行の計画と並行してSkyPlannerを稼働させ、日付を比較し、マスタデータを修正します。
- 本稼働。データの一致を確認したら、工場ごとに書き戻しを有効にします。
Oracle Fusion Cloud連携で事前に検討すべき点
- 標準スケジューラの動作。Oracleの制約なしのエンジンは、作成時と”certain update actions.”(特定の更新操作時)に実行されます。どの更新で日付が再計算されるかを利用環境でテストし、工程日付の最終的な書き込み元をSkyPlannerにしてください。
- 製造指図の日付範囲。工程日付は製造指図の開始日から完了日までの範囲内でなければなりません。まずヘッダーをPATCHで更新してください。
- Basis Type。リソース使用量が単位当たりの値になるのは、Basis TypeがVariableの場合だけです。Fixedの場合は、工程ごとの固定時間です。インポート時に換算しないと、すべての所要時間が誤った値になります。
- ディスクリート製造とプロセス製造。ディスクリート製造の工場では
workOrdersを、プロセス製造の工場ではprocessWorkOrdersを使用します。両方の製造方式を運用している場合は、両方をマッピングしてください。 - ページング。OracleではREST呼び出しごとのレコード数に上限があります。すべてのクエリでページングを行い、組織とステータスで絞り込んでください。
- 四半期ごとの更新。Oracleは四半期ごとにFusionを更新します。パス内でRESTのバージョンを固定し、更新のたびに再テストしてください。
- ステータスのルール。Pending Approvalまたはクローズ済みの製造指図には、新しい日付を書き込まないようにします。読み込み時にフィルターで除外してください。
Oracle Fusion Cloud連携の設定・サポート体制
- SkyPlannerチームがオンボーディング中に設定し、本稼働後もサポートします。対象は、合意したRESTリソースと組織です。Oracle Fusion Cloudの運用方法は工場ごとに異なり、その運用ノウハウをここで設定に反映します。
- お客様のOracleパートナーも参加できます。パートナーはお客様の組織、ロール、拡張機能を把握しており、SkyPlannerチームと協力して連携用ユーザー、ロール、必要なOracle Integrationのフローを設定できます。
- 自社の開発者による拡張も可能です。APIトークンでSkyPlannerのREST APIにアクセスして開発できます。APIトークンがあれば着手でき、必要に応じてSkyPlannerチームが支援します。連携の技術資料はSkyPlanner連携ドキュメントをご覧ください。
SkyPlannerは5リソース込みで月額199 €から、月ごとの請求です。連携費用はお客様の業務プロセスと要件に合わせ、プラン料金とともに事前にお見積もりします。料金、Oracle Fusion Cloudと連携した、設備・人員の実際の能力に基づく生産スケジューリング、Oracle Fusion Cloudのページ、ERP連携の総合ページをご覧ください。NetSuiteをご利用ですか?NetSuite連携ガイドをご覧ください。
製造業のお客様によるSkyPlannerの評価
2時間毎週の作業時間を削減
「SkyPlannerによって、当社の生産計画はExcelの表計算から、リアルタイムの生産最適化へと進化しました。」
Kalle Kalliomäki、サプライチェーンスペシャリスト
UTU · 配電盤・開閉装置
生産計画にかかる作業時間を毎週2時間削減し、新しい作業待ちリストは数秒でラインに届きます。
+90%生産効率
「生産効率が90%向上しました。」
Abdul Rucyinga、IT責任者
Laboratory & Allied · 医薬品製造
生産効率が90%向上し、全リソースを対象とした三か月分の最適化計画を30分未満で作成できます。
99.2%納期遵守率
「SkyPlannerによってボトルネックを特定しやすくなり、生産管理の見通しが明確になりました。」
Toni Tuori、生産責任者
Piristeel · 屋根用安全設備・雨水排水システム
今年の納期遵守率は99.2%に達し、スケジューリングにかかる作業時間を一日当たり最大四時間削減しています。
1,000件単位の製造指図を自動スケジューリング
「生産をこれまでとは違う形で管理できるようになり、生産能力に対する理解もまったく別の水準に達しました。」
Hannu Ryynänen、CEO
Mamec · 産業用ミキサー、ポンプ、ハイテク製品の受託製造
数千件の製造指図を自動でスケジューリングし、組織全体で生産状況をリアルタイムに把握できます。
よくある質問
Oracle Fusion Cloudには製造指図用のAPIがありますか?
はい。Oracle Fusion Cloud SCMのREST APIには、工程、リソース、資材を子リソースとして持つworkOrdersと、プロセス製造向けのprocessWorkOrdersがあります。GET、POST、PATCHに対応しています。
計画日付はどのようにOracle Fusion Cloudへ書き戻されますか?
製造指図の子リソースWorkOrderOperationに対してPATCHを実行し、PlannedStartDateとPlannedCompletionDateを設定します。工程日付は製造指図の日付範囲内に収める必要があるため、必要に応じて先にヘッダーをPATCHで更新します。
作業者の実績報告はどのようにOracleへ送信されますか?
完了数量はoperationTransactionsに、作業時間と機械稼働時間はresourceTransactionsに送信されます。どちらもFusion ManufacturingでRESTのPOSTを受け付けるリソースです。
Oracle Fusion CloudはWebhookに対応していますか?
FusionはWork Order Status Changeなどのビジネスイベントを発行し、Oracle Integrationでサブスクライブできます。Oracle Integrationを使用しない場合は、工場ごとに設定した間隔でREST APIをポーリングします。SkyPlanner独自のWebhookは、スケジュールの変更が発生するたびにプッシュ通知します。
OracleパートナーはOracle Production SchedulingとSkyPlannerのどちらを提案すべきですか?
複数の工場をまたぎ、実際の生産能力を考慮した一つのスケジュールを自動で最新に保ちたいお客様には、SkyPlannerを提案してください。Production SchedulingはSupply Chain Planningのオファリングで有効化し、スケジューリング組織ごとに計算します。段取り替えルールを適用できるのは単一ユニットの設備のみです(Oracleのドキュメント)。SkyPlannerはSCM REST APIで接続し、自動で再計画を行い、段取り替え、工具、作業班、資材を計画します。ユーザー数は無制限で、月額199 €から利用できます。
連携を構築する前にSkyPlannerを試せますか?
はい。30日間の無料トライアルでは、OracleからCSVまたはExcelでデータを取り込み、最大20リソースまで試せます。クレジットカードは不要です。無料トライアルを開始するか、連携の要件定義について営業にご相談ください。