Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

TRANSLATE LOWER-CASE statement returns different values in different systems

Former Member
0 Likes
411

Hi Experts,

     I encountered the following problem while debugging the print program of an Adobe Form, which has the below-mentioned line of code:-

TRANSLATE v_var1 TO LOWER CASE.

The variable v_var1 is of type MSEHT whose basic type is CHAR with length 10.

The incoming variable, v_var1 has the value 'ШT', which is the upper-case Russian equivalent of the Unit Of Measure - ST.

     In the Production system, after the execution of the statement, the value v_var1 changes to 'шт'. But in the Development and Testing systems, which also have the same code as the Production system, the value v_var1 changes to 'шt'. In all the three systems, I had logged in the same login language('E'). The same problem remains when I log-in in Russian('R'). The text gets reflected in the Adobe forms and there aren't any JavaScript/FormCalc conditions on the particular window to change the font/case. The user wants 'шт' to be displayed (as is being displayed now) in the Prod. But since I'm not able make the same appear in the testing system, they are not confident to transport the changes to the prod.

     In the help documentation of TRANSLATE, I found that the "text environment" is a factor that affects TRANSLATE statements and could be set by the statement

     SET LOCALE LANGUAGE lang.

     which will basically change the system language. There aren't any SET LOCALE LANGUAGE statements in the Print program. I can hard-code and display it but I would like to know alternate solutions. Is it because of any system-specific font/text setting?

Hi Experts,

     I encountered the following problem while debugging the print program of an Adobe Form, which has the below-mentioned line of code:-

TRANSLATE v_var1 TO LOWER CASE.

The variable v_var1 is of type MSEHT whose basic type is CHAR with length 10.

The incoming variable, v_var1 has the value 'ШT', which is the upper-case Russian equivalent of the Unit Of Measure - ST.

     In the Production system, after the execution of the statement, the value v_var1 changes to 'шт'. But in the Development and Testing systems, which also have the same code as the Production system, the value v_var1 changes to 'шt'. In all the three systems, I had logged in the same login language('E'). The same problem remains when I log-in in Russian('R'). The text gets reflected in the Adobe forms and there aren't any JavaScript/FormCalc conditions on the particular window to change the font/case. The user wants 'шт' to be displayed (as is being displayed now) in the Prod. But since I'm not able make the same appear in the testing system, they are not confident to transport the changes to the prod.

     In the help documentation of TRANSLATE, I found that the "text environment" is a factor that affects TRANSLATE statements and could be set by the statement

     SET LOCALE LANGUAGE lang.

     which will basically change the system language. There aren't any SET LOCALE LANGUAGE statements in the Print program. I can hard-code and display it but I would like to know alternate solutions. Is it because of any system-specific font/text setting?

1 REPLY 1
Read only

Florian
SAP Champion
SAP Champion
0 Likes
373

Hi David,

perhaps the systems got different codepages. This may cause the different.

Just another suggestion.

Regards

Florian