Maximo更改语言支持

本地化不受支持的基本语言的数据库

可使用数据转换工具箱(TD 工具箱)来本地化不受支持的基本语言的数据库。

开始之前

XML 本地化交换文件格式 (XLIFF) 是一种带有用于翻译过程的特定标记的 XML 文件。XLIFF 文件遵守有关格式化语言的 8 位 Unicode 变换格式 (UTF-8) 标准。

过程

  1. 要从数据库导出可转换数据,请完成以下步骤:
    1. 切换到 tools\maximo installation 子目录并运行导出命令。
    2. 运行 tdtoolkit -export 批处理文件。 此批处理文件会将可转换的数据导入 \tools\maximo\xliff\export 目录中。
  2. 要将所有 XLIFF 文件从英语转换为本地化语言,请完成以下步骤:
    1. 在各 XLIFF 文件中,找到 <target> </target> 标记的实例。
    2. 将这些标记之间的文本替换为要转换为的语言的文本。
  3. 要将转换的 XLIFF 文件导入到数据库,请完成以下步骤:
    1. 创建子目录 \tools\maximo\lc\xliff,其中 lc 表示双字母语言代码。该双字母语言代码位于 LANGUAGE 表中的 MAXLANGCODE 列内。
    2. 将 \tools\maximo\xliff\export 目录内的文件复制到新子目录 \tools\maximo\lc\xliff
    3. 要将 XLIFF 文件转换并放入数据库,请在安装目录中运行 tdtoolkit -import -tllc -versionV7100-000 import 命令。 例如,要导入希伯来语(不受支持)数据库,请运行导入命令:tdtoolkit -import -tlhe -version7100-000

示例

如果以其他基本语言使用数据库,可以将英语数据库转换为不受支持的基本语言。例如,可为阿拉伯语的用户将数据库转换为阿拉伯语。可向阿拉伯语数据库添加辅助语言,如法语。

向数据库添加支持的第二语言

可使用数据转换工具箱(TD 工具箱)向数据库添加支持的语言。基本语言保持不变,而其他语言将作为第二语言添加。例如,加拿大公司将法语添加为第二数据库语言。

开始之前

XML 本地化交换文件格式 (XLIFF) 是一种带有用于翻译过程的特定标记的 XML 文件。XLIFF 文件遵守有关格式化语言的 8 位 Unicode 变换格式 (UTF-8) 标准。

关于此任务

产品包含向数据库添加支持的辅助语言所需的文件。您可以向数据库添加支持的第二语言,来使非英语用户可查看和变更数据库。

过程

  1. 创建 \tools\maximo\lc\xliff 子目录,其中 lc 表示双字母语言代码。该双字母语言代码位于 LANGUAGE 表中的 MAXLANGCODE 列内。
  2. 在 \tools\maximo\xliff\export 目录中,将安装目录内的文件复制到新的 \tools\maximo\lc\xliff 子目录。
  3. 将产品随附的文件添加到 \tools\maximo\lc\xliff 子目录。
  4. 要将 XLIFF 文件转换并放入数据库,请在安装目录中,运行 tdtoolkit -addlanglc 命令。 例如,要将法语(支持的语言)作为辅助语言添加,请运行以下命令:tdtoolkit -addlangfr

XLIFF Translator

Download XLIFF Translator Setup (version 0.3 – 9.8 MB)

Translate Documents Using the XLIFF File Format

XLIFF Translator is a free tool that enables you to translate documents using XLIFF, a standard XML-based file format designed for translation. XLIFF files contain just the text to be translated, without the need to worry about the source file format.

Beta version: Please note that XLIFF Translator is currently in the beta stage, and should not be used for important work. Please send discussions, bug reports, and feature requests to the XLIFF Translator Forum.

XLIFF Translator will:

  • Generate XLIFF files from your source files
  • Let you translate XLIFF files using Felix
  • Generate the translated target files from your translations

The XLIFF Translator program

关于Maximo提供的主要的工具:TDToolkit:

Translation Data Toolkit 7.1

The Translation Data Toolkit is used to translate the Maximo database and handling Multi Language functionality.

This version is not backwards compatible with previous versions of the Localization kit.

The TDToolkit is located under the {Maximo_install}\tools\maximo directory and is part of core Maximo even though it is an internal tool that is not supported for customers. 

Translating a database

Use this functionality to translate either a Maximo or a Maxdemo database.

Step 1.

Install Maximo with either a Maxdemo or a Maximo database depending on which one you want to translate.

Go to your {Maximo_install}\tools\maximo folder and run the following,

TDToolkit –export

This will export the translatable data into XLIFF files, there will be one set of XLIFF files per database table, the default directory is {Maximo_install}\tools\maximo\xliff\export.

This will export the XLIFF files into the default directory, override this location with the –DE flag.

For example,

TDToolkit –export –de"C:\XLIFF Export\Maximo XLIFF files"

Note that the export directory is emptied before the export to avid a mix of new and old files.

To keep the XLIFF file size down, only 1000 records are written to the XLIFF files, the rest of the records will be written in sequential sub files.

For example, if the Asset table has 2615 records, there will be a main ASSET.xliff file with 1000 records followed by another ASSET_0001.xliff with 1000 records and finally an ASSET_0002.xliff with the last 615 records.

Note that the export directory is emptied before the export to avid a mix of new and old files.

Step 2.

Send out your XLIFF files for translation or use a tool suitable for XLIFF translation.

The only tag in the XLIFF file that should be edited is the <target> tag.

   <trans-unit id='100000' size-unit='char' maxwidth='40'>

    <source>Narrow-Wide</source>

    <target>Narrow-Wide</target>

The length of the translated text cannot exceed the maxwidth parameter, in this case that is 40 characters.

Step 3.

Once the XLIFF files have been translated they need to be checked with the CHKPII tool before they can be imported. This is an internal tool that can be found on http://w3-03.ibm.com/globalization/page/2011.

Once the files pass the CHKPII tool, you are ready to import them.

Put the translated files under {Maximo_install}\tools\maximo\{Lang_Code}\xliff.

Use the import command to import the XLIFF files into a Maximo database,

TDToolkit –import –tl[Lang_Code] –versionV7100-00

For example, to import a set of French records,

TDToolkit –import –tlfr –versionV7100-00

The Language code must match one of the language in Maximo, to list the available languages, run the following SQL Statement against your database,

select maxlangcode, languagename from language;

The tables and columns specified in the translated XLIFF file will update the database with the new translation. Columns related to an updated column will be updated as well to make sure the database keeps its integrity.

The base language will be set to the Target language specified by the -tl flag, not the Target Language specified in the XLIFF file, this is done by design.

The –VERSION flag is used to specify which version you are importing from, if you have not imported any XLIFF files previously, use V7100-00 as version.

The current version number can be found in the Database with the following query, 

select varname, varvalue from maxvars where varname = 'MAXUPG';

Note that the Maximo application server need to be restarted after an import, the TDToolkit will update system tables that need a restart.

The domains sometimes enforce uppercase values determined by the MAXDOMAIN.MAXTYPE column. If this column is UPPER for a particular domain the VALUE for that domain will be converted to upper case. Since different locales have different rules, the locale is take from the –tl flag. For example, if you specify –tlde on the command line, the locale used for upper case conversion is de. If you wish to override this, use the –locale flag and specify a suitable locale. For example,

TDToolkit –import –tlja –versionV7100-00 –localezh

In this example the Japanese files are imported with Chinese conversion rules. The two letter locales are the standard Java locales.

Updating the XLIFF files

Use this functionality to update the XLIFF files with the changes to translatable data in the database. The versions of new/changed records in the XLIFF files are update which enables the version functionality. By updating the files the TDToolkit can then import specific records by comparing the version in the XLIFF file and the version passed on the command line, if the version in the XLIFF file is higher the record will be updated in the database.

When there is a new database build and you want to update the XLIFF files, put the files you want to update in the Reference directory. The default directory is {Maximo_install}\tools\maximo\xliff\reference.

Then run the update command,

TDToolkit –update

The reference files will be read and compared against the database.

Records that are removed form a previous database build are not removed form the XLIFF file, only commented out with the standard XML comment tags (<!—and -->) that are placed around the <trans-unit> record.

Records that are changed will be updated in the XLIFF file and the version number is updated with the current database version.

Records that are new will be added to the end of the XLIFF file with the current database version.

Records that are marked non-translatable will be copied as is from the previous file to the new XLIFF file.

Records that had their comment updated by a translator/developer will keep the updated comment in the new XLIFF file.

Only files that have been changed will be written in the {Maximo_install}\tools\maximo\xliff\export directory, if no records where added/updated/deleted, no XLIFF files will be written.

To keep the XLIFF file size down, only 1000 records are written to the XLIFF files, the rest of the records will be written in sequential sub files.

For example, if the Asset table has 2615 records, there will be a main ASSET.xliff file with 1000 records followed by another ASSET_0001.xliff with 1000 records and finally an ASSET_0002.xliff with the last 615 records.

Note that the export directory is emptied before the export to avid a mix of new and old files.

Translating a PMP or IS

Use the same functionality to export translatable data for the Process Management Product/Industry Solution (PMP/IS).

Step 1 and 2.

Install Maximo and other PMP/IS needed for the PMP/IS you want to translate. 

Step 3.

Export the Exclude files with TDToolkit,

TDToolkit –excludeexport

This will make a “translation snapshot” of the current database, we can now uses these records to exclude records that we do not want in our final XLIFF files.

The exclude files will end up under the {Maximo_install}\tools\maximo\xliff\exclude directory.

Step 4.

Continue the install of your PMP/IS and make sure it installs fully.

Step 5.

Export the PMP/IS records into XLIFF files with the useexclude flag and the product flag. The product flag will make sure that the version number is taken from the PMP data rather than the core Maximo database. You do not need to specify this flag if you intend to use the Maximo version.

For example,

TDToolkit –export -useexclude –producttransport

To export a “transport” PMP, the XLIFF files will be written to the {Maximo_install}\tools\maximo\xliff\export directory.

NOTE, The old –usemaxrowstamp flag is still available for backward compatibility but should not be used in a normal case.

Step 6.

Send out your XLIFF files for translation or use a tool suitable for XLIFF translation.

The only tag in the XLIFF file that should be edited is the <target> tag.

   <trans-unit id='100000' size-unit='char' maxwidth='40'>

    <source>Narrow-Wide</source>

    <target>Narrow-Wide</target>

The length of the translated text cannot exceed the maxwidth parameter, in this case that is 40 characters.

Step 7.

Check the XLIFF files with CHKPII.

Step 8.

Once the XLIFF files have been translate and checked with CHKPII check they can be imported into the database to translate it.

Place the translated files under {Maximo_Install}\tools\Maximo\{LangCode}\xliff\{PMP_name}.

Note that the TDToolkit tries to import the files for the base language plus all other added languages. So if you have two languages installed for this PMP, the TDToolkit will try to import both languages.

Specify the PMP/IS to update with the –pmpupdate{PMP_name} flag, it is very important that this match the PMP_Name directory.

For example,

TDToolkit –pmpupdatetransport –versionV7100-00

This will assume a PMP name of transport.

The base language will first be updated followed by the secondary languages.

If you only want to import a specific language or two, use the –lang flag, for example to only import French and German even if you have more languages installed.

TDToolkit –pmpupdatetransport –versionV7100-00 –langFR,DE

The languages should be separated by a comma and be either a base language or a secondary language.

This functionality needs the –VERSION flag, if you have not imported any previous versions use V7100-00 as version.

Note that the Maximo application server need to be re started after a pmpupdate, the TDToolkit will update system tables that need a restart.

Updating PMP/IS XLIFF files

If you only want to update the XLIFF files for a specific PMP/IS, follow step 1 to 5 under “Translating a PMP or IS” and then in step 5, use the update flag in stead of the export flag. For example,

TDToolkit –update -useexclude –producttransport

Adding Multi Languages

The translated XLIFF files can be used to add secondary languages to our database.

Place the translated XLIFF files under the {Maximo_Install}\tools\maximo\{LangCode}\xliff directory.

The language code is specified right after the –addlang flag.

On the command line, type TDToolkit –addlangFR

The appropriate Multi-Language (ML) tables in the database will be update and then the new language will be enabled, in our case FR.

If no Language files were found, the language will not be enabled.

Keep in mind that if you have any PMP/IS installed, you also need to update them as well with the –pmpupdate function.

Secondary languages are stored in separate tables linked to the Maximo tables, each ML table has a separate column indicating the secondary language. If you log in with a secondary language and the translation is missing in a ML table, the text will be displayed in the Base language of the database.

The –addlang functionality does take an optional –version flag, this is used to update only newer records in the same way –import and –pmpupdate does.

The Maxdemo Do Not Translate list

If the database maxinsted is not a Maxdemo database, the DemoOnly.xml will be used to exclude Maxdemo data. 

The way the TDToolkit identifies a Maxdemo database is by checking the ‘ISDEMO’ variable in the Maxvars table. If this is set to ‘1’, the database is assumed to be a Maxdemo database. If it is set to any other value or missing (as in an upgraded database) the database is assumed to be a Maximo database.

To generate a DemoOnly.xml follow these steps,

1. Set up a Maximo database on the desired build.

2. Export the database (TDToolkit -export) and move the exported files from {Maximo_Install}\tools\maximo\xliff\export to {Maximo_Install}\tools\maximo\xliff\export\Maximo.

3. Set up a Maxdemo database on the same build.

4. Export the database (TDToolkit -export) and move the exported files from {Maximo_Install}\tools\maximo\xliff\export to {Maximo_Install}\tools\maximo\xliff\export\Maxdemo.

5. Generate the Do Not Translate list (TDToolkit -maxdemodntl) and it will end up in {Maximo_Install}\tools\maximo\classes\psdi\xlate.

This file should be in synch with the PII drop builds and needs to be re-generated prior to the PII drops.

The DemoOnly.xml has been preloaded with a current set of exceptions, it should be saved as an UTF-8 file.

The directories, {Maximo_Install}\tools\maximo\xliff\export\Maximo, {Maximo_Install}\tools\maximo\xliff\export\Maxdemo and {Maximo_Install}\tools\maximo\xliff\export\Maxdemo_Diff including subdirectories can be removed after the list has been generated.

Adding Maximo data to the Maxdemo XLIFF files

This is used to compare the Maximo and Maxdemo databases and generate XLIFF files with the differences. In theory Maximo is a subset of Maxdemo which means that if you translate the Maxdemo data it should include the Maximo data. However there is a slight mismatch between the two.

1. Set up a Maximo database on the desired build.

2. Export the database (TDToolkit -export) and move the exported files from {Maximo_Install}\tools\maximo\xliff\export to {Maximo_Install}\tools\maximo\xliff\export\Maximo.

3. Set up a Maxdemo database on the same build.

4. Export the database (TDToolkit -export) and move the exported files from {Maximo_Install}\tools\maximo\xliff\export to {Maximo_Install}\tools\maximo\xliff\export\Maxdemo.

5. Run TDToolkit with the –compare flag and a third directory will be created, {Maximo_Install_dir}\tools\maximo\xliff\export\Maximo_Diff. This directory will have XLIFF files that have the difference between Maximo and Maxdemo.

6. Add these records to the Maxdemo.xliff files by running the TDToolkit with the –addmaximodata flag. Note that the Maxdemo xliff files should be located in {Maximo_Install_dir]\tools\maximo\xliff\export and not the Maxdemo folder under this location.

Note that if two records exist in both databases, the Maximo data will overwrite the Maxdemo data.

Checking the translation against the XLIFF files

This is used to compare the database against the XLIFF files to see how much of the translation in the database matches the XLIFF files.

1. Copy the translated XLIFF files to your {Maximo_Install}\tools\maximo\xliff\export directory.

2. Run the TDtoolkit with the –checktranslation flag. If you want to see the individually records, add the –verbose flag to the command line.

3. Analyze the Log file.

The TDToolkit will read the XLIFF files in the {Maximo_Install}\tools\maximo\xliff\export directory and compare them to the database. It will report records only in the database, only in the XLIFF files and records that are in the XLIFF files but differs in the database.

Here is one example of the output,

Processing ACTION.

Reading XLIFF files.

Getting Database Data.

Getting records for the do not translate list.

Creating internal index.

Comparing.

Records in XLIFF: 130.

Records in Database: 130.

Records only in XLIFF: 0, 0%

Records only in Database: 0, 0%

Records different compared to Database and XLIFF: 3, 2.31%

If you had specified the –verbose flag there would have been a list of the individual records and the XLIFF file that had the mismatch, for example,

Processing ACTION.

Reading XLIFF files.

Getting Database Data.

Getting records for the do not translate list.

Creating internal index.

Comparing.

Records in XLIFF: 130.

Records in Database: 130.

Records only in XLIFF: 0, 0%

Records only in Database: 0, 0%

Records different compared to Database and XLIFF: 3, 2.31%

Databasecolumn:DatabasID:XLIFFValue:DatabaseValue.

DESCRIPTION:INC GIVE2OS:Delegate Incident to Operating System Group2:Delegate Incident to Operating System Group

ACTION.xliff

DESCRIPTION:INC GIVE2NETWORK:Delegate Incident to Network Group2:Delegate Incident to Network Group

ACTION.xliff

DESCRIPTION:INC GIVE2ERP:Delegate Incident to ERP Group2:Delegate Incident to ERP Group

ACTION.xliff

Checking the domain integrity

This is used to check the integrity of the domains against the links in MaxDomainLink and MaxDynamicDomLink. Just run the TDToolkit with the –checkdomains flag and analyze the log file.

To make it easier to find the problems, you can search for the three stars (***) that indicates a problem, for example,

Checking: CHANGETYPE

***Check the following entries for domain CHANGETYPE in table MAXREPLACEPROC with column VALUETYPE.

VALUE

Checking: CISTATUS

Checking: CITYPESTATUS

In this case, there is an entry “VALUE” in the ValueType column in the MaxReplaceProc table that does not have an entry in the ChangeType domain.

The Do Not Translate list

Sometimes specific records needs to be kept in English and not translated by the TDToolkit. In order to be able to specify these records, there is a Do Not Translate list called TDTDoNotTranslate.xml located under {Maximo_Install}\tools\maximo\classes\psdi\xlate.

The format of the file is very simple,

<?xml version="1.0" encoding="UTF-8"?>

<donottranslate>

   <table name='MAXMESSAGES'>

    <key>ASSETAPPS:jspsettings</key>

   </table>

   <table name='MAXLABELS'>

    <sql>id like 'wfexpbutton_sec1_%'</sql>

    <sql>id like 'wfexpbutton_sec2_%'</sql>

<sql>id like 'wfexpbutton_sec3_%'</sql>

   </table>

   <table name='ACTION.VALUE2'>

    <sql>type not in (select value from synonymdomain where domainid='ACTIONTYPE')</sql>

   </table>

</donottranslate>

The table tag specifies the actual table name that has exceptions.

The key tags for this table refer to the DatabaseID parameter in the Table_Name.xliff file. For example, the single exception for the MAXMESSAGES tables refers to this particular record in the MAXMESSAGES.xliff file,

<sup:Reference Type='DatabaseID'>ASSETAPPS:jspsettings</sup:Reference>

There is also a more generic way of specifying records by using the sql tag, this where clause will be used to compile an internal do not translate list. Note that the sql in the sql tag have to be generic enough to be executed on all supported database platforms without errors.

If the table has more than one column that is translated, you can also specify a specific column, in this case the Action table only has its Value2 column excluded and all other columns are translated. Note that you can only specify one column at the time, so if you had a second column in Action you will have to add another entry like this,

   <table name='ACTION.COLUMN2'>

    <sql>type not in (select value from synonymdomain where domainid='ACTIONTYPE')</sql>

   </table>

   <table name='ACTION.DESCRIPTION'>

    <sql>type not in (select value from synonymdomain where domainid='ACTIONTYPE')</sql>

   </table>

These exceptions are still exported to the XLIFF files but are ignored when updating the database.

Keep in mind that it is important to specify the tags and its attribute names in lower case and all Table/Column names in upper case. For example, <table name='ACTION.COLUMN2'>

works but <TABLE NAME='ACTION.COLUMN2'> or <table name='action.column2'> does not work…

The TDTDoNotTranslate.xml has been preloaded with a current set of exceptions, it should be saved as an UTF-8 file.

The TDTUpgrade list

After an upgrade, some database IDs may differ from a new install. In that case some records may not be updated when the XLIFF files are applied to the upgraded database. Even worse, if the IDs overlap so to say, a record might me updated with the wrong translation. In order to take this into consideration, a lookup list can be generated that is used to correct the IDs before any updates take place. If the TDToolkit finds a files called TDTUpgrade.xml it will use it to correct the IDs.

The file format is straight forward,

<?xml version="1.0" encoding='UTF-8'?>

<replace>

  <table name='TABLE1' xliff='TABLE1.xliff'>

    <replaceid original='ID1:BEFORE:UPGRADE' upgraded='ID1:AFTER:UPGRADE'/>

    <replaceid original='ID2:BEFORE:UPGRADE' upgraded='ID2:AFTER:UPGRADE'/>

  </table>

  <table name='TABLE2' xliff='TABLE2.xliff'>

    <replaceid original='ID1:BEFORE:UPGRADE' upgraded='ID1:AFTER:UPGRADE'/>

    <replaceid original='ID2:BEFORE:UPGRADE' upgraded='ID2:AFTER:UPGRADE'/>

  </table>

</replace>

Keep in mind that the IDs (like ID1:BEFORE:UPGRADE) are case sensitive and the tag names should be kept in lower case.

Since this file is language independent, it is always kept in the English folder.

For core Maximo this is {Maximo_Install}\tools\maximo\en\xliff and for any PMP/IS this is {Maximo_Install}\tools\maximo\en\xliff\{PMP/IS name}. Once the file have been used, it is renamed to TDTUpgrade_{Todays date}.xml to make sure it’s not used again.

Fixing the missing ResourceName in Reportlabel.xliff

Due to an issue with the update procedure in TDToolkit, there might be missing ResourceName in the Reportlabel.xliff file. Run the TDToolkit with the – fixreportlabel flag to add these back if you have done an update on your Reportlabel.xliff file.

The files you want to fix should be placed under the {Maximo_install}\tools\maximo\xliff\export directory, the fixed files will end up there as well.

Checking the XLIFF files for duplicates

If the Primary Key Column Sequence (PKCS) changed between updates, it’s a good idea to check for duplicates. Run the tool with the – checkdup flag. Unfortunately, there is no automated way of fixing this so duplicates have to be fixed manually.

The files you want to check should be under the {Maximo_install}\tools\maximo\xliff\export directory.

Resetting Start Centers

Previously the Start Centers were reset during either an import or addling. This was done by emptying out the buffered tables for the Start Centers forcing a refresh from the main tables. Unfortunately this caused customized text to be lost so the Start Centers are no longer reset by default. To force a reset of the Start Centers, run the TDToolkit with the –RESETSTARTCENTERS flag.

Backward compatibility flag for :Variable_Name escapes

Recently a new escape was implemented, Maximo uses :Variable_Name in certain messages and these need to be escaped to be protected from translation. For example, the following text,

A CI Configuration Work Order is created for request #:ticketid

Would be escaped into,

A CI Configuration Work Order is created for

request #<ph id=":ticketid">:ticketid</ph>

Note that a new line was inserted to emphasis the actual escape.

This causes an impact to the translation memory so a flag was created to skip this new escape if necessary. During the –export or –update procedure, specify the –DONTESCAPEVARIABLES to avoid these new escapes to be created.

Command line commands and parameters

The following commands are available,

Command

Explanation

-EXPORT

Export the database to XLIFF files.

-IMPORT

Import a set of XLIFF files.

-UPDATE

Update a set of XLIFF files.

-ADDLANG<language>

Add a secondary language to the database

-PMPUPDATE<pmp_name>

Update translation(s) for a PMP.

-COMPARE

Compare a Maximo and Maxdemo database.

-CHECKDUP

Check XLIFF files for duplicates.

-FIXREPORTLABEL

Add missing Resource name to the ReportLabel

xliff files if necessary.

-ADDMAXIMODATA

Add Maximo data to Maxdemo XLIFF files.

-EXCLUDEEXPORT

Export exclude files.

-MAXDEMODNTL

Compare a Maxdemo and Maximo database.

Used to generate TDTDoNotTranslate_Maxdemo.xml

to identify Maxdemo records.

-CHECKTRANSLATION

Check database translation aginst XLIFF files.

-CHECKDOMAINS

Check the domain integrity.

-RESETSTARTCENTERS

Reset the Start Center and force a refresh of the labels.

The following parameters are available,

Parameter

Explanation

-DR<reference_dir>

The Reference directory used for update.

-DE<export_dir>

The Export directory.

-DI<import_dir>

The Import directory.

-MXE.DB.DRIVER<driver>

Override driver in maximo.properties.

-MXE.DB.URL<url>

Override url in maximo.properties.

-MXE.DB.USER<user>

Override user in maximo.properties.

-MXE.DB.PASSWORD<password>

Override password in maximo.properties.

-MXE.DB.SCHEMAOWNER<schema>       

Override schemaowner in maximo.properties

-SL<source_languange>

The source language for the XLIFF files.

-TL<target_languange>

The target language for the XLIFF files.

-USEMAXROWSTAMP

Use the Maxrowstamp table.

-USEMRS                           

Use the Maxrowstamp table.

-PRODUCT<pmp_name>

Specify product to get correct version.

Use this options with PMPs.

-SUBYTE                           

Use byte for size-unit in XLIFF.

-SYSTEMEXIT

Exit with System.exit(n) if an error occurs.

-MAXRECORDS

Maximum records per XLIFF files.

Defaults to 1000.

-USEEXCLUDE                       

Use exclude files for update or export.

-OVERRIDEEN                       

Force import of English XLIFF files.

-OVERRIDEVERSION<version>        

Use specified version in XLIFF files.

-NOMAXMESSFIX

Do not double apostrophes (') in MAXMESSAGES

-LANG

Only process the specified languages.

Separate languages with commas.

-LOCALE<locale>                   

Normally the locale is set by –TL

Use this parameter to over ride the locale.

-DONTEXITONDOMAINERROR

Don’t exit if there are duplicates in the domains.

-VERBOSE

List record details during a check of the Database.

-DONTESCAPEVARIABLES

This is a backward compatibility mode, the Maximo :Variable_Name is not escaped into the <ph> escapes.

Logging in

The TDToolkit uses the maximo.properties file to get the login parameters.

If you want to override the Maximo.properties file, specify -mxe.db.user[User_Name], -mxe.db.password [Password], -mxe.db.url[Database_URL] and -mxe.db.driver[Database driver].

For example “-mxe.db.usermaximo -mxe.db.passwordsecret -mxe.db.urljdbc:oracle:thin:@olga:1521:maxuni2 -mxe.db.driveroracle.jdbc.driver.OracleDriver” would log into the Oracle maxuni2 database on server Olga with user maximo that has a password of secret.

Note, you need to specify all login parameters if you choose to override the maximo.properties file.

The TDToolkit currently supports Oracle, SQLServer and DB2.

Specifying directories

-DR[Reference_directory]

-DE[Export_directory]

For example, -DEc:\temp\XLIFF_Export would set the import directory to c:\temp\XLIFF_Export

If the directory name has at least one space, make sure to enclose the directory path with double quotes such as -DE“C:\Documents and Settings\Administrator\XLIFF Export”.

Specifying Size-Unit to be byte

The trans-unit tag has a size-unit parameter which is default to char.

To use bytes in stead of chars, specify –SUBYTE in combination with –EXPORT or –UPDATE.

The trans-unit will now look something like,

<trans-unit id='100000' size-unit='byte' maxwidth='100'>

This is a global parameter and is applied to all XLIFF files.

Fixing the apostrophe problem in Maxmessage table

Due to an issue in Maximo, the apostrophe (single-quote, ') needs to be specified twice to show up properly in the Maxmessages table. By default, all single apostrophes will be doubled when inserted into the Maxmessage table to compensate for this issue.

Use the –nomaxmessfix to bypass this and not double the apostrophes.

Note that this flag is intended to be used during an –import, -addlang or –pmpupdate.

Limiting the number of records per XLIFF file

Use the –MAXRECORDS flag to limit the records per XLIFF files, the default is 1000 records per file. There is a lower limit to 100 records per file, this is to ensure you don’t get thousands of files if you specify the wrong number.

If a table have more than 1000 records, the first file will be the main file and have a name of {Table_Name}.xliff with the subfiles having a name of {Table_Name}_nnnn.xliff.

Continue the update if there are duplicates in the domain XLIFFs

Use the –DONTEXITONDOMAINERROR if you want the TDToolkit to continue the update of the database even in case there are duplicates in the Domain XLIFF files. This enables you to apply un-modified mock translation or similar.

Parameters that are not recognized will be ignored.

Identifying translatable data

If the column Localizable in the Maxattribute table is set to 1, the column will appear in the XLIFF files.

The key fields are read from the PrimaryKeyColSequence in the Maxattribute table.

This can be overridden by specifying a single key column in the MAXTABLE. CONTENTATTRIBUTE column for the table you need to translate.

The TDToolkit log file

In addition to log all events to the console, the TDToolkit will also write a logfile called TDToolkit{Today’s date and time}.log

XLIFF format

The XLIFF (XML Localization Interchange File Format) is a version of XML used by IBM for Localization.

The specifications can be found here,

http://www.oasis-open.org/committees/xliff/documents/xliff-specification.htm

Here is one example taken from Maximo,

<?xml version="1.0" encoding='UTF-8'?>

<xliff version='1.1' xmlns='urn:oasis:names:tc:xliff:document:1.1'>

 <file original='SYNONYMDOMAIN.xliff' source-language='en' target-language='fr' datatype='plaintext'>

  <group>

   <sup:SourceInfo>

    <sup:Table>SYNONYMDOMAIN</sup:Table>

    <sup:ID-col>SYNONYMDOMAINID</sup:ID-col>

   </sup:SourceInfo>

   <trans-unit id='100000' size-unit='char' maxwidth='40'>

    <source>Narrow-Wide</source>

    <target>Narrow-Wide</target>

    <sup:Reference Type='Column'>VALUE</sup:Reference>

    <sup:Reference Type='DatabaseID'>1</sup:Reference>

    <sup:Reference Type='Comment'>No comment found.</sup:Reference>

<sup:Reference Type='NotEscape'>0</sup:Reference>

<sup:Reference Type='MLSupported'>1</sup:Reference>

<sup:Reference Type='MLInUse'>0</sup:Reference>

<sup:Reference Type='Version'>HARRIER-045</sup:Reference>

   </trans-unit>

<!--

   <trans-unit id='100001' size-unit='char' maxwidth='40'>

    <source>Wide-Narrow</source>

    <target>Wide-Narrow</target>

    <sup:Reference Type='Column'>VALUE</sup:Reference>

    <sup:Reference Type='DatabaseID'>2</sup:Reference>

    <sup:Reference Type='Comment'>No comment found.</sup:Reference>

<sup:Reference Type='NotEscape'>0</sup:Reference>

<sup:Reference Type='MLSupported'>1</sup:Reference>

<sup:Reference Type='MLInUse'>0</sup:Reference>

<sup:Reference Type='Version'>HARRIER-045</sup:Reference>

   </trans-unit>

-->

   <trans-unit id='100002' size-unit='char' maxwidth='40'>

    <!-- START NON-TRANSLATABLE -->

    <source>PART</source>

<target>PART</target>

    <!-- END NON-TRANSLATABLE -->

    <sup:Reference Type='Column'>VALUE</sup:Reference>

    <sup:Reference Type='DatabaseID'>3</sup:Reference>

    <sup:Reference Type='Comment'>Parts</sup:Reference>

<sup:Reference Type='NotEscape'>0</sup:Reference>

<sup:Reference Type='MLSupported'>1</sup:Reference>

<sup:Reference Type='MLInUse'>0</sup:Reference>

<sup:Reference Type='Version'>HARRIER-045</sup:Reference>

   </trans-unit>

   <trans-unit id='100003' size-unit='char' maxwidth='256'>

<source><%= button2 %></source>

<target><%= button2 %></target>

    <sup:Reference Type='Column'>DESCRIPTION</sup:Reference>

    <sup:Reference Type='DatabaseID'>3</sup:Reference>

    <sup:Reference Type='Comment'>Parts</sup:Reference>

<sup:Reference Type='NotEscape'>1</sup:Reference>

<sup:Reference Type='MLSupported'>1</sup:Reference>

<sup:Reference Type='MLInUse'>0</sup:Reference>

<sup:Reference Type='Version'>HARRIER-045</sup:Reference>

   </trans-unit>

  </group>

 </file>

</xliff>

The encoding of the file is ignored and it’s assumed that UTF-8 is used.

All reading and writing of XLIFF files are done in UTF-8.

The <file> tag tells us that the file name is SYNONYM.XLIFF, the source language is En and the Target Language is Fr.

The <sup:SourceInfo> block will tell us that the Table name in the database is SYNONYMDOMAIN and the ID column (used to reference a record when updating the database) is SYNONYMDOMAINID.

The first <trans-unit> block has an id of 100000 (this is unique and in order), the data type is character and the maximum length is 40 chars.

New records added to the file, will be added at the bottom with an ID higher than the previous ID.

The <source> tag is the English original text, this should not be changed by the translators. If the database is updated, this will be updated.

The <target> tag is the tag that needs translation, in out case into French.

The new translation must not exceed the Maximum length.

The sup:Reference Type='Column'>VALUE</sup:Reference> tag tells the Translation Data Toolkit which column to update with the new translation.

The <sup:Reference Type='Comment'>Parts</sup:Reference> tag is a comment that is editable by the translators or developers. If there is a DESCRIPTION column (and it’s not null or blank) the description will be copied into this column only if this is a new record or a fresh export.

The <sup:Reference Type='NotEscape'>0</sup:Reference> tag will tell the Translation Data Toolkit not to convert escaped characters into their un-escaped form if this flag is set.

Since the file format is XML, certain characters like <, >, & should not appear as is but be converted into their escaped form <, >, &.

Some data in the database is already escaped and can therefore not be escaped back since it would mess up the data.

The <sup:Reference Type='MLSupported'>1</sup:Reference> tag is a copy from the Maxattribute.MLSupported column and reserved for future use.

The <sup:Reference Type='MLInUse'>0</sup:Reference> tag is a copy from the Maxattribute.MLInuse column and reserved for future use.

The <sup:Reference Type='Version'>HARRIER-045</sup:Reference> tag is the actual database version this record comes from and reserved fro future use.

Trans Unit ID 100001 is commented out. Records deleted from the database is not removed form the XLIFF file, they are only commented out.

Trans Unit ID 100002 is marked as non-translatable, the translators should not edit this record.

Trans Unit ID 100003 is one example of a record that should not be converted form it’s escaped form (<%= button2 %>) into it’s un-escaped form (<%= button2 %>) when put back in the database.

In the MAXMESSAGES.xliff file there are two additional Reference tags.

<sup:Reference Type='MessageID'>BMXAA3657E</sup:Reference>

<sup:Reference Type='MessagePreFix'>1</sup:Reference>

These are used internally and should be ignored.

In the REPORTLABEL.xliff file there is one additional Reference tag.

<sup:Reference Type='ResourceName'>dpldasset.properties</sup:Reference>

This is used internally and should be ignored.

The Exclude files

To be able to correctly identify changed records for a PMP/IS we now use exclude files.

These are basically a stripped down version of the ordinary XLIFF files and can be found under {Maximo_Install}\tools\maximo\xliff\exclude after you do an excludeexport.

If any XLIFF files exist under this directory and the –USEEXCLUDE is specified, the records in these XLIFF files are removed from the translatable records that are being fetched from the database.

This means that you need to export the exclude files before you install your PMP/IS to be able to identify the new translatable records in the database.

This is done by running the TDToolkit with the –EXCLUDEEXPORT flag to create the files under {Maximo_Install}\tools\maximo\xliff\exclude.

Then install your PMP/IS and run the TDToolkit with the –USEEXCLUDE flag in combination with the –EXPORT or –UPDATE flag.

Note, when the –EXCLUDEEXPORT is specified, the TDToolkit will automatically delete all files under {Maximo_Install}\tools\maximo\xliff\exclude before doing the export of exclude files.

Escape codes used in the TDToolkit

Some characters are for one reason or another not allowed in the XLIFF files, in that case they will be escaped in the XLIFF files. When the XLIFF file is read back these will be re-created to their original characters. The list below shows the escape codes used by the TDToolkit.

Original in text or string

Written to XLIFF

<

<

>

>

&

&

"

'

Line feed, ASCII 10

&LineFeed;

Carriage return, ASCII 13

&CarriageReturn;

Variables enclosed in curly brackets ({Variable_Name}) are handled in a special way to accommodate localization tools. They are converted from {Variable_Name} into <ph id="Variable_Name">{Variable_Name}</ph>.

For example, This is my ${MyVar1} would be escaped into This is my $<ph id="MyVar1">{MyVar1}</ph> and Reference to {0} would be escaped into Reference to <ph id="0">{0}</ph>. 

Note 1, If a string already have been escaped, it is written as is to the XLIFF file and read back without being escaped back. However the string must be fully escaped or there might be warnings logged by the CHKPII tool since it detects “un-escaped” characters.

Note 2, ASCII 10 and 13 are not allowed in core Maximo since we do not allow for white space formatting. However they are included in the list since ASCII 10 and 13 cause more problems than the escape codes.

The MAXROWSTAMP table

NOTE, the Maxrowstamp table is no longer used, this paragraph is left in the document as a reference.

The Maxrowstamp table can be used to identify new or changed records in the database when it’s used together with the updateDB utility.

Before applying any database changes (such as installing a PMP or updating to a later version) the updateDB utility will update this table with the current highest Rowstamp per table table in Maximo. The rowstamp column per record changes every time an update occurs and it always increases to be higher than the current highest value.

Since the Maxrowstamp table contains the previously highest rowstamp, all changed records in a table can be identified by selecting all records that has a higher value of rowstamp than the rowstamp value in the Maxrowstamp table.

In other words, the Maxrowstamp table is used by updateDB to make a “snapshot” of the database.

Handling special cases for the domains

The domains are linked to their related tables via the MaxDomainLink table. In order for the TDToolkit to update these properly, the link must exists in this table. Sometimes a domain is linked to a specific record or group of records and the MaxDomainLink table cannot handle this special case.

This is handled by the MaxDynamicDomLink table, the DomainWhere column will select your domain and the UpdateWhere column will restrict the update of the domain.

For example,

The MaxVars table has a VarName called WOSTATUSONASNTCOMP that is linked to the AMWOSTATUS domain.

The firs two columns Objectname and Attributename would be MAXVARS and VARVALUE.

The DomainWhere column would be “domainid = 'AMWOSTATUS'” since this column is linked to the AMWOSTATUS domain.

The UpdateWhere column would be “varname = 'WOSTATUSONASNTCOMP'” since we would like to restrict the update to the VarName WOSTATUSONASNTCOMP.

Note that the SQL Statements need to be universal enough to be run on all supported platforms, see script V7115_51.dbc for one example.

Since most MaxVars has a MaxVarType, the SQL Statement that adds these special cases would look like,

insert into maxdynamicdomlink (objectname, attributename, domainwhere, updatewhere, maxdynamicdomlinkid) values ('MAXVARS','VARVALUE','domainid = ''AMWOSTATUS''',

'varname = ''WOSTATUSONASNTCOMP''', maxdynamicdomlinkseq.nextval);

insert into maxdynamicdomlink (objectname, attributename, domainwhere,updatewhere, maxdynamicdomlinkid) values ('MAXVARTYPE','DEFAULTVALUE','domainid = ''AMWOSTATUS''',

'varname = ''WOSTATUSONASNTCOMP''', maxdynamicdomlinkseq.nextval);

 “I have made customizations, can I translate the customizations?”

This is the same as the PMP/IS export functionality. Set up Maximo as it was before the customizations, do the exclude export, use these exclude files with your customized version of Maximo to export your customization.

“Data not translated/mocked in table [Table].[Column]”

If there are data that are not translated/mocked in the database after an import with the TDToolkit, please check these two common errors before logging an issue.

If you are using Maximo 7.1.1.4 (build 20081113 and forward) and working with a Maxdemo database, check to see if you have the “ISDEMO” Maxvar.

select varname, varvalue from maxvars where varname = 'ISDEMO';

This should return a varvalue of 1.

If you do not have this maxvar, use the “IsDemoMaxvar.sql” script to add it.

Run the following to see what your base language is,

select varvalue from maxvars where varname = 'BASELANGUAGE';

1. Copy the file to {Maximo_Install}\tools\maximo\[Base_Lang]\script. If the directory does not exist, create it.

2. Open a DOS prompt and go to {Maximo_Install}\tools\maximo\internal.

3. In the DOS prompt, type runscriptfile –fisdemomaxvar and hit return.

After the file has been run, you need to re-import your 7.1.1.4 XLIFF files.

The file can be found under {Maximo_Install}\tools\maximo\classes\psdi\xlate.

This is a special case for internal testing only, a customer should not update their demo database from a previous version, in stead they should maxinst one from scratch.

If you still have data that are not translated/mocked in the database or are using a Maximo database, try searching the XLIFF files for the missing data. Use a program that can search for text inside a file and search for the English text.

For example if you find that “24 Volt-DC Motor” in ASSET.DESCRIPTION is not translated, search “ASSET.xliff” for “24 Volt-DC Motor”. Note that some tables have more than one XLIFF file, for example, “MAXMENU.xliff” and “MAXMENU_0001.xliff”. In this case you need to search all files that belongs to MAXMENU.

If you do not find a record, it means that this record was added after the last PII drop.

You need to add this record to the XLIFF file(s) by updating your existing XLIFF files and send it out for translation. For mock files, you could just go ahead and make a new export of XLIFF files and mock them if all you want to do is to test with mocked data.

If you do find one or more records, you need to see if the ID has changed or if it is a new record. First, use any method available to count the number of records in the XLIFF files that have the missing translation/mock and make sure you only count the records for the correct column.

In our case “24 Volt-DC Motor”, to make sure I count the correct column, I look at the support tag highlighted below, the column is marked in blue.

   <trans-unit id='100266' size-unit='char' maxwidth='100'>

    <source>24 Volt-DC Motor</source>

    <target>Mocked or translated data</target>

    <sup:Reference Type='Column'>DESCRIPTION</sup:Reference>

    <sup:Reference Type='DatabaseID'>BEDFORD:26020</sup:Reference>

    <sup:Reference Type='Comment'></sup:Reference>

    <sup:Reference Type='NotEscape'>0</sup:Reference>

    <sup:Reference Type='MLSupported'>1</sup:Reference>

    <sup:Reference Type='MLInUse'>0</sup:Reference>

    <sup:Reference Type='Version'>V7114-116</sup:Reference>

   </trans-unit>

Once I have a count, let’s say 5, I search the database for these records, you need to do this search on an English database.

select count(*) from asset where description = '24 Volt-DC Motor';

If this returns less than 5, the ID has changed and you have records that are not used in your XLIFF file(s).

If this returns 5, the ID has changed.

If this returns more than 5, the ID has changed and new records have been added to the database.

You need to fix these records in the XLIFF file(s) by updating your existing XLIFF file(s) and send it out for translation. For mock files, you could just go ahead and make a new export of XLIFF files and mock them if all you want to do is to test with mocked data.

Note, after the last PII drop for a specific version there should be no changes to the PII data until the next version. This includes changing or adding translatable data, changing IDs for records, changing Primary Key Column Sequence in Maxattribute or changing the localizable flag in Maxattribute.

List of commands and parameters

Commands

----------------------------------+----------------------------------------------

-EXPORT                           |Export the database to XLIFF files.

                                  |Valid options are,

                                  |-DE

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SL

                                  |-TL

                                  |-USEMAXROWSTAMP

                                  |-USEMRS

                                  |-PRODUCT

                                  |-SUBYTE

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

                                  |-USEEXCLUDE

                                  |-OVERRIDEVERSION

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-IMPORT                           |Import a set of XLIFF files.

                                  |Valid options are,

                                  |-DI

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-TL

                                  |-USEMAXROWSTAMP

                                  |-USEMRS

                                  |-VERSION

                                  |-SYSTEMEXIT

                                  |-OVERRIDEEN

                                  |-NOMAXMESSFIX

                                  |-LOCALE

                                  |-DONTEXITONDOMAINERROR

----------------------------------+----------------------------------------------

-UPDATE                           |Update a set of XLIFF files.

                                  |Valid options are,

                                  |-DE

                                  |-DR

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SL

                                  |-TL

                                  |-USEMAXROWSTAMP

                                  |-USEMRS

                                  |-PRODUCT

                                  |-SUBYTE

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

                                  |-USEEXCLUDE

                                  |-OVERRIDEVERSION

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-ADDLANG<language>                |Add a secondary language to the database.

                                  |Valid options are,

                                  |-DI

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

                                  |-NOMAXMESSFIX

                                  |-VERSION

----------------------------------+----------------------------------------------

-PMPUPDATE<pmp_name>              |Update translation(s) for a PMP.

                                  |Valid options are,

                                  |-DI

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-VERSION

                                  |-SYSTEMEXIT

                                  |-NOMAXMESSFIX

                                  |-LANG

                                  |-LOCALE

                                  |-DONTEXITONDOMAINERROR

----------------------------------+----------------------------------------------

-COMPARE                          |Compare a Maximo and Maxdemo database.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-CHECKDUP                         |Check XLIFF files for duplicates.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

----------------------------------+----------------------------------------------

-FIXREPORTLABEL                   |Add missing Resource name to the ReportLabel

                                  |xliff files if necessary.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-ADDMAXIMODATA                    |Add Maximo data to Maxdemo XLIFF files.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SUBYTE

                                  |-SYSTEMEXIT

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-EXCLUDEEXPORT                    |Export exclude files.

                                  |Valid options are,

                                  |-DE

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-USEMAXROWSTAMP

                                  |-USEMRS

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-MAXDEMODNTL                      |Compare a Maxdemo and Maximo database.

                                  |Used to generate TDTDoNotTranslate_Maxdemo.xml

                                  |to identify Maxdemo records.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

                                  |-DONTESCAPEVARIABLES

----------------------------------+----------------------------------------------

-CHECKTRANSLATION                 |Check database translation aginst XLIFF files.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

                                  |-VERBOSE

----------------------------------+----------------------------------------------

-CHECKDOMAINS                     |Check the domain integrity.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

                                  |-SYSTEMEXIT

                                  |-MAXRECORDS

----------------------------------+----------------------------------------------

-RESETSTARTCENTERS                |Reset the Start Centers to refresh the labels

                                  |from the database.

                                  |Valid options are,

                                  |-MXE.DB.DRIVER

                                  |-MXE.DB.URL

                                  |-MXE.DB.USER

                                  |-MXE.DB.PASSWORD

                                  |-MXE.DB.SCHEMAOWNER

----------------------------------+----------------------------------------------

Parameters

----------------------------------+----------------------------------------------

-DR<reference_dir>                |The Reference directory used for update.

----------------------------------+----------------------------------------------

-DE<export_dir>                   |The Export directory.

----------------------------------+----------------------------------------------

-DI<import_dir>                   |The Import directory.

----------------------------------+----------------------------------------------

-MXE.DB.DRIVER<driver>            |Override driver in maximo.properties.

----------------------------------+----------------------------------------------

-MXE.DB.URL<url>                  |Override url in maximo.properties.

----------------------------------+----------------------------------------------

-MXE.DB.USER<user>                |Override user in maximo.properties.

----------------------------------+----------------------------------------------

-MXE.DB.PASSWORD<password>        |Override password in maximo.properties.

----------------------------------+----------------------------------------------

-MXE.DB.SCHEMAOWNER<schema>       |Override schemaowner in maximo.properties.

----------------------------------+----------------------------------------------

-SL<source_languange>             |The source language for the XLIFF files.

----------------------------------+----------------------------------------------

-TL<target_languange>             |The target language for the XLIFF files.

----------------------------------+----------------------------------------------

-USEMAXROWSTAMP                   |Use the Maxrowstamp table.

----------------------------------+----------------------------------------------

-USEMRS                           |Use the Maxrowstamp table.

----------------------------------+----------------------------------------------

-PRODUCT<pmp_name>                |Specify product to get correct version.

                                  |Use this options with PMPs.

----------------------------------+----------------------------------------------

-SUBYTE                           |Use byte for size-unit in XLIFF.

----------------------------------+----------------------------------------------

-SYSTEMEXIT                       |Exit with System.exit(n) if an error occurs.

----------------------------------+----------------------------------------------

-MAXRECORDS                       |Maximum records per XLIFF files.

                                  |Defaults to 1000.

----------------------------------+----------------------------------------------

-USEEXCLUDE                       |Use exclude files for update or export.

----------------------------------+----------------------------------------------

-OVERRIDEEN                       |Force import of English XLIFF files.

----------------------------------+----------------------------------------------

-OVERRIDEVERSION<version>         |Use specified version in XLIFF files.

----------------------------------+----------------------------------------------

-NOMAXMESSFIX                     |Do not double apostrophes (') in MAXMESSAGES.

----------------------------------+----------------------------------------------

-LANG                             |Only process the specified languages.

                                  |Separate languages with commas.

----------------------------------+----------------------------------------------

-LOCALE<locale>                   |Normally the locale is set by -TL.

                                  |Use this parameter to over ride the locale.

----------------------------------+----------------------------------------------

-DONTEXITONDOMAINERROR            |Continue even if there are duplicates

                                  |in the domains.

----------------------------------+----------------------------------------------

-VERBOSE                          |List record details during a check of the DB.

----------------------------------+----------------------------------------------

-DONTESCAPEVARIABLES              |Don't ecape the :Varables.

----------------------------------+----------------------------------------------



王海良@Chatopera 聊天机器人 机器学习 智能客服
Chatopera 联合创始人 & CEO,运营聊天机器人平台 https://bot.chatopera.com,让聊天机器人上线!2015年开始探索聊天机器人的商业应用,实现基于自然语言交互的流程引擎、语音识别、自然语言理解,2018年出版《智能问答与深度学习》一书。