ERPとMESの連携による、企業全体最適のための一般的なインターフェイス設計 （システム概要図再利用可）

製造現場においては、「いかに生産性を高めるか」、「いかに省人化できるか」いうテーマが問われます（時に部分最適）。それに対して、企業全体、つまり全体最適の視点では、「受注から入金（O2C）」、「購買から支払（P2P）」、「需要／供給計画と在庫」、そして「製造実行と完成報告」までの情報の流れを、いかにシステムとして構築するか、というテーマが問われます。

本稿では、企業全体の業務をカバーするERP（基幹業務システム）と、モノづくりの現場を管理するMES（製造実行システム）の連携に関する一般的な全体像と、具体的にどのようなデータがどの方向に送信されるのかをご紹介します。※ERPの用語としては、Oracle NetSuite ERPのものを一部使用しております。
<br>

**ERPとMESの一般的な連携パターン**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3431564/b1ccb6c9-d1c8-459d-ae33-7bf519849554.png)
[※「ERPとMESの一般的な連携パターン概要図.drawio」（© 2025 Takusuke Fujii）は、CC BY 4.0（原作者名の表記が必要）で自由に共有・改変・配布可能ですが、無保証につき著作者は一切責任を負いません。](https://drive.google.com/file/d/11MtTmPa9dkh5tHqqRNNGBBdWEJMBHbWL/view?usp=sharing)
<br>

**a. ERPとMESの連携全体像**
上記の図において、ERPは以下の3つの主要業務領域を担当すべきことを示しています。
•	Order to Cash（受注～出荷・請求管理）
•	Procure to Pay（購買～支払管理）
•	Demand & Supply Planning（需要と供給の計画、製造指図の発行）

MESは以下の3つの領域を担当する想定です（他にも様々な領域がありますが、単純化しています）。
•	Manufacturing Execution（製造実行：製造指図を現場で運用）
•	Shop Floor Control（現場管理：原材料消費・実績収集）
•	Manufacturing Intelligence（生産設備や解析ツールとの連携／可視化）

両者の連携は、「ミドルウェア」を介して実現されるのが理想です。ミドルウェアは、APIの定義と呼び出し、データのマッピングと変換、エラー処理、稼働監視などの機能を持ちます。近年ではミドルウェアもサービス化され、iPaaS（Integration Platform as a Service）と呼ばれます。
<br>

**b. ERP-MES連携シナリオの流れ**
ここでは、代表的なシナリオの例として「製造指図の発行から完了報告まで」を簡単に示します。

1.ERPで製造指図を作成
・品目、BOM、作業手順（ルーティング）を参照
・生産数量、消費数量、スケジュール、使用する作業区などを決定

2.製造指図をMESへ送信
・MES側では実際の作業に適した詳細レベルの製造指図が生成されるケースが多い
・製薬業界では、電子バッチ記録（Electric Batch Record)に相当

3.MESで実際の生産実行・実績収集
・製造指図（バッチレコード）に原材料消費、作業時間、出来高を記録
・品質管理機能で品質検査のデータを記録
・設備の稼働／ダウンタイムの記録やOEEデータを収集する

4.生産実績をERPに戻す
・製造指図ステータ「完了」のタイミングで、確定した出来高などをERPへ反映
・完成品在庫や原材料の各勘定科目に対する自動仕訳

5.ERPでコスト・在庫・品質を一元管理
・予実差異の認識や原価計算におけるタイムラグを改善します
・品質管理データも分析に含め、より精度の高い供給計画と在庫管理が見込まれます
<br>

**c. インターフェイスプログラム一覧**
以下では、ERPとMESを統合する上で必要となるインターフェイスのを代表例を挙げます。NetSuite ERPの用語も追記しておりますが、あくまで一般論であること、ご了承願います。

**c.1. マスターデータのインターフェイス**
•	Item Master（品目マスタ： ERP → MES）
受注（製品）、購買（原材料）、製造まで一気通貫するためには、当然ERP側の品目マスタが「正」となります。ただし、現場レベルでしか使用されない品目レコードについては、ERP側には持たず、MES側のみに持つパターンもあります。

•	Bill of Materials（部品表： ERP → MES）
複雑な製品や階層の深いBOMについては、ERPで適切にカバーし切れないケースもございますが、少なくとも、需要／供給計画が可能な範囲のBOMは、ERPが正となります。また、各製造ロット（バッチ）に対する、原材料品目とそれらの消費量およびロット番号を、ERPからMESに製造指図を通して連絡する、元データになります。

•	Resource Master（リソース： ERP → MES）
製造に必要なリソース（時間単価を含めた人員や設備など）に関するマスターデータです。こちらの連携は、任意か不要なパータンが多いと言えます。

•	Routing and Operations（作業手順： ERP → MES）
どの作業区（ワークセンター）で、何の工程（作業）を何分実施するかを、定義するマスターデータです。こちらの連携も任意であるパターンが多いです。
<br>

**c.2 トランザクションデータのインターフェイス**
•	Work Order（製造指図： ERP → MES）
ERP側では何を何個いつ作る（What, When）という概要レベルの製造指図を、需要／供給計画（MRP）で生成し、それをもとに、MES側でどうやって作る（How）という詳細レベルの製造指図（製薬ではバッチレコード）を生成して、実際の製造をMESで進めます。

•	Inventory Transfer（在庫移動： ERP → MES、ERP → MES）
倉庫から製造現場への払い出し、作業区間の在庫移動、完成品倉庫への入庫などの情報を、双方向に通知します。詳細レベルの作業区間の在庫移動については、ERPは感知しないケースが多いです。

•	Inventory Consumption（在庫消費： MES → ERP）
現場で消費された原材料の実績を、ERPへ反映します。実際の消費時に随時ERPへ反映するのではなく、製造指図の完了時に一括で消費を認識する（バックフラッシュ）など、業界やユーザー企業様の要求に合わせる必要があります。

•	Production Output（出来高： MES → ERP）
消費の反対で、実際に生産された完成品／中間品の数量を、ERP側に送信します。次の完成報告の機能の一環するケースも多いです。

•	Work Order Completion（完成報告： MES → ERP）
MES側で製造指図に対する作業実績（製品／中間品の出来高、原材料消費や作業時間など）が入力され、製造指図のステータス変更としてERPに反映します。「ステータス」更新は、「完了」時だけでなく、「仕掛中」、「検査中」、または単純に製造の進捗状況を反映することも含まれます。前述の在庫消費と出来高と組み合わせて、一つの機能とすることも可能です。
<br>

**c.3 その他のインターフェイス（任意）**
•	Quality Specifications（検査仕様： QMS or ERP → MES）
製品や原材料の品質要件をMESで参照・チェックするためのデータ連携です。ERPではカバーしきれず、別途QMS（Quality Management System）の利用します。

•	Quality Results（検査結果： MES → QMS or ERP）
測定結果や検査結果がMESで記録されたら、QMSやERPへ送信し、品質管理の可視化を実現します。

•	Production Schedule（生産スケジュール： APS or ERP → MES）
ERPの供給計画で生成したスケジュールをMESに送信します。ERPのスケジューリング機能で要求をカバーできない場合は、別途APS（Advanced Planning and Scheduling）を利用します。

•	Downtime and OEE Data（設備稼働実績： MES → ERP）
設備の稼働停止時間や総合設備効率（OEE: Overall Equipment Effectiveness）をERPに反映することで、原価管理や生産性分析に活用できる余地があります。
<br>

**d. 連携設計のポイント**
•	マッピングとデータの整合性
NetSuite ERPを例にすると、「アセンブリアイテム」、「BOMリビジョン」といった、NetSuite特有の用語や、場合によっては概念もございます。また、製造に関してはMES側により詳細レベルの定義や概念があります。ERPとMESの双方で一貫性のある設計が必要です。

•	トランザクションのタイミングと粒度
例えば、ディスクリート製造、プロセス製造、またさらにその細分化された製造業種や拠点によって、製造指図に対するステータス更新や実績報告の要求の粒度が異なります。原材料消費や中間品も含めた在庫情報を、製造指図と紐づけてERPへ頻繁に送信する必要のあるパターンや、最終的な完了報告送信のタイミングでバックフラッシュをERP側で実施するパターンなどがあります。

•	エラーハンドリングとアラート機能
インターフェイスプログラムのエラーで、製造現場に問題が起こるリスクを低減する必要があります。導入初期は、原始的なCSVファイルの読み込みのようなプログラムでも問題ない可能性がありますが、長期的には信頼性の高いミドルウェア（or IPaaS）に、監視機能やエラーハンドリングをまかせ、障害発時に即座に検知・通知できる仕組みが好ましいと言えます。

•	拡張性とスケーラビリティ
拡張や変更がスムーズに行えるインターフェイスプログラムの設計に加え、グローバルロールアウトなど、複数のERPやMESを取り扱う可能性がある場合は、ミドルウェア／IPaaSへの投資が、長期的にはペイすると考えられます。
<br>

**e. まとめ**
本稿では、ERPとMESの連携における、業務領域の役割分担の全体像と、代表的な業務シナリオ、そしてインターフェイス一覧を、Oracle NetSuite ERPの用語を一部引用しつつ記述しました。すべて一般論ではありますが、実際の要件のご検討などに役立てて頂けますと幸いです。
<br>

© 2025 Takusuke Fujii
本記事は CC BY 4.0（原作者名の表記が必要）で自由に共有・改変・配布できますが、無保証につき著作者は一切責任を負いません。