Enterprise Resource Planning Blogs by SAP
Get insights and updates about cloud ERP and RISE with SAP, SAP S/4HANA and SAP S/4HANA Cloud, and more enterprise management capabilities with SAP blog posts.
cancel
Showing results for 
Search instead for 
Did you mean: 
Caetano
Product and Topic Expert
Product and Topic Expert

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 (if you are looking for BAdIs for MRP, check the blog BAdIs for MRP).


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

  • WORKORDER_DOCLINKS: This BAdI can be used to manipulate the order document links.
    • MAINTAIN_DOCLINKS - Document Link Maintenance

  • WORKORDER_PISHEET: This BAdI enables you to discard browser-based PI sheets directly from  the process order.
    • PI_SHEET_DISCARD - Discard PI Sheet
    • PI_SHEET_DISCARD_DOWN - Discard PI Sheet/Download to External System

  • WORKORDER_CONFIRM_CUST_SUBSCR: This BAdI enables you to change the subscreen for customer-specific fields in the time ticket (single-screen entry CO11N/COR6N and in the order header confirmation CO15/CORK).
    • GET_SUBQTY_LAYOUTS - Determine Name of Existing Quantity Layouts

    • CHECK_SUBQTY_LAYOUT - Check for Layout for Existence of Subdivided Quantities

    • GET_CONF_CUSTOMIZING - Customizing Confirmation Parameters

    • CHECK_SUBQTY_POSTED - Check Whether Subdivided Quantities Confirmed

    • PUT_DATA_TO_QM_SUBSCR - Transfer Data to Screen Enhancement for QM

    • PUT_OK_CODE_TO_SUBSCR - Transfer OK Code to Screen Enhancement

    • PUT_DATA_TO_SUBSCR - Transfer Data to Screen Enhancement

    • GET_DATA_FROM_SUBSCR - Adopt Data from Screen Enhancement

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
18 Comments