多維度模型中的翻譯 (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 的翻譯功能。 範例模型包含翻譯的標題和描述。 範例關聯式資料倉儲包含多欄翻譯值,這些值提供模型中的當地語系化屬性成員。

若要檢視模型可用的翻譯資料值:

  1. 在設計工具中,開啟 Adventure Works 多維度模型。

  2. 在 [方案總管] 中,開啟 [資料來源檢視],然後按兩下 [Adventure Works DW < version.dsv > ]。

  3. 尋找 dimDate、dimProduct、dimProductCategory 或 dimProductSubcateogry。 上述所有維度包含月、週中的日、產品名稱、類別目錄名稱等翻譯成員的屬性。

  4. 以滑鼠右鍵按一下任何欄位,然後選取 [瀏覽資料] 。 您會看到每個成員的英文、西班牙文和法文翻譯。

日期、時間和貨幣格式的實作未透過翻譯。 若要根據用戶端的地區設定,以動態方式提供特定文化特性的格式,請使用 [貨幣轉換精靈] 和 FormatString 屬性。 如需詳細資訊,請參閱 (Analysis Services) FormatString 元素 (ASSL) 的貨幣轉換。

定義翻譯

將翻譯加入 Cube

您可以將翻譯加入 Cube、量值群組、量值、Cube 維度、檢視方塊、KPI、動作、命名集和導出成員。

  1. 在 [方案總管] 中,按兩下 Cube 名稱,開啟 Cube 設計師。

  2. 按一下 [ 翻譯] 索引標籤 。所有支援翻譯的物件都會列在此頁面中。

  3. 針對每個物件,指定目標語言 (內部解析成 LCID)、翻譯的標題和翻譯的描述。 不論您要在 Management Studio 中設定伺服器語言,或在單一屬性上加入翻譯覆寫,語言清單在整個 Analysis Services 中都是一致的。

    請記住,您無法變更定序。 Cube 基本上會使用一個定序,即使您正在透過翻譯的標題支援多個語言亦然 (維度屬性除外,下面將提供說明)。 如果語言未依共用的定序正確排序,您將需要複製 Cube,以符合您的定序需求。

  4. 建立及部署專案。

  5. 使用用戶端應用程式 (例如 Excel) 連接至資料庫,並修改連接字串以使用地區設定識別碼。 如需詳細資訊,請參閱 Analysis Services) (全球化秘訣和最佳做法

將翻譯加入維度和屬性

您可以將翻譯加入資料庫維度、屬性、階層和階層內的層級。

您可以使用鍵盤或複製-貼上作業將翻譯的標題手動加入模型;至於維度屬性成員,則可以從外部資料庫取得翻譯值。 具體來說,屬性 (Attribute) 的 CaptionColumn 屬性 (Property) 可繫結至資料來源檢視中的資料行。

在屬性層級,您可以覆寫定序設定,例如您可能想要針對特定屬性調整區分全半形或使用二進位排序。 在SQL Server Analysis Services中,定序會公開定義資料系結的位置。 由於您要將維度屬性翻譯繫結至 DSV 中的不同來源資料行,因此您可以使用定序設定,來指定來源資料行所使用的定序。 如需關聯式資料庫中資料行定序的詳細資訊,請參閱 Set or Change the Column Collation

  1. 在 [方案總管] 中,按兩下維度名稱,開啟維度設計師。

  2. 按一下 [ 翻譯] 索引標籤 。所有支援翻譯的維度物件都會列在此頁面中。

    針對每個物件,指定目標語言 (解析成 LCID)、翻譯的標題和翻譯的描述。 不論您要在 Management Studio 中設定伺服器語言,或在單一屬性上加入翻譯覆寫,語言清單在整個 Analysis Services 中都是一致的。

  3. 若要將屬性繫結至提供翻譯值的資料行:

    1. 在維度設計師 | [翻譯] 中,加入新翻譯。 選擇語言。 接受翻譯值的新資料行隨即出現在頁面上。

    2. 將游標置於與其中一個屬性相鄰的空資料格中。 屬性不可以是索引鍵,但其他所有屬性都是可用選項。 您應該會看到中間有個點的小按鈕。 按一下按鈕,開啟 [屬性資料翻譯] 對話方塊。

    3. 輸入標題的翻譯。 這會做為目標語言的資料標籤,例如樞紐分析表欄位清單中的欄位名稱。

    4. 選擇提供屬性成員之翻譯值的來源資料行。 只能使用繫結至維度之資料表或查詢中已存在的資料行。 如果該資料行不存在,您需要修改資料來源檢視、維度和 Cube,以取得資料行。

    5. 選擇定序和排序順序 (如果適用的話)。

  4. 建立及部署專案。

  5. 使用用戶端應用程式 (例如 Excel) 連接至資料庫,並修改連接字串以使用地區設定識別碼。 如需詳細資訊,請參閱 Analysis Services) (全球化秘訣和最佳做法

加入資料庫名稱的翻譯

在資料庫層級,您可以加入資料庫名稱和描述的翻譯。 您可能會在指定語言 LCID 的用戶端連接上看到翻譯的資料庫名稱,但這會視工具而定。 例如,即使您指定連接上的地區設定識別碼,在 Management Studio 中檢視資料庫也不會顯示翻譯的名稱。 Management Studio 用來連接至 Analysis Services 的 API 不會讀取 Language 屬性。

  1. 在 [方案總管] 中,以滑鼠右鍵按一下專案名稱 | [編輯資料庫] ,開啟資料庫設計工具。

  2. 在 [翻譯] 中,指定目標語言 (解析成 LCID)、翻譯的標題和翻譯的描述。 不論您要在 Management Studio 中設定伺服器語言,或在單一屬性上加入翻譯覆寫,語言清單在整個 Analysis Services 中都是一致的。

  3. 在資料庫的 [屬性] 頁面中,將 Language 設為您為翻譯所指定的相同 LCID。 選擇性地另外設定 Collation (如果預設值不再適用)。

  4. 建立及部署資料庫。

刪除翻譯物件

您可以用滑鼠右鍵按一下維度或 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)