什麼是 Python 中的自我:真實世界的例子
什麼是 Python 中的自我:真實世界的例子
對於今天的博客,我想討論一個與我在加拿大政府的許多諮詢任務中並不少見的情況,我的客戶要求所有出版物都是雙語的或以官方語言(英語和法語)提供。我將向您展示我如何為本教程製作多語言 LuckyTemplates 報告。您可以在本博客底部觀看本教程的完整視頻。
儘管需要一些額外的基礎設施和開發,但這可以通過 SSRS 報告輕鬆完成。但是,如果您嘗試使用 LuckyTemplates 執行相同的操作,則存在一些限制。
我想展示我最近使用的部分手動解決方法,我對其他人如何處理相同問題很感興趣,所以請隨時在下面的評論部分留下您的經驗。
目錄
多語言 LuckyTemplates 報表的兩個區域
對於任何多語言報告開發工作,有兩個主要領域需要翻譯值:報告數據和報告標籤。
對於數據,如果負責生成多語言報告,則有望訪問已包含數據文本值翻譯的數據源。至於標籤,通常需要單獨的翻譯工作。
我今天要展示的示例使用多語言方法,以及用英語、法語或西班牙語呈現報告的解決方案。我創建了一個小樣本數據集,但請對所有翻譯持保留態度。
我並不是說這些都是合適的翻譯,而是說它們是基本在線翻譯工具的結果。此處的翻譯僅用於幫助說明該技術,並且純粹出於教育目的。
多語言 LuckyTemplates 報表的數據要求
我們將有一個要展示的數據和翻譯的存儲庫,以及一個 Excel 工作簿,每個數據類型都有一個選項卡。
首先,我們需要一個我們將要支持的語言的表格……
…還有另一個選項卡用於將在報告中使用的標籤的翻譯。
接下來,我們需要對要在視覺效果中使用的列進行翻譯。
最後,我們需要一個數據源,其中所有事實表行都沒有維度信息,而是維度的鍵。
然後我們需要一組維度,其中包含我們將支持的每種語言的所有字符串值的翻譯。
將數據加載到 LuckyTemplates
數據就是這樣。現在讓我們在 LuckyTemplates 中加載和建模我們的數據。我們將打開power query,我們可以看到前面的 Excel 電子表格中的每個選項卡都有一個表格。
我還從 LuckyTemplates 論壇加載了
數據建模
讓我們轉到建模視圖,看看我們擁有的簡單數據模型。在這裡,我們看到一個標準的瀑布佈局,維度在上面,事實表在中間,度量表在右邊,支持表在下部。
然後我們需要一組翻譯度量,一個用於我們要在報告中顯示的每個標籤。這些措施將考慮在我們的語言切片器中選擇的語言,然後返回所選語言的適當值。
這是一個例子。這絕不是優化的DAX;而是為清楚起見而編寫的措施。
這項措施做了三件事。首先,它設置我們將要計算的標籤的名稱。它查找標籤的所有三個值,然後使用簡單的邏輯返回適當的標籤量。
為語言代碼創建單選切片器
讓我們看一下我們的基本頁面設置,即英文頁面。我們需要做的第一件事是將單個選擇切片器添加到可用語言代碼的頁面。
您可以看到語言代碼如何來自語言表,以及它是如何為單個選擇設置的。
添加導航按鈕
接下來我們要做的是在報告的右上角添加三個導航按鈕。
讓我們打開選擇窗格,然後打開標題組,然後單擊法語按鈕。我們可以看到此按鈕的操作類型為頁面導航,其目標為法語頁面。
西班牙語也是如此。操作類型是頁面導航,其目的地是西班牙語頁面。
添加標題框
接下來我們要做的是添加一個標題文本框。只需單擊“主頁”選項卡中的“文本”框並為報告標題添加一個值。
然後對於第二個值,我們將添加副標題。
我們現在可以看到,當我們從一種語言切換到另一種語言時,這些值發生了變化。
添加卡片視覺效果
然後我們將在此處添加卡片視覺效果。
有了這張卡片,我們要將選定的語言代碼添加到其中。
然後關閉類別,並打開標題。
對於標題文本,我們將使用基於我的翻譯措施之一進行選擇的選項,並為語言卡標題添加標籤。
我們可以再次看到該值根據切片器上選擇的語言而變化。
最後,我們將為交易添加一個表。我已經添加了交易 ID 和日期列。
我們還將為產品、狀態、省、國家和大洲添加轉換度量。
我們還在這裡使用了事務表標題。
在我們處理了數據更改並創建了英語基礎頁面之後,我們將為法語複製它並將其重命名為French2。
然後我們將更改語言切片器並能夠看到數據發生適當的變化。這意味著解決方案在此之前保持動態。
但是您可能已經註意到交易表中的列名仍然是英文的。這是我們需要通過單獨更改列名稱和編輯字段窗格中的文本來進行一些手動工作的地方。
如果我們回到我們的翻譯電子表格,請記住我們有一個列選項卡,我們有各種列名稱的翻譯。
我們將獲取對應於英語列的法語文本,然後適當地編輯名稱。首先,我們將通過選擇並複制該值來創建產品列……
…然後返回到 LuckyTemplates 並粘貼值以將產品列從 Product 更改為 Produit。
我們將為 Status 做同樣的事情。我們將返回到電子表格並將表示狀態的法語單詞複製到剪貼板……
…然後將其粘貼到“字段”窗格中。
整個過程是一個複制和粘貼操作,我們將對剩餘的列和西班牙文頁面重複此過程。
發布多語言 LuckyTemplates 報表
為完成 PBX 的設置,讓我們確保只有一個可見的英文頁面,而隱藏法語和西班牙語頁面。
現在我們將繼續將報表部署到 LuckyTemplates 服務中的多語言工作區。
完成後,我們將轉到 LuckyTemplates 服務並打開我們剛剛部署的報表。
我們的導航按鈕位於右上角。如果我單擊法語或西班牙語,報告將以所選語言適當顯示。
修改單一語言的報告
所以我們這裡有一個單一的報告,用戶可以選擇以他們喜歡的語言查看。但也可能存在用戶不想這樣做而寧願直接打開特定語言報告的情況。
在這種情況下,我們可以利用已有的一份報告,並保存三份副本,一份英文、一份法文和一份西班牙文。然後我們可以依次打開每個報表並刪除導航按鈕。我們還需要修改每份報告,以確保我們只顯示適當的語言。
我們可以直接在LuckyTemplates服務中打開感興趣的報表。
每種多語言報告方法的優缺點
單一報告解決方案使用單一報告。所以所有的代碼都在一個地方,只有一個 PBX 需要更新。它使用單個數據集,因此數據只加載一次。它確實有一些限制。它是靜態的,需要手動更新名稱。如果還有任何未來的更新,用戶必須在打開後選擇感興趣的語言。
對於多報表解決方案,最終用戶的工作量較少,他們可以立即打開感興趣的報表。在局限性方面,它使用了多個報告,因此代碼會重複,並且各個版本也會不同步。
多報告解決方案為每種語言使用數據集的副本,因此從服務空間的角度來看也是不可取的。另一個限制是開發人員需要做更多的工作,因為必須更新基礎版本。每次有設計更改時,都必須重複完整的多報表部署過程。
我個人更喜歡單一報告方法,但最終,合適的解決方案是一項業務決策,將由客戶決定。
結論
我希望你已經從這個用於呈現多語言 LuckyTemplates 報告的解決方法中學到了一些東西。如果您喜歡本特定教程中涵蓋的內容,請訂閱 TV 頻道並查看我們網站的其餘部分,那裡有大量資源可以讓您的 LuckyTemplates 技能更上一層樓。
格雷格
什麼是 Python 中的自我:真實世界的例子
您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。
在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。
本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。
在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。
我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。
了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。
本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。
如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。
什麼是 LuckyTemplates 網關?所有你必須知道的