As I see daily on the Manufacturing PP space threads asking for exits or BAdis for specific scenarios, I decided to create this list with the most important user-exits and BAdIs that are available for production and process orders.
Below you can find the main BAdIs for production and process orders and the methods available for each one:
- WORKORDER_UPDATE: This BAdI is called whenever the order is changed, for example, on transaction CO02 or during capacity leveling
- ARCHIVE_OBJECTS - Archiving Additional Objects
- AT_DELETION_FROM_DATABASE - Order is deleted from the database (archiving)
- AT_SAVE Save Order Time: Dialog
- CMTS_CHECK Check: Configurable Warehouse Order Allowed
- INITIALIZE Initialization when Importing/Creating Order
- IN_UPDATE Save Order Time: Update
- NUMBER_SWITCH Swap Tempory Order Numbers with Final Order Numbers
- BEFORE_UPDATE Save Order Time: Before Calling Update
- AT_RELEASE Release Order Time: After SAP Checks, Before Release
- REORG_STATUS_ACT_CHECK Reorganization of Order: Status Check
- REORG_STATUS_ACTIVATE Reorganization of Order: Follow-Up Action After Status Set
- REORG_STATUS_REVOKE Reorganization of Order: Follow-Up Action After Status Reset
- WORKORDER_CONFIRM: This BAdI is called during the order confirmation for additional checks.
- AT_SAVE - Confirm Order, Time: Dialog
- BEFORE_UPDATE -Confirm Order, Time: Before Update
- IN_UPDATE - Confirm Order, Time: Update
- AT_CANCEL_CHECK - Confirm Order, Time: Check if Cancellation is Possible
- INDIVIDUAL_CAPACITY - Confirm Order: Preassignment Individual Capacity
- WORKORDER_GOODSMVT: This BAdI can be used to manipulate goods movements that are posted during an order confirmation
- BACKFLUSH Confirmation: Backflush
- GOODS_RECEIPT Confirmation: Automatic Goods Receipt
- MANUAL_GOODS_RECEIPT Manual Goods Receipt for Order
- IM_CALLED Time after Inventory Management is Called
- PICKLIST Pick list
- GM_SCREEN_LINE_CHECK Goods Movement Overview: Line Check
- GM_SCREEN_OKCODE_CHECK Goods Movement Overview: OK Code Check
- COGI_AUTHORITY_CHECK Postprocessing: Authorization Check
- COGI_POST Postprocessing of Incorrect Goods Movements
- COMPLETE_GOODSMOVEMENT Confirmation: Addition of User Input on Goods Movement
- GM_WIPBATCH_PROPOSE Goods Movement WIP-Batch: Proposal
- GM_WIPBATCH_CHECK Goods Movement WIP-Batch: Line Check
- WORKORDER_REWORK: This BAdI is used on a rework scenario, in order to transfer outwards an additional yield when entering a backflush for PP orders. This is added
- GET_REWORKED_QUANTITY Returns the Reworked Yield
- WORKORDER_INFOSYSTEM: This Business Add-In can be used to fill additional (customer-specific) fields in the order info system (transactions COOIS, COOISPI, COHV...) for production orders and process orders.
- ORDER_TABLES_MODIFY Processing of order tables
- PLANNED_ORDER_TABLES_MODIFY Processing of planned order tables
- AT_SELECTION_SCREEN Is called in the WBS for the PPIO_ENTRY selection screen
- AT_OUTPUT_SCREEN Is called for every action on the output list
- OVERVIEW_MODIFY Processing of the object overview
- TABLES_MODIFY_LAY Processing of Order and Planned Order Tables
- DETAIL_LIST_LAY Process Detail Lists
- OVERVIEW_TREE_LAY Process Layout-Based Object Overview
- AT_OUTPUT_SCREEN_LAY Call When Action is Carried Out on the Output List
Here are the user-exits available for PP order processing:
- PPCO0001
- EXIT_SAPLCOBT_001 - User Exit PP Order Processing (Non-Order-Type-Specific)
- PPCO0002
- EXIT_SAPLCORE_001 Set deletion flag
- EXIT_SAPLCORE_002 Set deletion indicator
- EXIT_SAPLCORE_003 Technically complete
- EXIT_SAPLCORO_001 Check exit for function "Set deletion flag"
- EXIT_SAPLCORO_002 Check exit for function "Set deletion indicator"
- PPCO0003
- EXIT_SAPLCOEXT_001 - Check Exit for Production Order Change from Assembly Order
- PPCO0004
- EXIT_SAPLCORE_004 - Mass Processing of Production Orders: General Sort Exit
- PPCO0005
- EXIT_SAPLCOSD_001 - Storage Location/Backflushing on Order Creation
- PPCO0006
- EXIT_SAPLCOZF_003 - Exit for Predefining Fields in the Order Header
- PPCO0007
- EXIT_SAPLCOZV_001 - User Exit for Checking or Changing Header Fields During Order-Type-Specific
- PPCO0008
- EXIT_SAPLCOMK_006 - Enhancement in the adding and changing of components
- PPCO0009
- EXIT_SAPLCOSF_001 - Customer Exit: Goods Receipt for Production Order
- PPCO0010
- EXIT_SAPLCOCOM10_001 - Enhancement in make-to-order production - Unit of measure
- PPCO0012 - Production Order: Display/Change Order Header Data
- EXIT_SAPLCOKO1_001 - Transfer of Order Data to Customer Enhancement
- EXIT_SAPLCOKO1_002 - Transfer of Data Changes from Customer Enhancement
- PPCO0013
- EXIT_SAPLCOMK_008 - Change Priorities for Selection Criteria for Batch Determination
- PPCO0014
- EXIT_SAPLNWDB_001 - Select process orders for external relationships
- PPCO0015
- EXIT_SAPLCOSD_002 - Customer Exit: Additional Attributes Document Link
- PPCO0016
- EXIT_SAPLCODM_001 - User Exit: Generate Document Links from Master Data
- PPCO0017
- EXIT_SAPLCODD_001 - User Exit: Document Links Dialog Processing
- PPCO0018
- EXIT_SAPLCOKO1_004 - Check whether changes to order header/item are allowed in th
- PPCO0019
- EXIT_SAPLCOVG_001 - User Exit for Checks of Operation Changes in the Production
- PPCO0020 - Process order: Display/change order header data
- EXIT_SAPLCOKO_005 - Transfer of Order Data to Customer Enhancement
- EXIT_SAPLCOKO_006 - Transfer of Data Changes from Customer Enhancement
- PPCO0021
- EXIT_SAPLCOZR_003 - Release Control for Automatic Batch Determination: Handling
- PPCO0022
- EXIT_SAPLCOTX_001 - Determination of Production Memo
- PPCO0023
- EXIT_SAPLCOMK_014 - Checks Changes to Order Components
User-exits called during the process order confirmation:
- CONF0001 Enhancements in order confirmation
- EXIT_SAPLCORU_001 - Order Confirmation: Deactivation of Functions
- CONFPI01
- EXIT_SAPLCORF_401 - Process order conf.: Calculate cust.specific default values
- CONFPI02
- EXIT_SAPLCORF_402 - Process Order Confirmation: Customer-Specific Input Check Wi
- CONFPI03
- EXIT_SAPLCORF_403 - Process Order Conf.: Customer-Specific Checks after Operation
- CONFPI04
- EXIT_SAPLCORF_404 - Process Order Confirmation: Customer-Specific Input Checks
- CONFPI05
- EXIT_SAPLCORF_405 - Process order conf.: Cust. spec. enhancements when saving
- CONFPI06
- EXIT_SAPLCORF_406 - Process order confirmation: Actual data transfer
User-exits called during the process order confirmation:
- CONFPP01
- EXIT_SAPLCORF_101 - PP order conf.: Determine customer specific default values
- CONFPP02
- EXIT_SAPLCORF_102 - PP order conf.: Customer specific input checks 1
- CONFPP03
- EXIT_SAPLCORF_103 - PP order conf.: Cust. specific check after op. selection
- CONFPP04
- EXIT_SAPLCORF_104 - PP order conf.: Customer specific input checks 2
- CONFPP05
- EXIT_SAPLCORF_105 - PP order conf.: Customer specific enhancements when saving
- CONFPP06
- EXIT_SAPLCORF_106 - PP Order Confirmations: Actual Data Transfer
- CONFPP07 - Single Screen Entry: Inclusion of User-Defined Subscreen
- EXIT_SAPLCORU_S_100 - Transfer Data from SAPLCORU_S to Customer-Defined Screen
- EXIT_SAPLCORU_S_101 - Return Data from Customer-Defined Screen to SAPLCORU_S