Product Information > JADE External Interface Developer’s Reference > Chapter 4 - Using External Component Libraries > Importing Into an ANSI JADE System

Importing Into an ANSI JADE System

If the assembly being imported uses only ANSI characters for class and member names, the conversion from Unicode to ANSI is transparent. However, that is not the case if the names contain characters that cannot be represented in the current code page. For example, if a .NET class member with a name '员工工号' is imported into an ANSI JADE system with an English code page, the name displays as '????' and has a mapped JADE name of '____'.

JADE names consist of the characters a through z, A through Z, 0 through 9, and the underscore character. During default name creation, characters not in this set are replaced by the underscore character.

There is also a problem with the generated property mapping methods and the generated methods, as the first parameter is the member name. For example, the generated mapping method for '员工工号' under Unicode or ANSI when running under a Chinese locale is as follows.

begin
    jadeDotNetProperty('员工工号', set_, value_);
end;

When running under ANSI with an English locale, the mapping method (which fails at run time) is as follows.

begin
    jadeDotNetProperty('????', set_, value_);
end;

If the .NET assembly has Unicode characters in class and member names, the Unicode version of JADE is recommended. The ANSI version of JADE can be used if the code page used for importing the assembly is the same as that used at run time and the code page can represent all of the characters used. If the code pages used for importing the assembly and at run time are different, exceptions regarding classes and or methods not found are likely to be raised.