SAP NetWeaver AS ABAP Release 740, ©Copyright 2014 SAP AG. All rights reserved.
ABAP Keyword Documentation → ABAP − Reference → Calling and leaving program units → Calling Processing Blocks → Calling Procedures → External Procedure Call → Program Attributes for External Procedure Call →Unicode Checks for External Procedure Call
External procedure calls are carried out in accordance with the Unicode Check property of the main program in question. Each actual parameter that is connected to a formal parameter of the procedure is handled in accordance with the property of the called program regardless of the corresponding property of the calling program and the parameter type and pass type.
However, the typing check takes place in accordance with the setting for the calling program. This means the following:
Example
Take the following global class:
A calling program might appear as follows:
If the calling program is a Unicode program, calling meth is not permitted for syntax reasons regardless of the class pool called. If the calling program is a non-Unicode program, the call is allowed but a runtime error occurs if the called class pool is a Unicode program.
Let the definition of the method be changed as follows:
Let the call be changed as follows:
The call is now possible in all combinations from a syntax point of view. If the called class pool is a Unicode program, a runtime error occurs regardless of the calling program. If the called class pool is not a Unicode program, the structure there is changed in accordance with the rules in non-Unicode programs regardless of the calling program (implicit casting of type c) and is passed to the calling program.