システム連携 / ERP / Acumatica Cloud ERP
Acumatica連携ガイド SkyPlanner APSによる生産スケジューリング
このガイドでは、パートナーやITチームに向けて、Acumatica Cloud ERP(Manufacturing Edition)とSkyPlanner APSを連携させる方法を説明します。SkyPlannerとAcumaticaは、次のように双方向でデータをやり取りします。
- 製造指図とその工程、作業区、機械、工具、シフト、在庫品目、発注書を取り込みます。
- 製造指図の各工程に開始予定日と終了予定日を書き戻し、指図を確定します。
- 作業者の作業時間記録を、労務実績および工程移動実績として返します。
- SkyPlannerのWebhookが、スケジュールの変更を発生時に通知します。
SkyPlannerチームが導入時にお客様のAcumatica環境に合わせて連携を設定し、本稼働後もサポートします。このガイドは、連携作業に参加するパートナーや開発者、またはSkyPlannerの公開REST API(APIリファレンス)を使って自ら開発する方を対象としています。
Acumaticaの連携インターフェース
連携には、Acumaticaに標準搭載されているインターフェースを使います。インスタンスに追加でインストールするものはありません。
- 契約ベースのREST API。エンドポイントはリリースに合わせてバージョン管理されます。Manufacturingエンドポイント(たとえば2026 R2では26.200.001)は、
ProductionOrder、OrderOperationDetail、BillOfMaterial、WorkCenter、Machine、Tool、Shift、WorkCenterCrewSchedule、LaborEntry、MoveEntry、MaterialEntryを公開します。Defaultエンドポイントでは、StockItem、PurchaseOrder、SalesOrderを扱います。URLの形式は{instance}/entity/{Endpoint}/{version}/{Entity}です。 - 同じエンドポイント上のアクション。
FirmProductionOrder、UndoFirmProductionOrder、ReleaseLaborEntry、ReleaseMoveEntry、ReleaseMaterialEntryは、画面上のボタンと同じロジックを実行します。 - OData。どのGeneric Inquiry(SM208000)もOData経由で公開できます。未完了の製造工程とその日付を取得するGeneric Inquiryが、一括読み取りでは最も高速です。
- プッシュ通知(SM302000)。Generic Inquiryまたは組み込みクエリを基に、追加・削除された行を指定のURLへ送信します。
- インポート・エクスポートシナリオ。CSVおよびExcelプロバイダーを使ってデータを一括取り込みできます。
エンティティとアクションの一覧は、Web Service Endpoints(SM207000)画面と、AcumaticaのRESTクライアントリポジトリで確認できます。
認証と利用上限
Acumaticaは、Connected Applications(SM303010)に登録したクライアントアプリケーションを通じて、OAuth 2.0とOpenID Connectを使用します。ドキュメントに記載されているフローは、Authorization Code、Implicit、Resource Owner Password Credentials、Hybridです。サーバー間連携では、必要最小限の権限を持つロールを割り当てた連携専用ユーザーを登録し、リフレッシュトークン付きのAuthorization Code、またはResource Owner Password Credentialsを使用してください。
利用上限はライセンスによって決まります。License Monitoring Console(SM604000)には、許可される毎分のAPIリクエスト数とAPIユーザー数が表示されます。
SkyPlanner側のREST APIはAPIトークン(SkyPlanner Settings > API)で認証し、仕様はSwagger/OpenAPIで公開されています。最初の呼び出し手順は、連携チュートリアルで説明しています。
データマッピング
| Acumaticaのオブジェクト(エンドポイント / 画面) | SkyPlannerのオブジェクト | 連携方向 | 頻度 |
|---|---|---|---|
StockItem(Default; Stock Items IN202500) | 製品と資材 | Acumatica → SkyPlanner | 初回に一括取り込み、以後は差分 |
BillOfMaterial(AM208000):資材、工程 | 製品構成、子製品、製品ごとの資材 | Acumatica → SkyPlanner | 初回に一括取り込み、以後は変更時 |
| BOMの工程:Setup、Run、Machine、Queue、Finish、Move Time | 工程とその所要時間、段取り時間、後片付け時間 | Acumatica → SkyPlanner | 初回に一括取り込み、以後は変更時 |
WorkCenter (AM207000), Machine (AM204500), WorkCenterSubstitute | リソース、リソースグループ、効率、代替リソース | Acumatica → SkyPlanner | 初回に一括取り込み、以後はまれに更新 |
Shift、Work Calendar(CS209000)、WorkCenterCrewSchedule | シフトと人員の稼働能力 | Acumatica → SkyPlanner | 毎日、またはSkyPlannerでシフトを管理 |
Tool (AM205500) | 数量に制約のあるリソースとしての工具 | Acumatica → SkyPlanner | 初回に一括取り込み |
ProductionOrderとそのOrderOperationDetail(Planned、Released、In Process) | 指図と作業、および納期、着手優先度、必要資材 | Acumatica → SkyPlanner | プッシュ通知、または数分ごとのポーリング |
PurchaseOrderの明細(Default) | 発注書と入荷予定日 | Acumatica → SkyPlanner | 毎時、またはスケジューリング実行時にポーリング |
| 品目ごとの倉庫在庫数量 | 在庫残高 | Acumatica → SkyPlanner | 毎時、またはスケジューリング実行時にポーリング |
OrderOperationDetail: StartDate, EndDate, WorkCenter | 工程ごとの開始予定、終了予定、割り当てリソース | SkyPlanner → Acumatica | スケジュール変更時にSkyPlannerのWebhookで通知 |
FirmProductionOrderアクション | 書き戻した日付を固定し、Acumatica APSによる変更を防止 | SkyPlanner → Acumatica | 各書き戻しの後に実行 |
LaborEntry、MoveEntryと、それぞれのリリースアクション | 作業時間記録、完了数量、作業者による実績報告 | SkyPlanner → Acumatica | 実績報告ごと、またはシフトごと |
| Acumaticaには該当なし | 段取り時間マトリクス、作業者の個別指定、複数作業者による作業 | SkyPlannerで管理 | 導入時に設定 |
連携パターン
1. マスタデータの初回取り込み。まず作業区、機械、工具、シフト、カレンダーを読み込み、次に在庫品目とBOMを読み込みます。複数の機械を持つ作業区を、一つのリソースグループとして各機械を個別のリソースにするか、作業区全体を一つのリソースにするかを決めてください。AcumaticaのBasis for Capacityを確認すれば、工場がどちらの考え方で能力を管理しているかが分かります。
2. 指図の同期。製造指図とその工程は、BOMではなく指図から読み込みます。工程は指図にコピーされ、計画担当者はそこで変更を加えるためです。未完了の指図と工程を取得するGeneric Inquiryにプッシュ通知を設定するか、ポーリングしてください。未入荷の発注明細も読み込みます。SkyPlannerは発注済み資材を発注書の入荷予定日に利用可能とみなし、発注書がDeliveredになると在庫を更新します。
3. スケジュールの書き戻し。エンジンが配置または移動したすべての工程について、SkyPlannerはOrderOperationDetailにStartDateとEndDateを書き戻します。代替作業区に移した場合は、作業区も書き戻します。その後、FirmProductionOrderを呼び出します。Acumaticaの説明:”When you run finite scheduling of production orders, the system does not reschedule the firmed production orders.”(製造指図を実際の能力制約に基づいてスケジューリングする際、確定済みの製造指図は再スケジューリングされません。)(出典)
4. 製造現場からの実績報告。作業者はSkyPlanner Mobile ConfirmationsまたはProduction Timerで作業を記録します。作業時間記録は、LaborEntry伝票(工程ごとの時間と完了数量)またはMoveEntry伝票(数量のみ)となり、対応するアクションでリリースされます。すでに現場でLabor(AM301000)やShop Floor Kioskを使ってAcumaticaに実績を報告している場合は、進捗データを逆方向に連携します。報告経路は必ず一つに絞り、両方を併用しないでください。
5. データの管理主体と競合時のルール。本稼働前に、次の内容を文書化してください。
| データ | 管理主体 |
|---|---|
| 在庫品目、BOM、数量、指図のステータス、原価計算 | Acumatica |
| 工程の順序、開始・終了時刻、リソースの割り当て | SkyPlanner |
| 段取り時間マトリクス、工具、作業者の要件、代替リソース | SkyPlanner |
| シフトと欠勤 | 要件定義で選定した一つのシステム |
| 労務実績と工程移動実績のトランザクション | Acumaticaで管理し、SkyPlannerの作業時間記録から転記、または現場で入力 |
競合の主な原因は、Acumatica自体のAPSです。Rough Cut PlanningやAPS Maintenance Processによって、SkyPlannerでスケジュールを組んだオーダーの日付が再計算されることがあります。書き戻したオーダーをそれぞれ確定すれば、これを防げます。スケジュール済みのオーダーは、APSの実行対象からも除外してください。
一般的な導入手順
通常、導入支援の開始から数週間で実装が完了します。その前に、30日間の無料トライアルで自社データを使って試せます。Generic Inquiryから作業区と未完了の製造オーダーおよびその工程をExcelにエクスポートし、SkyPlannerに取り込んでスケジュールを検証してください。
- マッピング。マッピング表、データの管理主体に関するルール、同期頻度、作業実績の登録経路を確定します。
- アクセス設定。連携アプリケーションを登録し、連携用ユーザーとロールを作成します。Web Service Endpointsでエンドポイントのバージョンも確認します。まずはサンドボックスで進めてください。
- 初期データの取り込み。作業区、機械、工具、シフト、在庫品目、BOMを取り込みます。
- オーダーの同期。プッシュ通知またはポーリングで、製造オーダー、工程、購買オーダーを同期します。
- SkyPlannerでの制約設定。段取り時間マトリクス、作業者の個別指定、複数の作業者が必要な作業、代替リソースを設定します。
- 書き戻し。工程日付と、作業実績または移動実績を書き戻し、オーダーを確定します。
- 並行運用。SkyPlannerの日付を現行計画と比較し、マスタデータを修正します。
- 本番稼働。データが一致したら、書き戻しを有効にします。
Acumatica連携で事前に検討すべきこと
- 有効なAPSエンジンを確認する。ClassicとOptimizedでは設定が別々に保存され、有効にできるのは片方だけです。初回の書き戻し前に、Enable/Disable Features (CS100000)を確認してください。
- エンドポイントのバージョンを固定する。バージョンはURLの一部です。リリースのアップグレードで新しいバージョンが追加されるため、アップグレードのたびに再テストしてください。
- 工程の更新。工程フィールドの一部はREST経由では読み取り専用で、オーダーのステータスも更新に影響します。ReleasedとIn Processのオーダーについて、書き戻しの手順をサンドボックスでテストしてください。
- 単位と時間フィールド。稼働時間はRun Units単位、機械時間はMachine Units単位です。待ち時間と移動時間は、”affect the calculated schedule but do not occupy work center capacity.”(計算されるスケジュールには影響しますが、作業区の能力は消費しません)。取り込み時の換算には注意してください。
- 資材の利用可否の判断。Classic APSでは、すべての資材が全量揃っている必要があります。SkyPlannerは、在庫と入荷予定の購買オーダーを日付ごとに考慮して計画します。計画担当者がどちらの判断に従うかを決めてください。
- APIの制限。毎分のリクエスト数はライセンスで定められています。全件の再読み込みではなく、差分取得とプッシュ通知を使ってください。
Acumatica連携の設定とサポートの担当
- 導入支援中の設定から本番稼働後のサポートまで、SkyPlannerチームが担当します。Acumaticaの運用方法は工場ごとに異なります。その違いに対応するノウハウを、連携の設定とサポートに生かします。
- お客様のAcumaticaパートナーも参加できます。パートナーは、お客様のカスタマイズ、Generic Inquiries、ロールを把握しています。SkyPlannerはREST API、Swagger/OpenAPIドキュメント、Webhookを提供します。
- 自社の開発者による構築も可能です。APIトークンを使い、同じREST APIで開発できます。開始に必要なのはAPIトークンだけで、必要に応じてSkyPlannerチームが支援します。Laboratory & AlliedはSAP Business Oneとの連携でこの方法を選びました。同社の社内ITチームが、SkyPlannerの支援を受けながら、構築の大部分を自力で進めました。
SkyPlannerは5リソース込みで月額199 €から利用でき、請求は月払いです。連携費用は、お客様の業務プロセスと要件に合わせて、利用プランとともに事前にお見積もりします。開始前に総費用を確認できます。Acumatica自体のAPSとの比較はAcumaticaの生産スケジューリング、概要はAcumaticaページ、他システムとの連携はERP連携一覧をご覧ください。
製造業のお客様によるSkyPlannerの評価
2時間毎週削減
「SkyPlannerによって、当社の生産計画はExcelの表計算から、リアルタイムでの生産最適化へと変わりました。」
Kalle Kalliomäki、サプライチェーンスペシャリスト
UTU · 配電盤・開閉装置
生産計画にかかる作業時間を毎週2時間削減し、新しい作業順序は数秒でラインに届きます。
+90%生産効率
「生産効率が90%向上しました。」
Abdul Rucyinga、IT責任者
Laboratory & Allied · 医薬品製造
生産効率が90%向上し、全リソースを対象に最適化した三か月分の生産計画を30分未満で作成できます。
数1,000件作業指示を自動でスケジューリング
「生産をこれまでとは違う形で管理できるようになり、生産能力への理解もまったく別のレベルに達しました。」
Hannu Ryynänen、CEO
Mamec · 産業用ミキサー、ポンプ、ハイテク製品の受託製造
数千件の作業指示を自動でスケジューリングし、組織全体で生産状況をリアルタイムに把握できます。
99.2%納期遵守率
「SkyPlannerによってボトルネックを特定しやすくなり、生産管理が明確になりました。」
Toni Tuori、生産マネージャー
Piristeel · 屋根用安全設備・雨水排水システム
今年の納期遵守率は99.2%に達し、スケジューリングにかかる作業時間を一日あたり最大四時間削減しています。
よくある質問
AcumaticaのAPIで製造オーダーを扱えますか?
はい。コントラクトベースのREST APIのManufacturingエンドポイントでは、ProductionOrder、OrderOperationDetail、BillOfMaterial、WorkCenter、Machine、Tool、作業実績と移動実績にアクセスできます。FirmProductionOrderなどのアクションも利用できます。
Acumatica連携は誰が構築しますか?
SkyPlannerチームが導入支援中にお客様のAcumatica環境に合わせて双方向連携を設定し、本番稼働後もサポートします。お客様のAcumaticaパートナーや社内の開発者が、ドキュメントの公開されたSkyPlannerのREST APIを使って構築することもできます。開始に必要なのはAPIトークンだけです。
この連携にAcumatica APSは必要ですか?
いいえ。Acumatica自体で能力制約を考慮した生産スケジューリングを実行するのはRough Cut Planning画面です。また、Classic APSでは、完了日が120日より先のオーダーは能力を無限として計画されます(出典)。SkyPlannerは、製造オーダー、工程、作業区、機械、工具のデータから、能力制約を考慮した詳細なスケジュールを独自に作成します。そのため、Acumaticaが”is subject to licensing”(ライセンスが必要)としているAPSが有効かどうかにかかわらず連携できます。Autopilotがスケジュールを最新に保ち、作業者はMobile Confirmationsで作業を記録します。
Acumatica APSがSkyPlannerの日付を上書きしないようにするには?
SkyPlannerは、工程日付を書き込んだ後に各製造オーダーを確定します。Acumaticaの能力制約を考慮した生産スケジューリングでは、確定済みのオーダーは再スケジューリングされません。
Acumaticaから変更をリアルタイムにプッシュ送信できますか?
はい。Generic Inquiryに設定したPush notifications (SM302000)が、行の変更時にその行をURLへ送信します。逆方向では、SkyPlannerのWebhookがスケジュールの変更をプッシュ送信します。
連携にはどの認証方式を使いますか?
Connected Applications (SM303010)に登録したクライアントを通じてOAuth 2.0を使用し、連携専用ユーザーと必要最小限の権限を持つロールを用意します。お客様の環境で使用するフローは、要件定義の段階で確認します。