SAP Knowledge Base Article - Public

3109298 - Error: “Internal error when calling operation module BUA_CHECK_ADDRESS_VALIDITY_ALL; a check table is missing” while creating the first address to the existing Business Partner using the API_BUSINESS_PARTNER

Symptom

A Business Partner XYZ was created without an Address, add an address to this Business Partner using the OData API_BUSINESS_PARTNER through a POST call on the query  '/sap/opu/odata/sap/API_BUSINESS_PARTNER/A_BusinessPartner('XYZ')/to_BusinessPartnerAddress'

Upon performing the POST operation, system throws the error:

Internal error when calling operation module BUA_CHECK_ADDRESS_VALIDITY_ALL; a check table is missing

***where XYZ represents the Business Partner ID***

Environment

SAP S/4HANA Cloud Public Edition

Reproducing the Issue

  1. OData Query : /sap/opu/odata/sap/API_BUSINESS_PARTNER/A_BusinessPartner('XYZ')/to_BusinessPartnerAddress
  2. Execute the POST call for the Request Payload as below: 

    {

    "BusinessPartner" : "XYZ",

    "Country": "YY",
    "CityName": "PQR",
    "PostalCode": "123456",
    "StreetName": "ABC",
    "Language": "ZZ",
    "AuthorizationGroup": "1234",
    "HouseNumber": "123",
    }

     

  3. Error message is raised in the response payload : 'Internal error when calling operation module BUA_CHECK_ADDRESS_VALIDITY_ALL; a check table is missing'

Cause

The business partner XYZ was created without an address. If the business partner does not have an address and an attempt is made to add one using a POST call on the address of the business partner through the API_BUSINESS_PARTNER, the system will throw an error.

Resolution

The address usage XXDEFAULT must be included for the first address created for an existing business partner XYZ. For any additional addresses added to a business partner, the address usage XXDEFAULT is not required.

As long as a business partner has at least one valid address, there must always be a default address. The default address is identified via the address usage XXDEFAULT.

As of today, the first Address that is created for an already existing Business Partner is not set as default Address automatically during the processing of the service request. It is only set as default address if the address usage XXDEFAULT is specified explicitly in the request payload. Therefore, including the address usage in the request payload will add the address successfully for a business partner which was created without an address.

Example of the Request Payload :

{

"BusinessPartner" : "XYZ",

"Country": "YY",
"CityName": "PQR",
"PostalCode": "123456",
"StreetName": "ABC",
"Language": "ZZ",
"AuthorizationGroup": "1234",
"HouseNumber": "123",
                "to_AddressUsage": 

                  [
                       {
                           "AddressUsage": "XXDEFAULT",
                           "StandardUsage": true
                       }
                  ]

(where YY represents the Country,
PQR represents City Name,
123456 represents the Postal Code,
ABC represents the Street Name,
ZZ represents the Language,
1234 represents the Authorization Group,
123 represents the House Number) 

Upon executing the above request payload, the first address is added to the business partner XYZ.

Note:

When the address information is manually filled into the existing business partner, no error occurs. The error is related only to the OData API_BUSINESS_PARTNER when creating the first address to an already existing business partner.

Keywords

API_BUSINESS_PARTNER, OData, API, Business Partner, POST, Address Usage, BUA_CHECK_ADDRESS_VALIDITY_ALL, Address, AddressUsage, XXDEFAULT, a check table is missing, to_BusinessPartnerAddress, A_BusinessPartner , KBA , AP-MD-BP-BP-2CL , Data (Public Cloud) , AP-MD-BP , Business Partner , LO-MD-BP , Business Partners , How To

Product

SAP S/4HANA Cloud Public Edition all versions