Read results of overall check

Use the following APIs to read entries from the Compliance Monitor.

Business objectRead whole entryCheck if status is open
Accounting document/AEB/CMP_PB_GET_AD_MON_ENTRY
Applicant/AEB/CMP_PB_GET_AP_MON_ENTRY/AEB/CMP_PB_IS_AP_OPEN
Bank/AEB/CMP_PB_GET_BNK_MON_ENTRY/AEB/CMP_PB_IS_BNK_OPEN
Business partner/AEB/CMP_PB_GET_BP_MON_ENTRY/AEB/CMP_PB_IS_BP_OPEN
Customer/AEB/CMP_PB_GET_CUS_MON_ENTRY/AEB/CMP_PB_IS_CUS_OPEN
Delivery/AEB/CMP_PB_GET_DLV_MON_ENTRY/AEB/CMP_PB_IS_DLV_OPEN
Employee/AEB/CMP_PB_GET_EM_MON_ENTRY/AEB/CMP_PB_IS_EM_OPEN
Material document/AEB/CMP_PB_GET_MD_MON_ENTRY/AEB/CMP_PB_IS_MD_OPEN
Purchase document/AEB/CMP_PB_GET_PD_MON_ENTRY/AEB/CMP_PB_IS_PD_OPEN
Payment/AEB/CMP_PB_GET_PIP_MON_ENTRY
Sales document/AEB/CMP_PB_GET_SDOC_MON_ENTRY/AEB/CMP_PB_IS_SDOC_OPEN
Service notification/AEB/CMP_PB_GET_SN_MON_ENTRY/AEB/CMP_PB_IS_SN_OPEN
Service order/AEB/CMP_PB_GET_SO_MON_ENTRY/AEB/CMP_PB_IS_SO_OPEN
Vendor/AEB/CMP_PB_GET_VDR_MON_ENTRY/AEB/CMP_PB_IS_VDR_OPEN
CRM business transaction/AEB/CMP_PB_GET_CBT_MON_ENTRY
CRM business partner/AEB/CMP_PB_GET_CBP_MON_ENTRY

Note: when using one of the APIs above, the business object might be irrelevant for the Compliance checks due to the configuration. This can be recognized as follows:

  • if the export parameter EX_MONITOR_ENTRIES is initial
  • if the exception NO_ORG_UNIT_RULE_FOUND or NO_ORG_UNIT_FOUND occurs

Calling when saving a sales order or delivery

For sales orders and deliveries you can call the according functions during the save in the user exit. If you execute the call in the prepare_document-section of the user exit, the result is based on the monitor entry that was created before the current check (the check that is just executed in the save process). If you do the call in the save_document-Section of the userexit , after the /AEB/ include, the result is based on the current check.


Reacting to a critical result of a purchase document check

Purchase document don't have standard blocks. Therefore you might want to establish some individual reactions to a critical check result and prevent further processing for the purchase order.

Prevent output messages

There are two different approaches, depending on the dispatch time of the output message.

  1. When dispatch time is 'Send immediately (when saving the application)'
    1. Implement the customer exit for the purchase document check as described in the installation manual
    2. Implement all methods of BAdI /AEB/CMP_PURCH_DC_02 to set a static variable, whether the check result is suspicious (SUSPICIOUS_FOUND) or could not be performed due to an error (ERROR_OCCURRED).
    3. After the AEB include is processed in the customer exit, read the static variable and decide whether to prevent the output message.
    4. In order to automatically trigger actions after the release of the purchase order, use the AEB BAdI "/AEB/CMP_MONITOR_11 – PURCHASE_DOCUMENT_DEBLOCKED" for your coding.
  2. Other dispatch time settings
    1. Requirement: In case of a critical result, prevent triggering an output message, e.g. order confirmation to the vendor.
    2. To do so, you can define conditions in the procedure. Start transaction NACE, select the application "EF" and click on Procedures. Select the procedure, and click on "control"-tree at the left.
    3. Choose the desired output type, e.g. the type for the order confirmation and amend or define a routine for the field "Requirement" .
    4. In this routine, use the AEB function /AEB/CMP_PB_GET_PD_MON_ENTRY to read the Compliance Monitor entry.
    5. If one of the parameters "HAS_SCR_HIT", "HAS_SCR_ERR", "HAS_EC_HIT" or "HAS_EC_ERR" is equal to "X" or "STATUS_ID" is equal to "J" (Prohibited) for one of the entries found, then prevent the outgoing message from being triggered
    6. In order to automatically trigger actions after the release of a purchase order, use the AEB BAdI "/AEB/CMP_MONITOR_11 – PURCHASE_DOCUMENT_DEBLOCKED" for your coding.