多維度模型中的翻譯 (Analysis Services)
適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
您可以使用要翻譯之 SQL Server Analysis Services 對象的適當設計工具,在 SQL Server Data Tools 中定義翻譯。 定義翻譯會針對相關聯 SQL Server Analysis Services 對象的屬性,建立與適當 SQL Server Analysis Services 對象相關聯的 Translation 物件,該物件具有指定之明確常值,且該物件具有指定的明確常值。
多語系數據模型的元素
多語系解決方案中使用的數據模型需要翻譯的標籤(功能變數名稱和描述)。 它也需要提供以各種語言腳本表達的數據值。 達成多語系解決方案需要您有個別屬性,並系結至傳回數據之外部資料庫中的數據行。
Adventure Works 範例資料庫(多維度和關係型數據倉儲)示範 Analysis Services 的翻譯功能。 範例模型包含翻譯的標題和描述。 範例關係型數據倉儲包含轉譯值的數據行,這些數據行會在模型中提供本地化的屬性成員。
若要檢視模型可用的翻譯資料值:
在設計工具中開啟 Adventure Works 多維度模型。
在 [方案總管] 中,開啟 [數據源檢視],然後按兩下 [Adventure Works DW]<>.dsv 版本。
尋找 dimDate、dimProduct、dimProductCategory 或 dimProductSubcateogry。 所有這些維度都包含月份、星期幾、產品名稱、類別名稱等翻譯成員的屬性。
以滑鼠右鍵按下任何字段,然後選取 [[瀏覽資料]。 您會看到每個成員的英文、西班牙文和法文翻譯。
日期、時間和貨幣的格式不會透過翻譯來實作。 若要根據客戶端的地區設定動態提供特定文化特性的格式,請使用貨幣轉換精靈,並 FormatString 屬性。 如需詳細資訊,請參閱 貨幣轉換(Analysis Services) 和 FormatString 元素 (ASSL)。
定義翻譯
將翻譯新增至 Cube
您可以將翻譯新增至 Cube、量值群組、量值、Cube 維度、檢視方塊、KPI、動作、具名集和導出成員。
在 [方案總管] 中,按兩下 Cube 名稱以開啟 Cube 設計工具。
按兩下 [翻譯] 索引標籤。支援翻譯的所有物件都會列在此頁面。
針對每個物件,指定目標語言(在內部解析為 LCID)、翻譯的標題和翻譯的描述。 不論您要在Management Studio 中設定伺服器語言,或在單一屬性上新增翻譯覆寫,語言清單在整個 Analysis Services 中都是一致的。
請記住,您無法變更定序。 Cube 基本上會使用一個定序,即使您透過翻譯的標題支援多種語言(維度屬性有例外,如下所述)。 如果語言不會在共用定序下正確排序,您必須製作 Cube 的複本,以符合您的定序需求。
建置和部署專案。
使用用戶端應用程式連線到資料庫,例如 Excel,修改連接字串以使用地區設定識別碼。 如需詳細資訊,請參閱 全球化秘訣和最佳做法 (Analysis Services)。
將翻譯新增至維度和屬性
您可以將翻譯新增至階層內的資料庫維度、屬性、階層和層級。
翻譯的標題會使用鍵盤或複製貼上手動新增至模型,但對於維度屬性成員,您可以從外部資料庫取得翻譯的值。 具體而言,屬性的 CaptionColumn 屬性可以系結至數據源檢視中的數據行。
在屬性層級,您可以覆寫定序設定,例如,您可能想要調整寬度敏感度,或使用特定屬性的二進位排序。 在 SQL Server Analysis Services 中,會在定義數據系結的位置公開定序。 由於您要將維度屬性轉譯系結至 DSV 中的不同源數據行,所以可以使用定序設定,以便指定源數據行所使用的定序。 如需關係資料庫中數據行定序的詳細資訊,請參閱 設定或變更數據行定序。
在 [方案總管] 中,按兩下維度名稱以開啟維度設計工具。
按兩下 [翻譯] 索引標籤。支援翻譯的所有維度對象都會列在此頁面中。
針對每個物件,指定目標語言 (解析為 LCID)、翻譯的標題和翻譯的描述。 不論您要在Management Studio 中設定伺服器語言,或在單一屬性上新增翻譯覆寫,語言清單在整個 Analysis Services 中都是一致的。
若要將屬性系結至提供已轉譯值的數據行:
仍在維度設計工具中 |翻譯,新增翻譯。 選擇語言。 新的數據行會出現在頁面上,以接受翻譯的值。
將游標放在與其中一個屬性相鄰的空白數據格中。 屬性不能是索引鍵,但所有其他屬性都是可行的選擇。 您應該會看到一個小按鈕,其中包含一個點。 按下按鈕以開啟 屬性資料轉譯對話框。
輸入標題的翻譯。 這會做為目標語言的數據標籤,例如,做為數據透視表欄位清單中的功能變數名稱。
選擇提供屬性成員翻譯值的源數據行。 只有數據表或系結至維度的查詢中預先存在的數據行可用。 如果數據行不存在,您必須修改數據源檢視、維度和 Cube 以挑選數據行。
如果適用,請選擇定序和排序順序。
建置和部署專案。
使用用戶端應用程式連線到資料庫,例如 Excel,修改連接字串以使用地區設定識別碼。 如需詳細資訊,請參閱 全球化秘訣和最佳做法 (Analysis Services)。
新增資料庫名稱的翻譯
在資料庫層級,您可以新增資料庫名稱和描述的翻譯。 翻譯的資料庫名稱可能會在指定語言 LCID 的用戶端連線上顯示,但這取決於工具。 例如,即使您在連接上指定地區設定標識符,在 Management Studio 中檢視資料庫也不會顯示翻譯的名稱。 Management Studio 用來連線到 Analysis Services 的 API 不會讀取 Language 属性。
在方案總管中,以滑鼠右鍵按兩下項目名稱 |編輯資料庫 以開啟資料庫設計工具。
在 [翻譯] 中,指定目標語言 (解析為 LCID)、翻譯的標題和翻譯的描述。 不論您要在Management Studio 中設定伺服器語言,或在單一屬性上新增翻譯覆寫,語言清單在整個 Analysis Services 中都是一致的。
在資料庫的 [屬性] 頁面中,將 Language 設定為您為翻譯指定的相同 LCID。 或者,如果預設值不再合理,請設定 定序。
建置及部署資料庫。
刪除翻譯物件
您可以在維度或 Cube 設計工具中以滑鼠右鍵按下翻譯物件,以永久移除它。 您無法還原或回收已刪除的物件,因此在繼續之前,請務必先檢閱受影響的物件清單。
解析翻譯
如果用戶端應用程式要求指定語言標識符中的資訊,SQL Server Analysis Services 實例會嘗試將 SQL Server Analysis Services 對象的數據和元數據解析為最接近的語言標識符。 如果用戶端應用程式未指定預設語言,或指定中性地區設定標識符 (0) 或處理預設語言識別碼 (1024),則 SQL Server Analysis Services 會使用實例的默認語言來傳回 SQL Server Analysis Services 對象的數據和元數據。
如果用戶端應用程式指定預設語言識別元以外的語言標識符,實例會逐一查看所有可用物件的可用翻譯。 如果指定的語言標識碼符合翻譯的語言標識符,SQL Server Analysis Services 會傳回該翻譯。 如果找不到相符專案,SQL Server Analysis Services 會嘗試使用下列其中一種方法,以最接近指定語言標識符的語言標識碼傳回翻譯:
針對下列語言標識碼,如果未定義指定語言標識符的翻譯,SQL Server Analysis Services 會嘗試使用替代語言標識碼:
指定的語言識別碼 替代語言標識碼 3076 - 中文(香港特別行政區,中國) 1028 - 中文(臺灣) 5124 - 中國(澳門特別行政區) 1028 - 中文(臺灣) 1028 - 中文(臺灣) 默認語言 4100 - 中文(新加坡) 2052 - 中文(中國) 2074 - 克羅埃西亞文 默認語言 3098 - 克羅埃西亞文 (斯拉夫) 默認語言 針對所有其他指定的語言標識符,SQL Server Analysis Services 會擷取指定語言標識碼的主要語言,並擷取 Windows 所指出的語言標識符,作為主要語言的最佳相符專案。 如果找不到最符合語言標識符的翻譯,或指定的語言標識碼與主要語言的最佳比對,則會使用默認語言。
另請參閱
Analysis Services 的
語言和定序 (Analysis Services)