はじめに:なぜロット管理が必要なのか
製造業・食品・医薬品・化学品などの業界では「同じ品目でも、いつ・どこで・どの原料から作られたかで品質が違う」ことが当たり前です。同じ品番でも製造日が違えば消費期限が違い、同じ原料でも産地が違えば成分含有量が違います。ところが在庫システムが「品目コード単位」でしか在庫を見ていないと、この差異が完全に消えてしまい、後から「不良が出たけれど、どのロットが原因か分からない」という事態に陥ります。
なぜそれが致命的か(why so)。トレーサビリティが確保できなければ、リコール時に出荷先全件を回収する羽目になり、品質クレームの原因究明にも時間がかかるからです。食品業界ではHACCP、医薬品業界ではGMP、自動車業界ではIATF 16949といった規制で「ロット単位の追跡が義務化」されている領域も多く、ロット管理は単なる便利機能ではなく事業継続の前提条件です。
ではどうすべきか(so what)。品目コードの下にロット番号を1階層追加し、入荷から消費・出荷まで同じロット番号で追跡できる仕組みを作るのが答えです。SAPではこれをBatch Management(ロット管理/バッチ管理)として標準機能で提供しています。本記事ではロット管理の基本概念、SAPで標準カバーできる範囲、現場でよく出てくるアドオン事例までをまとめます。MM全体の業務フローはMM業務フローを参照してください。
ロット管理の基本概念
ロット(Batch)とは何か
ロットとは「同じ品目の中で、何らかの共通属性を持つ製造単位」のことです。たとえば「2026年3月15日に、A工場のライン1で、原料ロットX001を使って製造された製品Y」という1グループが1ロットになります。
SAPではロットは品目コードと組み合わせて識別されます。品目コードだけでは「ペットボトル500ml」までしかわかりませんが、ロット番号まで紐づければ「2026年3月15日製造分のペットボトル500ml」を特定できます。これによって在庫照会・出荷・消費・実績計上のすべてがロット単位で記録され、後からでも全工程を遡れます。
ロット管理の4つの活用軸
ロット管理は実務で次の4つの目的に使われます。
| 活用軸 | 目的 | 業界例 |
|---|---|---|
| トレーサビリティ | 原料→製品→出荷先までの追跡 | 食品・医薬品・自動車部品 |
| 期限管理 | 消費期限・有効期限の管理 | 食品・医薬品・化学品 |
| 品質特性管理 | 含有量・粘度・純度などの差異管理 | 化学品・素材・半導体 |
| 在庫評価 | ロットごとの取得原価の区別 | 高額部品・特殊原料 |
なぜ4つも使い分けがあるか。業界によって「ロットで管理したい情報」の質が違うからです。ロット管理を導入するときは、まず「何のためにロットで管理したいのか」を1つに絞ってから設計するのが鉄則です。すべての軸を一気に追うと、属性項目が膨大になり、現場の入力負荷が破綻します。
SAP標準でカバーできる範囲
SAPのBatch Managementは、製造業向けERPの中でも歴史が長く成熟した領域です。標準機能だけでもかなり広範囲をカバーできます。
標準でできること
- 品目マスタでロット管理を有効化(品目マスタの「ロット管理」フラグ)
- ロット番号の自動採番/手動採番/組織単位ごとの採番ロジック
- ロット属性(バッチクラシフィケーション)として有効期限・製造日・特性値を任意に持たせる
- 入庫時のロット記録(MIGOで入庫転記時にロット指定)
- 出庫・消費時のロット指定(先入先出、有効期限順、特性値順などで自動選択も可能)
- ロット検索(MB56:ロットwhere-used、MMBE_BATCHでの在庫照会)
- ロット移送・分割・統合
- 派生ロット(Derived Batches):原料ロットから製品ロットに属性を引き継ぐ
- アクティブイングリーディエント管理(医薬品向け):含有量を考慮した実効在庫計算
ロット決定戦略(Batch Determination)
SAPの強みは、出庫時に「どのロットを使うか」を自動決定できる仕組みを標準で持っていることです。ロット決定戦略(COB1など)を設定すると、たとえば「有効期限が近いものから順に出庫」「特性値が要件を満たすものだけ選択」といったルールで自動的にロットを引き当てられます。
flowchart LR A[出庫要求
SD/PP] --> B[ロット
決定戦略] B --> C{選択ルール} C -->|FEFO| D[期限近い順] C -->|FIFO| E[入庫古い順] C -->|特性適合| F[品質条件OK] D --> G((ロット引当)) E --> G F --> G
なぜこれが標準で用意されているか。ロット選定を人手に任せると、例外判断が属人化し、期限切れや品質不適合が必ず混入するからです。「自動決定できる範囲は自動化し、例外だけ人が判断する」のがSAPロット管理の基本思想です。
トレーサビリティ照会
MB56(バッチwhere-usedリスト)を実行すると、特定のロットがどの製造指図で消費され、どの製品ロットになり、最終的にどの顧客に出荷されたかを一気通貫で追跡できます。逆に製品ロットから原料ロットを遡ることも可能で、リコール時の調査時間を劇的に短縮できます。
SAP標準でカバーできない範囲
一方、現場の要件によってはSAP標準だけでは表現しきれない領域もあります。代表例を整理します。
1. 複雑なロット派生ルール
「原料ロット3本をブレンドして製品1ロットを作る」というブレンディング工程では、製品ロットの属性をどう決めるかが業界ごとに違います。SAP標準では「最も古い原料ロットの日付」「平均値」「最小値」など基本的なルールは選べますが、業界固有の特殊ロジック(重み付け平均、最大濃度を超えない範囲での配合比決定など)はBAdIで実装する必要があります。
2. ロット番号体系の独自要件
SAPのロット番号は標準では数字連番、または品目内連番です。しかし現場では「製造日YYMMDD+ライン番号+連番」のような業務的に意味を持つ番号体系を使いたいことが多くあります。これは番号採番BAdI(BADI_BATCH_MASTER)で対応します。
3. ロット単位の細かい原価計算
SAP標準ではロット単位の標準原価計算は限定的です。各ロットで取得原価が異なる場合(高騰した時期に仕入れたロットと安い時期のロット)、原価を厳密にロットごとに分けたい場合は、Material Ledgerを併用するか、独自のロット原価管理アドオンが必要になります。
4. ロット品質履歴の業界独自フォーマット
医薬品のCoA(Certificate of Analysis)や食品のスペックシートのように、業界独自フォーマットの品質証明書をロット単位で出力する要件は、QMモジュールとSmart Forms/Adobe Formsを組み合わせるアドオンになることが多いです。
5. ロット情報のラベル印刷・SSCC連携
物流現場でのバーコード/2次元コード/SSCCラベルとSAPロット情報の連携は、多くの場合、現場のラベルプリンタやMES/WCSとの連携アドオンが必要です。EWM導入時はEWM業務フローで扱う倉庫タスクと組み合わせることで、ハンディターミナル運用と直結させることもできます。
現場で頻出するアドオン事例
実際のプロジェクトで頻繁に作られるアドオンの代表例を紹介します。
事例1:独自ロット番号体系
「製造日6桁+プラント2桁+連番3桁」のような業務的に意味のあるロット番号を発番したい、というのは食品・化学品の現場でほぼ確実に出る要件です。BADI_BATCH_MASTERで番号採番を上書きし、品目とプラントから動的に生成します。
事例2:ブレンディング工程の派生ロット属性計算
原料3ロットの濃度から、製品1ロットの濃度を加重平均で算出するロジックをBADI_BATCH_DERIVATIONで実装します。標準の派生ルールでは表現できない計算式を組み込めます。
事例3:ロット単位のCoA自動発行
製品ロットの出荷時に、QMで蓄積された検査結果から自動でCoAを生成し、PDFとして出荷指図に添付するアドオン。Smart FormsやAdobe Formsで帳票を組み、SDの出荷プロセスにフックします。
事例4:FEFO逸脱のチェックと警告
「自動決定戦略でFEFOを設定したのに、現場が手動で別ロットを選んだ」という逸脱を検知し、上長に通知するアドオン。MB1A/MIGOの転記時にBAdIでチェックを入れます。
事例5:賞味期限切れアラートのダッシュボード
期限が近いロットを毎朝バッチで抽出し、Fioriダッシュボードや社内ポータルに表示するアドオン。S/4HANA環境ではClean Core戦略に従い、CDSビュー+カスタムFioriアプリで実装するのが主流です。
なぜアドオン化を最小限に抑える発想が重要か。ロット管理周辺はS/4HANAアップグレードのたびに改善が入る領域であり、大規模な改造を残すと毎回のアップグレードコストが膨らむからです。アドオン要件を受けたら、まず標準カスタマイズで実現できないかを確認し、それでも必要な場合だけBAdIまたはSide-by-Sideで実装するのが鉄則です。BAdIの実装手順はMM BAdI実装ガイドを参照してください。
ロット管理導入時の注意点
- ロット管理を後から有効化するのは非常に困難。新規導入時に必ず判断する
- ロット管理を有効にすると、入庫・出庫・棚卸のすべての画面でロット指定が必須になる。現場の入力負荷を事前に試算する
- バッチクラシフィケーション(属性管理)は便利だが、項目を増やしすぎると保守不能になる。最初は3〜5項目に絞る
- ロット決定戦略は品目グループ単位で設計する。品目ごとに作ると数千件のメンテが発生する
- 過去ロットの削除はほぼ不可能。アーカイブ運用を最初から計画する
よくある疑問(FAQ)
Q. 品目ごとにロット管理する/しないを切り替えられますか? A. できます。品目マスタの「ロット管理」フラグで個別に設定可能です。ただし在庫がある状態でフラグを変更するのは原則NGで、棚卸→在庫ゼロ→フラグ変更の手順が必要です。
Q. 1つの品目で複数のロット番号体系を使いたいのですが可能ですか? A. 標準では不可です。BAdIで分岐ロジックを実装する必要があります。ただし運用が複雑になるため非推奨です。
Q. ロット管理とシリアル番号管理は何が違いますか? A. ロットは「グループ単位」、シリアルは「個体単位」の管理です。自動車部品の組立番号などはシリアル、原料の製造単位はロットで管理するのが一般的です。
Q. EWMを使うとロット管理は変わりますか? A. EWMは倉庫内のハンドリング単位(HU)と組み合わせてロットを管理します。MM側のロット定義は同じですが、出庫時のロット引当が倉庫タスク経由になります。
Q. ロット情報をSalesforceや顧客ポータルに連携したいのですが? A. Integration Suiteを経由してAPIで公開するのが現代的な構成です。詳しくはSAP Integration Suite入門を参照してください。
まとめ
- ロット管理は「品目コード+ロット番号」で在庫を1階層細かく追跡する仕組み
- 用途はトレーサビリティ・期限管理・品質特性管理・在庫評価の4軸、目的を1つに絞って設計する
- SAP標準でロット決定戦略・トレーサビリティ照会・派生ロットなど主要機能はカバーされている
- 標準でカバーできないのは独自番号体系・特殊な派生ルール・業界帳票・現場ラベル連携など
- アドオン実装はBAdI(BADI_BATCH_MASTER/BADI_BATCH_DERIVATION)が中心
- 後から有効化は困難、新規導入時に必ず判断する。属性は最初から増やしすぎない
- アップグレード耐性のため、Clean Core原則でアドオンを最小化する発想が重要
ロット管理は「やる/やらない」の二択ではなく、「どこまで標準で済ませるか/どこからアドオンに踏み込むか」のグラデーションを設計する仕事です。業務の実態をよく聞き取り、最小限の項目から始めて段階的に広げる、という地に足のついた進め方が、最終的に運用品質の高いロット管理を実現します。
各モジュールの業務フローをより深く理解するには、S/4HANAの全体像を先につかんでおくのが近道です。約2時間の動画で主要機能と特徴を一通り押さえられます。