Unicode compatibility considerations
The BMC Remedy AR System 7.x and later servers and clients are generally compatible with older BMC Remedy AR System servers and clients. However, Unicode operations require special compatibility considerations.
Unicode character sets and lengths
Because strings stored in different character sets have different lengths, older BMC Remedy AR System products are not compatible with the 7.x and later Unicode BMC Remedy AR System server. All version 7.x and later products are compatible with the 7.x and later Unicode BMC Remedy AR System server.
Because lengths in the serialized structures are in terms of Unicode characters and not the code set of the clients, clients cannot properly deserialize the characters. This problem occurs when external qualifications are used in table fields and in workflow. Clients using pre-7.0.01 APIs cannot properly parse these items. The problem occurs with serialized structures that contain 8-bit or multibyte characters (including, but not limited to, Asian languages, Eastern European, or accented characters in Western European languages). Serialized structures that contain only 7-bit ASCII characters (English letters, digits, and punctuation) are not affected.
If you are running an older BMC Remedy AR System product against a 7.x or later Unicode BMC Remedy AR System server, you should upgrade those products to the 7.x or later release. If you cannot upgrade these products, patches to the 6.0 and 6.3 APIs are available to make them compatible with the 7.x or later server. You can obtain them from the patch pages at the Customer Support website ( http://www.bmc.com/support).
Unicode and version 6.3.00
- Do not use version 6.3 or earlier versions of BMC Remedy Administrator with a Unicode server. Consider disabling pre-7.x clients altogether if possible.
- If you must use version 6.3 or earlier BMC Remedy AR System clients (including BMC Remedy Mid Tier and BMC Remedy Distributed Server Option) with a Unicode server, they will only work if the server's operating system has the same character set as the client.
For example, this combination works:
- 6.3 mid tier
- French client operating system
- German server operating system
This combination does not work:
- 6.3 mid tier
- French client operating system
- Chinese server operating system
- Version 6.3 or earlier BMC Remedy AR System clients (including BMC Remedy Mid Tier and BMC Remedy Distributed Server Option) work with a non-Unicode server only if the operating system running the client has the same character set as the server's operating system.
For example, a mid tier running on a French operating system (Western European character set) can safely contact a non-Unicode server running on a German or English operating system (also Western European character set), but not one running under a Chinese or Japanese operating system.
Non-Unicode and version 7.x
- A version 7.x or later non-Unicode client can contact a version 7.0.01 or later non-Unicode server if the operating system running the client has the same character set as the server's operating system.
For example, if a non-Unicode BMC Remedy AR System server is on a Chinese operating system, the 7.0.01 version of the mid tier can contact it only if it is installed on a Chinese operating system.
If a non-Unicode BMC Remedy AR System server is on a German operating system, the 7.0.01 version of the mid tier can contact it only if it is installed on a Western-European operating system (the same character set as the server's operating system--English or French or Italian, and so on).
- A version 7.x or later non-Unicode client can contact a pre-7.x server if the operating system running the client has the same character set as the server's operating system.
- A non-Unicode client can access specific language data stored on a Unicode BMC Remedy AR System server installed on a Unicode database if the non-Unicode client is installed on the computer with the same character set to which that language belongs.
For example, if an English computer has Unicode BMC Remedy AR System server installed on it with a Unicode database, and the data stored is German, Japanese, and Russian:
- A mid tier that is installed on a Japanese computer (Japanese character set) can work with the Japanese data on that database.
- A mid tier that is installed on a French, English, or Spanish computer (Western European character set) can work with German data on that database.
- A mid tier that is installed on a Bulgarian computer (Cyrillic character set) can work with Russian data on that database.
Unicode clients and non-Unicode servers
You can run a Unicode client on a non-Unicode server without restrictions.
BMC Remedy AR System components and Unicode considerations
If you run the following BMC Remedy AR System 7.x and later components in Unicode mode, they do not corrupt data when run against a Unicode-enabled BMC Remedy AR System server:
- BMC Remedy AR System server
- Plug-in server
- BMC Remedy Approval Server
- BMC Remedy Assignment Engine
- BMC Remedy Email Engine
The following sections discuss considerations for running specific BMC Remedy AR System components with Unicode.
BMC Remedy AR System server
A BMC Remedy AR System server running in Unicode mode might be required to run another program (as a Run Process action, for example) and to accept characters written by the program through the program's standard output.
On UNIX systems, the program must write UTF-8 characters to its output. For example, a BMC Remedy AR System server running in Unicode mode expects data returned from a Set Fields filter action to be in UTF-8. A non-Unicode server running in the Japanese locale expects data to be returned in EUC.
On Windows systems, BMC Remedy AR System inspects the first 2 bytes of the program's output to determine if it is UTF-16. If it is UTF-16, BMC Remedy AR System treats it as Unicode. Otherwise, BMC Remedy AR System treats the program's output as characters from the system's active code page. For example, a Japanese server runs on a operating system using Windows codepage 932 (Shift-JIS character set.)
In BMC Remedy AR System 6.x, it is possible to run a BMC Remedy AR System server in non-Unicode mode with a Unicode database. In BMC Remedy AR System 7.x and later, this type of configuration is not supported.
Two codesets affect the plug-in server and the plug-ins that run under it:
- The codeset in which the server provides characters when it calls the plug-in's callback routines
- The codeset that the plug-in uses when it makes API calls to the server
The server always uses its own codeset when delivering characters to plug-in callback routines. Therefore, a Unicode server always delivers characters in the UTF-8 codeset.
Version 7.x and later of the mid tier is a Unicode client for the BMC Remedy AR System server. A single mid tier can manage clients and transfer data in any language supported by BMC Remedy AR System.
The mid tier's Flashboards service renders characters for display. Make sure that fonts are available for the characters of all languages in which you provide Flashboards.
When operating in Unicode mode, the API accepts and returns characters in the UTF-8 character encoding. It does not support the UTF-16 character encoding.
The runmacro program, which is sometimes used to do batch exports of data, is not Unicode-safe. Do not use runmacro with a Unicode server.
BMC Remedy ODBC driver
The BMC Remedy ODBC driver is a multi-threaded, ODBC 3.5-compliant Unicode driver that runs a BMC Remedy AR System API client under Windows.
If you connect ANSI applications to a BMC Remedy AR System Unicode server through the Remedy ODBC driver, any data transferred is converted from ANSI to UTF-16, and then from UTF-16 to UTF-8. If the BMC Remedy AR System server is non-Unicode, then the data is converted from ANSI to UTF-16, from UTF-16 to UTF-8, and then from UTF-8 to the server's native character set.
The following utilities can be used with Unicode servers:
BMC Remedy Developer Studio
BMC Remedy Developer Studio is Unicode-safe. It has no character set restrictions.
If you internationalize BMC Remedy AR System and you continue to use the BMC Remedy Administrator tool from versions prior to 7.5.00, you must use object names that use ASCII characters. For more information about Unicode and BMC Remedy AR System 7.1.00, see the BMC Remedy Action Request System 7.1.00 Installing Guide.
BMC Remedy Data Import
BMC Remedy Data Import is Unicode-safe.
BMC Remedy Data Import is also Unicode-safe when you run it from the command line (
arimportcmd). For BMC Remedy AR System 7.6.03 and later, use the Java-based import utility. For more information, see Enabling the Data Import utility.
BMC Remedy AR System Administration Console
The BMC Remedy AR System Administration Console form is Unicode-safe only when run from a version 7.x or later mid tier. For more information about the console, see Configuring AR System servers.
BMC Remedy Migrator
BMC Remedy Migrator is Unicode-safe.