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.
The following topics are provided:
Unicode character sets and lengths
Because strings stored in different character sets have different lengths, older BMC Remedy AR System products are incompatible 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 application programming interfaces (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 or Eastern European languages, or accented characters in Western European languages). Serialized structures that contain only 7-bit ASCII characters (English letters, digits, and punctuation) are unaffected.
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 them, you can obtain patches to the 6.0 and 6.3 APIs to make these products compatible with the 7.x or later server. You can obtain the patches from the patch pages at the Customer Support website (http://www.bmc.com/support).
Unicode and version 6.3.00
The following compatibility issues exist for Unicode and version 6.3.00:
- Do not use version 6.3 or earlier versions of BMC Remedy Administrator tool 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 work only if the server's operating system has the same character set as the client.
For example, the following combination works:
- BMC Remedy Mid Tier 6.3
- French client operating system
- German server operating system
- BMC Remedy Mid Tier 6.3
- 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 on 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 running 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 running 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, French, 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 in German, Japanese, and Russian, then:
- 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
- BMC Remedy AR System Plug-in Server
- BMC Remedy Approval Server
- Assignment Engine
- BMC Remedy Distributed Server Option (DSO)
- Remote Desktop Protocol (RDP)
- 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 requires data returned from a Set Fields filter action to be in UTF-8. A non-Unicode server running in the Japanese locale requires data to be returned in EUC.
On Windows systems, BMC Remedy AR System checks the first 2 bytes of the program's output. If it is in UTF-16 character encoding, 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 an 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. Ensure 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 multithreaded, 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 BMC 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, 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 are compatible 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 earlier than 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 Installation Guide.
BMC Remedy Data Import
BMC Remedy Data Import is Unicode-safe whether you run it under standard operating conditions or from the command line (
For BMC Remedy AR System 7.6.03 and later, use the Java-based import utility. For more information, see in the BMC Remedy AR System documentation.
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 in the BMC Remedy AR System documentation.
BMC Remedy Migrator
BMC Remedy Migrator is Unicode-safe.