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

You created a Business Partner XYZ without an Address. Your requirement is to 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

Reproducing the Issue

OData Query : /sap/opu/odata/sap/API_BUSINESS_PARTNER/A_BusinessPartner('XYZ')/to_BusinessPartnerAddress


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",
}

 

You see the below error in the Response Payload:

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

Cause

You created the Business Partner XYZ without an Address. When the Business Partner does not have an Address and you want to add the Address using the POST call on the Address of the Business Partner using the API_BUSINESS_PARTNER, system will throw an error. 

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.

Resolution

You must include the Address Usage XXDEFAULT for the first Address that is created for an already existing Business Partner XYZ. For all additional Addresses that are added to a Business Partner, the Address Usage XXDEFAULT is not a must.

 

Example of the Request Payload below.

{

"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:

If you fill the Address information manually to the existing Business Partner, there is no error. 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 , Business Partner , Problem

Product

SAP S/4HANA Cloud all versions