Servigistics InService 發佈與載入 > 其他資訊 > TAL 自訂 > 新增語言
  
新增語言
背景
Servigistics InService 中有兩種類別的物件:
包含特定屬性許多地區設定的 XML 來源 (例如︰PL、零件與 BOM)
在各種地區設定 (例如 PDF 與 IEXML) 中編寫的物件
Px 配套擁有名為 translation.xml 的強制加工品,可將鍵對應到目標語言的字串。XML 來源將始終以編寫的語言發佈,但目標語言字串將在 translation.xml 中提供。此 XML 包含指定字串的翻譯值及其編寫的地區設定。
在以下範例中,編寫的語言為 enja 翻譯顯示在 translation.xml 中。
此 XML 中的翻譯儲存在名為 SC_DICTIONARY 的資料庫表格中。這包含 transidlocale、編寫的地區設定,以及實際的翻譯。
當轉換單一物件文件時,會合併 SC_DICTIONARY 中的所有可用翻譯。請參閱轉換英文與日文配套之後,零件清單的下列範例。
在此,零件清單的名稱會以 enja 提供,而此字串的編寫語言為 en。當使用者介面請求這兩種語言中的任何一種時,會提供相應的翻譯。但是,如果使用者介面請求其他語言,則會提供符合 AuthoredDoclang 的翻譯。換句話說,語言回退行為是當無法符合使用者語言偏好設定時,便以編寫語言提供內容。
您可以使用檢視樣式表中的 EXSLT 延伸函數 select-lang 來提供所選語言資料,如下所示。
欲將偏好設定語言變數 lang1 變為 lang6,您需要匯入 langSlitter.xsl,如下所示。
* 
如果不指定任何語言,則 "x" 就是泛用語言指示器。在內容預期為多語系的位置中,會在轉換中新增此語言指示器,但並沒有找到此類內容 (它並未本地化)。您不會看到實際語言代碼與 "x" 語言代碼的混合。前述 select-lang 延伸函數會根據其參數清單中從左到右的優先順序擷取它所找到的第一個語言。
新增語言
針對現有類型,不需要任何 TAL 自訂工作。但是,您需要配置使用者介面。請參閱Servigistics InService Customization Guide中的〈自訂 InService 使用者介面〉
您也需要執行 TAL 自訂,以將語言新增至新類型或屬性中。對於 ML 配套,會在執行任何形式的轉換之前處理 translations.xml 一次。處理的檔案可在下列位置找到,以供在轉換中進一步參考︰
INS_WORK/Applications/ContentManager/Work/PreProcessing/TAL/TransformationDriver/TaskId
以下是 translation.xml 檔案的一部份:
欲使用此檔案,您必須新增名為 translationXML 的其他輸入參數,如下所示。
您可以透過下列步驟,根據翻譯 ID 在此檔案中尋找實際翻譯值,並在轉換的 XML 中填入語言資訊及其值:
1. 將輸入檔案處理為文件。
2. 定義鍵︰
3. 針對每個翻譯屬性,根據翻譯 ID 尋找所有所需語言的已翻譯值︰
4. 根據您的需求填入翻譯語言及其值。
以下是 en-USja 地區設定中 Desc 的範例輸出︰