Docs / Outbound Messaging

Real-Time ATP (Inventory)

Real-time ATP requires trigger consolidation plus online availability calculation. ASAPIO provides the integration pattern and example implementation approach.

Overview: Real-Time Inventory for Materials

ATP is not a static database value. SAP calculates current availability from stock, reservations, inbound supply, and planned dates. Therefore, ATP integration needs:

Required Configuration

Object NameObject TypeConfiguration
Sales OrderBUS2032Standard
Purchase OrderBUS2012Standard
DeliveryLIKPStandard
Goods MovementBUS2017BAdI (MB_DOCUMENT_UPDATE)
Material ReservationZBUS2093User Exit (MBCF0007)

Create Outbound ATP Configuration (SAP GUI)

Create custom extractor function module (example: Z_ACI_EXTRACTOR_ATP) with ASAPIO extractor interface and ATP logic based on BAPI_MATERIAL_AVAILABILITY. The extractor should build payload lines from MATNR/MEINS/WERKS keys and include calculated quantity output.

  1. Transaction SE37: create FM Z_ACI_EXTRACTOR_ATP.
  2. Implement key parsing from BDCP entries and ATP calculation call.
  3. Create outbound object in /ASADEV/ACI_SETTINGS using this extractor.

Set-up Business Object Event Linkage

Implement BAdI /ASADEV/TRIGGER_BADI (method /ASADEV/TRIGGER_IF~SET_BDCP_LINES) to normalize trigger-specific keys into MATNR/MEINS/WERKS ATP keys.

Link relevant BO events in Event Linkage:

Object NameObject TypeEventTablesTransaction
Sales OrderBUS2032Created, ChangedVBAK, VBAPVA01, VA02
Purchase OrderBUS2012Created, ChangedEKKO, EKPOME21N, ME22N
DeliveryLIKPCreated, ChangedLIKP, LIPSVL01, VL02
Goods MovementBUS2017CreatedMKPF, MSEGMB11
Material ReservationZBUS2093Created, ChangedRKPF, RESBMB21, MB22

Via Event Studio

Event Studio can be used for deployment governance and payload validation, while ATP-specific trigger normalization and custom extractor logic remain SAP GUI/ABAP implementation tasks.

Test Example

Typical ATP payload output:

{
  "value": [
    {
      "objectType": "BUS2012",
      "werks": "1200",
      "matnr": "DPC1002",
      "meins": "ST",
      "date": "20221011",
      "quantity": "4216.000"
    }
  ]
}