SAP Knowledge Base Article - Public

3364262 - Executing "Unprivileged SQL" from "XYZ" violates transactional contract "FUNCTIONAL" - S/4HANA Cloud 2308

Symptom

  • You are using Custom Logic app
  • You are getting error message Executing "Unprivileged SQL" from "XYZ" violates transactional contract "FUNCTIONAL" 

Environment

S/4HANA Cloud 2308

Reproducing the Issue

1. Go to Custom Logic app

2. Open Code Editor for an implementation

In a SELECT statement, the following error message is displayed "Unprivileged SQL" from "XYZ" violates transactional contract "FUNCTIONAL".

Cause

The warning along the lines of Executing "Unprivileged SQL" from "XYZ" violates transactional contract "FUNCTIONAL" on the select statement stems from a syntax check newly implemented in the ABAP language.

The provider of an extension point classifies the extension point (in this case as "FUNCTIONAL").

The consumer of an extension point is then expected to only implement logic that is compatible with this classification.

The select statement in question sets off the check because the entity "I_ABC" which specifies some special access restrictions that are technically not allowed under the functional classification.

Resolution

This can be solved by executing the select statement "with privileged access":

select single * from I_ABC with privileged access where field1 = @structure-field2 into @data(ls_abc).

Keywords

KBA , BC-SRV-APS-EXT-BL , Custom Business Logic , Problem

Product

SAP S/4HANA Cloud 2308