Application Development 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: 

Unicode compliance tool and test

Former Member
0 Kudos

Hi,

I run UCCHECK, and it lists all non-unicode compliance custom programs. For programs with result as "The system found no Unicode syntax errors", only thing I need to do is to activate the unicode flag checkbox. I have two questions:

1. Is there an easy way to activate the unicode flag checkbox once or I have to do it program by program?

2. What test need to be done after the unicode flag is checked. I know to make sure they are working as expected will need to test all the functionality, but wonder if anyone has done this before and knows scenarios what need to test and what doesn't need to test.

Thanks!

1 ACCEPTED SOLUTION

former_member194669
Active Contributor
0 Kudos

1. For activating the unicode check , use transaction code UCCHECK select which are programs you need to make unicode check active. in the application you can find button "set unicode attribute" select system will make you unicode active to selected programs.

2. I don't find any easy way to this. In our case we have made 2 systems one is with unicode active and other one is non-unicode , and tested the programs in both enviornments.

7 REPLIES 7

former_member194669
Active Contributor
0 Kudos

1. For activating the unicode check , use transaction code UCCHECK select which are programs you need to make unicode check active. in the application you can find button "set unicode attribute" select system will make you unicode active to selected programs.

2. I don't find any easy way to this. In our case we have made 2 systems one is with unicode active and other one is non-unicode , and tested the programs in both enviornments.

0 Kudos

Thank you for your quick reply. From the test perspective, if I run UCCHECK with option "Display lines that cannot be analyzed statically", will it be sufficient to assume there will be no runtime errors for a set of programs?

0 Kudos

Yes,

I find this the documentation related to this

If you choose this option, you get an overview of the program points, where a static check for Unicode syntax errors is not possible. This can be the case if, for example, parameters or field symbols are not typed or you are accessing a field or structure with variable length/offset. At these points the system only tests at runtime whether the code is sufficient for the stricter Unicode tests. If possible, you should assign types to the variables used, otherwise you must check runtime behavior after the Unicode attribute has been set.

0 Kudos

With this option on during UCCHECK, if the Exception column displayed yellow warning, the error code displayed in the Error Code column, then it means runtime errors will be occured, is this correct?

Without the option:

ZHAXR027 ZHAXR027 0 OK The system found no Unicode syntax errors

With the option is checked:

ZHAXR027 ZHAXR027 3,978 MESSAGEG!K The system cannot perform a static check for incompletely-typed operand

ZHAXR027 ZHAXR027 3,978 MESSAGEG!K "REPORT_WIDTH" whether or not it can be converted to a number . - . - . - . -

ZHAXR027 ZHAXR027 3,978 MESSAGEG!K . - . - . - . - . - -

ZHAXR027 ZHAXR027 3,980 MESSAGEG!J The system cannot perform a static check on incompletely-typed operand

ZHAXR027 ZHAXR027 3,980 MESSAGEG!J "TITLE_LINE_4" to check whether or not the operand can be converted to a

ZHAXR027 ZHAXR027 3,980 MESSAGEG!J string . - . - . - . - . - - - - - -

ZHAXR027 ZHAXR027 3,993 MESSAGEG!M For the operand "IN_DATE(4)", the validity of the offset/length specification

ZHAXR027 ZHAXR027 3,993 MESSAGEG!M cannot be statically checked. The check is carried out at runtime . . . . . .

Thank you, appreciate your help.

0 Kudos

The mentioned in your reply all static warning, these will getting triggered only at runtime.

Former Member
0 Kudos

Unfortunately, UCCHECK will not find all problems. For example, if STRLEN is used in a unicode environment it may produce incorrect results. It is replaced with NUMOFCHAR. We did not see this reported by UCCHECK, but were strongly advised to replace it.

It seems to be a two stage process. You trun on the unicode check in your programs and test them and then turn on the unicode switch in the database and retest.

Rob

Former Member
0 Kudos

Thank you all for the help.