Overview of Batch Management
Batch management indicator:
- Purchasing View
- Work Scheduling View
- Plant data/stor1. View
Transaction Code: MSC1N/MSC2N/MSC3N (Table MCH1/MCHA/MCHB)
Check change document: MSC4N
Mass processing: MSC5N
BAPI_BATCH_CREATE (note 619913, item5)
BAPI_BATCH_SAVE_REPLICA (including classification >=470)
Function module: VB_BATCH_DEFINITION
Batch Number Assignment
- In batch master record maintenance(Batch Management)
- In goods movement(Inventory Management)
- In purchase orders(Purchasing)
- In production/process orders(Production)
- In results recording(Quality Management)
Automatic/Manually: Control in customizing OCHA
Batch number assignment: Internal/External
Manual: EXIT_SAPLV01Z_003/EXIT_SAPLV01Z_004, EXIT_SAPLV01Z_013 and EXIT_SAPMM07M_003 (inventory management, only for new batches) can be used to change the master data of a batch.
- Since release 470 definition for batch number assignment is transported via table TCUBN
(before it was part of table TCUCH!)
- Batch numbering without gaps is impossible (for explanation see note 619913, item 6)
- Assign the same batch number for more than one goods receipt:
EXIT_SAPMM07M_010 (if goods movements are posted)
Use modification according to note 523589 for VB_CREATE_BATCH (relevant e.g. for REM - release >= 470).
[The modification is replaced by BADI mentioned in note 1035372 - Exception BATCH_EXIST in VB_CREATE_BATCH II]
VB_NEXT_BATCH_NUMBER (internal batch numbering)
VB_CHECK_BATCH_NUMBER (external batch numbering)
- Idoc type: BATMAS03
- 1970502 - Error message M3 682 when posting good movements to the same batch in parallel
- 1847487 - The Length of batch number is limited to 10 characters
Characteristic Types in Batch Classification:
- User-defined characteristics: Characteristics that do not reference table fields
- Object Characteristics: Characteristics that refer to table fields.
- Standard characteristics: These are Batch Management characteristics that are delivered in the SAP standard system. They are reference characteristics from tables MCHA and MCH1. All standard characteristics can be found in F4 help by specifying LOBM_*. You are normally not allowed to make changes to standard characteristics in the characteristic master record.
One batch class per material (note 115581), but batch classification can be assigned to multiple objects (check transaction O1CL)
Accordingto batch level class type is determined (material/client: 023, plant: 022)
Batch classification can be maintained in batch master transactions, and in several applications (goods movements, orders, process messages)
Update standard Features: BMSM
Classifying batch during goods movement: OMJJ
Classification is called in: VB_CREATE_BATCH and VB_CHANGE_BATCH
Classification FM: CLFM_OBJECT_CLASSIFICATION
User Exits to fill free characteristics:
- EXIT_SAPLV01Z_014(not called in MB* transactions, but in MIGO!)
- EXIT_SAPMM07M_004(called in inventory management transactions and when posting goods movements via MB_CREATE_GOODS_MOVEMENT)
- Integrity Check for Batch Classification – BMCC
- RCCLZUOB(checks whether object exists for classification entry in table INOB - e.g. entry for temporary document number)
- RCCLINOBDEL(deletes multiple INOB entries for one object)
- RVBCOR16(checks the customizing of batches concerning classification)
1427890 - FAQ: Standard characteristics
Archiving Object MM_SPSTOCK
Pay attention on the indicator:
‘Only consider batch stock records; batch master record will not be deleted’
Batch Status Management
- Batch status management is activated via transaction OMCT.
- Batch status can be changed in batch master transaction and via usage decision (transaction QA11).
- There are two options to prevent restricted batches from being selected within batch determination:
- insert characteristic LOBM_ZUSTD in batch class and selection class
- work with dynamic ATP check (scope of check – OVZ9)
- Exit:EXIT_SAPLV01D_001 (determine initial status of batch)
- Fields: TCUCH-KZDZV T001W-CHAZV (batch level on plant)
Batch Search Strategy Customizing
- Inventory Management
- Production order
- Process order
- Sales and distribution
- Warehouse Management
Five scenarios have similar steps to define the batch search strategy.
Five Steps in OCHA:
- Define Condition tables : Condition tables are combinations of fields that form the key of the batch search strategy.
- Define Access Sequences: The order in which the system accesses condition tables during batch determination.
- Define Strategy Types: The default values used when a strategy record is created.
- DefineSearch Procedure: The order in which you assign the strategy types is the order in which the system searches for strategy records.
- Search Procedure allocation and check activation: Allocate the search procedures to the application-specific parameters. Batch determination becomes active as soon as you make the allocation.
Define in CL01/CL02/CL03
With the help of these selection classes, you define according to which criteria, that is, using which characteristics, batches are to be selected
- All characteristics (this applies to standard characteristics as well as to user-defined characteristics) you want to use for selection must also be contained in the batch class. Characteristics LOBM_RLZ and LOBM_LFDAT are an exception; they can be used for selection but not for classification
- To copy the characteristics from client 000 to your logon client, use report RMMCCH01.
- 33396 - Batch determ.: Selection w. remaining life LOBM_RLZ
- 2312940 - Characteristic value of LOBM_RLZ can't be explained during batch determination
Define in CU70/CU71/CU72
With the help of sort rules, you define according to which criteria, that is using which characteristics batches are to be sorted.
- All characteristics (this applies to standard characteristics as well as to user-defined characteristics) you want to use for selection must also be contained in the batch class. Characteristics LOBM_MENGE and LOBM_LGORT are an exception; they can be used for selection but NOT for classification.
- 1979691 - How to set up FIFO in batch determination
Batch Search Strategy Setup-SD
Transaction Code : VCH1/VCH2/VCH3
Batch Search Strategy Setup-PP
Transaction Code: COB1/COB2/COB3
Batch Search Strategy Setup-MM
Transaction Code: MBC1/MBC2/MBC3
Batch Search Strategy Setup-WM
Transaction Code: LS51/LS52/LS53
Batch determination is used for goods issues and stock transfers in SAP warehouse management systems.
- Batches to be picked are transmitted to warehouse management (batch determination takes place in upstream applications).
- Batches are determined from warehouse management (Batch determination in warehouse management).
Batch Determination Analysis
Function Module VB_BATCH_DETERMINATION
- Trouble Shooting in Batch Determination
- Debugging Point of Batch Determination
- Batch Determination – Debug Tips
Batch Information Cockpit
Transaction BMBC functions as single point of entry for batch information and comprises several transactions:
MSC2N, MSC3N, MB56, MMBE, CO09, CL30N, MB5C
Here, the main focus is on the selected batches. The batches are displayed in accordance with the batch definition level.
- Here, the main focus is on the stock situation of the selected batches.
- Following stock tables are read:
(free stock, special stock indicator = blank)
(Special stocks from vendor, special stock indicator = k)
(sales order stock, special stock indicator = E)
(special stocks with customer, special stock indicator = V and W)
(special stocks with vendor, special stock indicator = O)
(project stock, special stock indicator Q)
Nmber of batches 50 but only 20 displayed.
- System read all batches of material A, for example 70. User Parameter said maximum 50 batches, so system take the first 50 and send message ‘more then 50 batches found’
- Next step take 50 batches and check if they fit the selection criteria, so for example only 30 batches are displayed customer
In the selection result of the Batch Information Cockpit you can display in all 50 characteristics, but it is limited to 20 for character types, 20 for numeric types and 10 for date and time types.
Old batches are note displayed after upgrade to EHP5, reason is new added field BATCH_TYPE, note 1297566 provide a report to update the old
Main Program: RVBBINCO
- Batch Derivation is based on batchwhere-usedlist (table CHVW and CHVW_PRE areread).
- Batch Derivation is triggered by certaine vents (transaction DVC8)
- No batch derivation for stock transfers (use exit EXIT_SAPMM07M_004 instead)
- Pull Derivation (1 Receiver, n Sender)
The derivation is triggered from a transaction that affects the product. Here, data from various senders can be collected, cumulated, and calculated. Within a derivation according to the pull principle, there can only be one receiver, but there can be several senders (example usage: pick and pack for pharmaceutical products).
- Push Derivation (n Receiver, 1 Sender)
Within a derivation according to the push principle, there can only be one sender and several receivers. This derivation is started from a transaction that affects the component batch. Here, data from a sender batch can be derived onto several receiver batches (Example usage: Filling bulk batches in the Chemicals industry).
Derivation events (DVC8)
- Determine at which time a derivation should happen and which rule should be used.
- Static or dynamic derivation
- Static Derivation: For a static derivation, the attributes determined for the sender batch(es) are transferred to the receiver batch(es).
- Static derivation is recommended if a batch is newly created or changed and the values in the receiver batch(es) should be filled with the attributes from the sender batch(es).
- Dynamic derivation: For a dynamic derivation, no attributes are transferred to the receiver batch(es), in other words, the derivation is simulated and the values are merely displayed. The derivation is saved, but the receiver batch(es) are not automatically changed.
- Dynamic derivation is used when the receiver batch must/should not be changed and the sender values should be used as the basis for a user decision.
Set Up Condition Technique for Derivation (Need to be set for sender and receiver both.)
- Define Condition tables
- Define Access Sequences
- Define Strategy Types
- Define Search Procedures
Derivation activate or not (DVSP)
Batch Derivation Rule
Sender Rule (DVS1)
- Which characteristic values should be used to send
- Pull or Push-Derivation
Receiver Rule (DVR1)
- how many levels of WUL should be read
- what happen if more then 1 value available which rule should be used to find the value
- Check and display derivations
- When you perform derivation, the following are logged:
–Result of the derivation, as well as the sender batches and the data sent
–Messages that arose during a derivation (for example, error messages when a derivation fails, due to a sender field being non-valuated)
- Manually derivation for example for testing or reproducing
Shelf Life Management
View “Plant data/stor. 1”, the “Min.Rem Shelf Life” should be maintained: ŸMARA-MHDRZ
- OMJ5 for plant or movement type
T156-KZMHD (Movement Type)
–check only when KZMHD = 1
–KZMHD = 3 for goods issues (system message M7 667 moving to trash)
Functionality for all materials not only batches!
- Expiration date is checked (KZMHD = 1) when goods come into the system .(goods receipts, reversals of goods issues, transfer postings)
- System prompts to enter an expiration date.
- When total shelf life is maintained in material master, system prompts for production date.
- When production/expiration date already exists (only for batches possible), these values are entered as default.
- Customizable system messages (overwriting allowed etc. in transaction OCHS)
- Expiration date stored in batch master
- Production date stored in batch master since release 4.5.
- Expiration date also stored in warehouse management (quants).
- If finer steering is needed (plant or storage location dependent values)
- Function Module: VB_MAINTAIN_MHD
- BADI: VB_SLED_MANAGEMENT -> called in MM07MMHD
354914 - Documentation for EXIT_SAPLVBMD_001
Considering component shelf life in batch determination
Batch Specific UoM
Production Unit of Measure
Function module: MURC_MENGENUMRECHNUNG
Postings are done in base unit.
Conversion:Function Module MATERIAL_UNIT_CONVERSION