Essbase® Analytic Services Database Administrator's Guide | | Update Contents | Previous | Next | Print | ? | |
Information Map | |
In most cases, administering Unicode-mode applications is no different than administering non-Unicode-mode applications. Working in multiple character sets in Unicode mode can require additional attention in the following areas:
Consider installing the following tools (not provided by Hyperion Solutions) for working with UTF-8 encoded text on computers that manage Unicode-mode applications:
Several software manufacturers provide UTF-8 fonts and Unicode editors.
Analytic Services security is defined at the Analytic Server level. To create passwords, use characters encoded according to the code page specified in the ESSLANG value on Analytic Server. In a multiple character set environment, consider using the characters in the standard ASCII character set, in the range from 0 through 127. Standard ASCII includes the upper and lower case letters in the standard English alphabet and the numerals 0 through 9. These characters are common to all code pages as well as to UTF-8.
When you name applications and databases, be sure to use characters supported by the locale of the computer.
Working with Unicode-mode applications involves the following processes:
By setting Analytic Server to Unicode mode, you grant permission for creating Unicode-mode applications and for migrating applications to Unicode mode.
To set Analytic Server to Unicode mode, use either of the following methods:
Tool |
Topic |
Location |
---|---|---|
Managing the Analytic Server Permission to Create Unicode-Mode Applications |
||
Note: You can work with Unicode-mode applications without Analytic Server being set to Unicode mode.
The Unicode-related mode of Analytic Server indicates whether or not Analytic Server has permission to create Unicode-mode applications and to migrate applications to Unicode mode. In Essbase Administration Services, the Unicode-related mode of Analytic Server is shown as a server property. In MaxL, it is displayed as the configuration, with the following values:
To check to see whether Analytic Server is set to Unicode mode, use either of the following methods:
Tool |
Topic |
Location |
---|---|---|
Managing the Analytic Server Permission to Create Unicode-Mode Applications |
||
At the time that you create an application you can specify the application to be in Unicode mode.
To create a new application and specify it to be in Unicode mode, use either of the following methods:
Tool |
Topic |
Location |
---|---|---|
When Analytic Server migrates an application to Unicode mode, the character encoding in the application files is converted to UTF-8 encoding. Text files such as calculation scripts, report scripts, and data sources are not converted to UTF-8 encoding. For Unicode-mode applications, text files such as calculation scripts, report scripts, and data sources can be encoded in UTF-8 or in non-Unicode locales. You can use the Analytic Services Unicode File Utility to convert non-Unicode-encoded files to UTF-8. For details about this utility, see the Technical Reference.
Note: If you choose to work with non-Unicode text files, make sure that you understand how Analytic Services determines the locales of non-Unicode text files. See Managing File Encoding.
Before migrating application files to Unicode mode, perform the following tasks:
.chg
; for example, \sample\basic\basic.chg
..log
,.xcp
, and .
olg
.
To migrate an application from non-Unicode mode to Unicode mode, use either of the following methods:
Tool |
Topic |
Location |
---|---|---|
In Administration Services, the Unicode-related mode of an application is shown as an application property. In MaxL, it is displayed as the application type, with the following values:
To see whether an application is a Unicode-mode application, use either of the following methods:
Tool |
Topic |
Location |
---|---|---|
When working with reports for non-Unicode-mode applications, Report Writer uses language-specific codes that enable columnar data to line up precisely. Unicode does not contain language-specific formatting codes within its encoding. As a result, report columns may not line up precisely.
Non-Unicode-mode applications that use single-byte code pages continue to support the following Hexadecimal control characters in report scripts: x20
, x09
, x0A
, x0D
, xB3
, xC3
, xC4
, xC2
, xC0
, x0C
, xB1
.
Unicode-mode applications and non-Unicode-mode applications that use multi-byte code pages support the following Hexadecimal control characters in report scripts: x20
, x09
, x0A
, x0C
, x0D
.
Consider the following situations when designing and working with partitions:
essmsh
).By default, the agent log file is encoded to the locale specified by the ESSLANG variable defined for Analytic Server. You can use the configuration setting UNICODEAGENTLOG to tell Analytic Server to write the agent log in UTF-8 encoding. In UTF-8 encoding, with a font that supports it, all characters should be readable. For details about the UNICODEAGENTLOG configuration setting, see the Technical Reference.
Application and outline change log files for databases in Unicode-mode applications are UTF-8 encoded. You can use Log Viewer or Log Analyzer in Essbase Administration Services or a UTF-8 editor to view these application logs. You need a UTF-8 editor or viewer to view outline change logs. You cannot change the encoding of logs related to Unicode-mode applications to non-Unicode encoding.
Analytic Services supports many non-Unicode encodings, as listed under Supported Locales. In addition, UTF-8 encoding is supported for Unicode-mode applications.
Because a bit combination can map to different characters in different encodings, you need to understand how Analytic Services works with file encodings-particularly if you intend to use non-Unicode-encoded files with Unicode-mode applications.
Note: For Unicode-mode applications shared across multiple locales, using UTF-8-encoded files is recommended. Using UTF-8 encoding is simpler because you do not have to keep track of locales and encoding. Also, using UTF-8 can be more efficient because Administration Server uses Unicode encoding internally and no internal conversion between formats is needed.
The following topics describe how Analytic Services determines the encoding of files and how you manage files with different encoding:
With non-Unicode-mode applications, Analytic Services and Administration Services assume that character text is encoded to the locale specified by the ESSLANG value defined for Analytic Server.
When Analytic Services works with Unicode-mode applications, it encodes character text in UTF-8 encoding internally and stores character text in UTF-8. Export files are also encoded in UTF-8. When Analytic Services works with Unicode-mode applications, it can also handle non-Unicode-encoded input files such as script files, rules files, and data sources, converting them internally to UTF-8.
Note: For Unicode-mode applications, Analytic Services requires the query log settings file dbname.
cfg
to be encoded in UTF-8.
Analytic Services and Administration Services use file encoding indicators to know whether a file is encoded in UTF-8 or in one of the supported non-Unicode encodings. Encoding indicators are UTF-8 signatures or locale indicators. A locale indicator is optional for a non-Unicode input file whose encoding matches the locale of the Analytic Server. However, a locale indicator must be provided for a non-Unicode input file that is encoded different from the encoding specified in the locale of Analytic Server. For details about encoding indicators, see Encoding Indicators.
UTF-8-encoded text files must include the UTF-8 signature.
Administration Services uses the following process to determine the encoding of a non-Unicode-encoded file:
When Analytic Services performs a dimension build or data load, the rules file and data file can have different encodings; for example, the text in a rules file can be in UTF-8 encoding, and the data source can be encoded to a non-Unicode computer locale.
Note: When you use Administration Services Console to create script files or data sources, the appropriate encoding indicator is automatically included in the file. When you use any tool other than Administration Services Console to create text Unicode-encoded files, you must ensure that the UTF-8 signature is included. Non-Unicode-encoded text files require a locale indicator if the encoding is different than the locale of Analytic Server.
The following text Analytic Services system files are encoded to the locale specified by the ESSLANG value defined for Analytic Server.
To properly interpret text such as member names, Analytic Services must know how it is encoded. Many files contain an encoding indicator, but you may occasionally be prompted to specify the encoding of a file; for example, when Administration Services creates a file and stores it in a different location than the Analytic Server, or when Administration Services reads a file created by a non-Unicode release of Analytic Services. The type of encoding indicator depends on the type of file:
The UTF-8 signature is a mark at the beginning of a text file. The UTF-8 signature, visible in some third-party editors, indicates that the file is encoded in UTF-8. Many UTF-8 text editors can create the UTF-8 signature. You can also use the Analytic Services Unicode File Utility (ESSUTF8) to insert the UTF-8 signature into a file. For more information, see Analytic Services Unicode File Utility. When you create a file using Administration Services Console, a UTF-8 signature is automatically inserted in the file.
UTF-8-encoded text files must contain the UTF-8 signature.
The locale header record is an additional text record that identifies the encoding of the non-Unicode-encoded text file. You can add the locale header at the time you create the file or you can use the Analytic Services Unicode File Utility to insert the locale header. For details about the locale header, see Locale Header Records.
Note: Do not combine a UTF-8 signature and locale header in the same file. If a text file contains both types of encoding indicators, the file is interpreted as UTF-8 encoded, and the locale header is read as the first data record.
Caution: Do not use non-Unicode-encoded files containing locale indicators with Analytic Server installations that are not Unicode enabled, that is, installations that used a release prior to Release 7.0. The Analytic Services Unicode File Utility (ESSUTF8) enables you to remove locale indicators.
The locale header record is an additional text record that identifies the encoding of the non-Unicode text file. You can insert the locale header record as the first record in a non-Unicode-encoded text file when you create the file or you can use the Analytic Services Unicode File Utility (ESSUTF8) program to add the header. The locale header record has the following format:
//ESS_LOCALE <locale-name>
<locale-name
> is a supported Global C locale in the format that is used for the ESSLANG variable:
<language>_<territory>.<code page name>@<sortsequence>
Note: Analytic Services consults only the <code page name> portion of the record. The <sortsequence> specification does not affect sort sequences in report scripts.
See Supported Locales for a list of supported Global C locales.
The following example displays a locale header for a specific Russian code page:
//ESS_LOCALE Russian_Russia.ISO-8859-5@Default
The following rules also apply:
locale-name
>, use a blank, tab or <end of line> to end the header. Caution: Do not insert a locale header record in a UTF-8 encoded file. The file is interpreted as UTF-8 encoded, and the locale header is read as the first data record.
For compatibility, when Administration Services Console saves calculation scripts on Analytic Server installations that are not Unicode-enabled, that is, installations that use a release prior to Release 7.0, it uses a different format. Instead of prefixing the locale with //
, Administration Services Console inserts the locale header between the calculation script comment indicators, /*
*/
.
The following supported locales can be used as locales in locale header records and in the Analytic Services Unicode File Utility (ESSUTF8) and as ESSLANG values.
Arabic_SaudiArabia.ISO-8859-6@Default Arabic_SaudiArabia.MS1256@Default Croatian_Croatia.ISO-8859-2@Croatian Croatian_Croatia.MS1250@Croatian CyrillicSerbian_Yugoslavia.ISO-8859-5@Default CyrillicSerbian_Yugoslavia.MS1251@Default Czech_CzechRepublic.ISO-8859-2@Czech Czech_CzechRepublic.MS1250@Czech Danish_Denmark. ISO-8859-15@Danish Danish_Denmark.IBM500@Danish Danish_Denmark.Latin1@Danish Danish_Denmark.MS1252@Danish Dutch_Netherlands.IBM037@Default Dutch_Netherlands.IBM500@Default Dutch_Netherlands.ISO-8859-15@Default Dutch_Netherlands.Latin1@Default Dutch_Netherlands.MS1252@Default English_UnitedStates.IBM037@Binary English_UnitedStates.IBM285@Binary English_UnitedStates.IBM500@Binary English_UnitedStates.Latin1@Binary English_UnitedStates.MS1252@Binary English_UnitedStates.US-ASCII@Binary Finnish_Finland.IBM500@Finnish Finnish_Finland.ISO-8859-15@Finnish Finnish_Finland.Latin1@Finnish Finnish_Finland.MS1252@Finnish French_France.IBM297@Default French_France.IBM500@Default French_France.ISO-8859-15@Default French_France.Latin1@Default French_France.MS1252@Default German_Germany.IBM273@Default German_Germany.IBM500@Default German_Germany.ISO-8859-15@Default German_Germany.Latin1@Default German_Germany.MS1252@Default Greek_Greece.ISO-8859-7@Default Greek_Greece.MS1253@Default Hebrew_Israel.ISO-8859-8@Default Hebrew_Israel.MS1255@Default Hungarian_Hungary.ISO-8859-2@Hungarian Hungarian_Hungary.MS1250@Hungarian Italian_Italy.IBM280@Default Italian_Italy.IBM500@Default Italian_Italy.ISO-8859-15@Default Italian_Italy.Latin1@Default Italian_Italy.MS1252@Default Japanese_Japan.IBM930@Binary Japanese_Japan.JapanEUC@Binary Japanese_Japan.MS932@Binary Korean_Korea.MS1361@Binary Korean_Korea.MS949@Binary Norwegian_Norway.IBM500@Danish Norwegian_Norway.ISO-8859-10@Danish Norwegian_Norway.ISO-8859-15@Danish Norwegian_Norway.ISO-8859-4@Danish Norwegian_Norway.Latin1@Danish Norwegian_Norway.MS1252@Danish Polish_Poland.ISO-8859-2@Polish Polish_Poland.MS1250@Polish Portuguese_Portugal.IBM037@Default Portuguese_Portugal.IBM500@Default Portuguese_Portugal.ISO-8859-15@Default Portuguese_Portugal.Latin1@Default Portuguese_Portugal.MS1252@Default Romanian_Romania.ISO-8859-2@Romanian Romanian_Romania.MS1250@Romanian Russian_Russia.ISO-8859-5@Default Russian_Russia.MS1251@Default Serbian_Yugoslavia.ISO-8859-2@Default Serbian_Yugoslavia.MS1250@Default SimplifiedChinese_China.IBM935@Binary SimplifiedChinese_China.MS936@Binary SimplifiedChinese_China.UTF-8@Binary Slovak_Slovakia.ISO-8859-2@Slovak Slovak_Slovakia.MS1250@Slovak Slovenian_Slovenia.ISO-8859-10@Slovenian Slovenian_Slovenia.ISO-8859-2@Slovenian Slovenian_Slovenia.ISO-8859-4@Slovenian Slovenian_Slovenia.MS1250@Slovenian Spanish_Spain.IBM500@Spanish Spanish_Spain.ISO-8859-15@Spanish Spanish_Spain.Latin1@Spanish Spanish_Spain.MS1252@Spanish Swedish_Sweden.IBM500@Swedish Swedish_Sweden.ISO-8859-15@Swedish Swedish_Sweden.Latin1@Swedish Swedish_Sweden.MS1252@Swedish Thai_Thailand.MS874@Thai TraditionalChinese_Taiwan.EUC-TW@Binary TraditionalChinese_Taiwan.IBM937@Binary TraditionalChinese_Taiwan.MS950@Binary Turkish_Turkey.ISO-8859-3@Turkish Turkish_Turkey.ISO-8859-9@Turkish Turkish_Turkey.MS1254@Turkish Ukrainian_Ukraine.ISO-8859-5@Ukrainian Ukrainian_Ukraine.MS1251@Ukrainian
You can use the Analytic Services Unicode File Utility to convert non-Unicode-encoded text files to UTF-8 encoding or to add or delete encoding indicators. This program supports the following operations:
.otl
) or rules files (.rul
)
Located in the ARBORPATH
\bin
directory, the Analytic Services Unicode File Utility is called essutf8.exe
(in Windows) or ESSUTF8
(in UNIX). You can use the utility program with the following files:
For information about this utility and its command syntax, see the Technical Reference.
![]() |