有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

在本教程中,我將討論 LuckyTemplates 中可能破壞數據模型和/或報表的四個隱藏陷阱。我將不僅向您展示如何在創建 LuckyTemplates 報告時避免這些問題,還將向您展示如何創建一個綜合模板來有效解決所有這些問題並加快您的 LuckyTemplates 開發速度。您可以在本博客底部觀看本教程的完整視頻。

目錄

LuckyTemplates 啟示錄中創建 LuckyTemplates 報表的 4 位騎士

自動檢測關係

創建 LuckyTemplates 報告時的第一個陷阱是自動檢測關係。這會將您的數據建模決策從您的判斷和專業知識轉變為 LuckyTemplates 中的自動化流程。我認為微軟應該從 90 年代帶回 Clippy,至少給你一個公平的警告,並允許你批准你是否想讓他們對你的數據模型做些什麼。

這是我的一個朋友為數據挑戰 15 所做的一些工作的實際示例。她將這個 Total Wins 表放入一個更新的數據模型中,並忘記關閉自動檢測關係。

結果,它以錯誤的方向在這個錯誤類型的表中構建了三個關係,並添加了雙向關係而不是單向關係。這在她的模型中造成了很多歧義,並破壞了她的 DAX 的準確性。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

如果這沒有告訴您應該將其關閉,我不確定會是什麼。此外,如果您啟用了自動檢測關係,並且在您的模型中放置了一個斷開連接的表,例如,切片器的收穫值,但您不希望它連接到您的數據模型,它將自動連接那些並基本上使您試圖實現的該表的斷開連接的元素變得無用。

自動日期/時間

我想談的第二件事是自動日期/時間。我認為這是一個旨在幫助初學者的功能,他們不了解專用日期表的複雜性。

此功能在一對多關係的一側為每個日期和數據模型創建一個日期表。因此,在某些情況下,它可以在您的模型中創建五個或六個不同的日期表。這也意味著它的創建方式是您必須以一種奇怪的分層格式處理日期。它不僅使模型混亂,而且使它們的工作變得困難。

那麼,讓我們進入 LuckyTemplates。我們將創建一個模板文件,關閉模板中的所有這些功能,然後使用其他一些功能保存該模板。我們可以在每次重新創建新報告時打開它,讓它忽略那四個騎士。

現在,如果我們轉到“選項和設置”,您會在“全局”中看到無法關閉“自動檢測關係”。關閉它的唯一方法是在當前文件下的數據加載中。因此,如果您不製作模板,則每次都必須將其關閉。如果你不記得了,就會造成一些糟糕的關係。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

所以關閉它以及自動日期/時間。此外,還要確保檢測非結構化源的列類型和標題也被關閉,這是Power Query中的一些東西,特別是對於 CSV 文件,可能會導致問題,因為它只根據前幾百行進行判斷。同樣,它會做出一些錯誤的決定,這些決定可能會在您創建 Power BI 報告時導致問題。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

您還可以全局關閉自動日期/時間,這意味著我們已經擊敗了前兩個騎士。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

繼續,我們將把一個日期表放入我們的模板中。我使用的日期表是 Melissa 令人難以置信的擴展日期表,您可以在 LuckyTemplates 論壇中找到它。

現在我們進入 LuckyTemplates,轉到“主頁”、“新源”,然後轉到“空白查詢”。然後,如果我們進入高級編輯器,我們可以粘貼擴展日期表代碼。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

在這一點上,我們必須做出決定。因為我們使用的是模板,所以我們不知道事實表會是什麼樣子。每份報告都會有所不同。

因此,如果您的事實表往往具有相當恆定的持續時間,您可以為日期表創建一個動態的開始和結束日期。然而,在這種情況下我通常做的是我只使用我知道不正確的一年,但我知道如果我忘記進入並改變事情會給我帶來非常奇怪的結果。然後,它會喚醒我的記憶並提醒我進入並將我的日期表的日期與我的事實表相匹配。

所以在這個例子中,我將把 1950 放在這裡。我們總是想在我們的日期表中使用完整的年份,所以我將它放在 1950 年底之前。財政年度,比方說,從 7 月 1 日開始。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

然後我們點擊 Invoke,它會為我們構建 Date 表。稍後當我們知道我們的事實表的持續時間形狀時,我們將進入這裡並更改這些日期。它將更新日期表以匹配這些持續時間。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

創建 LuckyTemplates 報表時標記日期表

現在,我想談談標記日期表。這是我們還沒有處理過的其他騎士之一。在您的日期表中,您可以在模型視圖或表視圖中執行此操作。我通常在表格視圖中這樣做。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

它會詢問您要驗證的字段。在擴展日期表中,它始終是日期字段。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

當你點擊驗證時,它會依次做六件事。它確認 Date 字段包含唯一值,它不包含空值,它包含連續的日期值,並且如果它是 Date/Time 字段(在本例中不是,它是 Date 字段)。如果它是一個日期/時間字段,它將確認該日期的每個條目都具有相同的時間戳。

此外,它擺脫了我之前談到的自動日期層次結構。它還允許某些期望時間智能功能下的連續驗證日期的功能正常工作。在某些情況下,如果沒有正確標記的日期表和經過驗證的日期字段,這些功能將無法正常工作。

因此,通過標記您的日期表,它可以完成所有這些好事,我們在模板中也這樣做了。即使我們更改了開始日期和結束日期的持續時間,它仍將保留為標記的日期表。

自動總結

我們要做的最後一件事是Auto Summarization

我們要做的最後一件事是Auto Summarization。如果我們轉到字段視圖,我們會在所有數字字段旁邊看到求和符號。您會在列工具下看到它在所有這些旁邊放置了 Sum 的總和。它假設它知道我們想用這些做什麼。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

這就涉及到隱性措施與顯性措施的問題。同樣,您不想將此決策移交給要創建顯式度量的 LuckyTemplates,並且您想要關閉這些 Sum 函數。在本機 LuckyTemplates 中,無法同時關閉所有這些。

因此,您需要完成一項艱鉅的任務,即瀏覽每個添加了摘要的位置,然後轉到“列工具”,然後單擊“不匯總”。當你這樣做時,你會看到它帶走了求和符號。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

但是,您會注意到這個日期表有很多這樣的自動摘要。您可能想知道是否有更簡單的方法來執行此操作。答案是肯定的——您可以使用表格編輯器 3 (TE3)。

我們將利用 TE3 中的高級腳本模式立即關閉所有這些功能。為此,我們轉到 Macros,然後單擊Turn off Summarization for Entire Model。您會發現它只是一個相對較短的升 C 腳本。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

然後,我們返回到 TOM 資源管理器,單擊我們的數據模型,右鍵單擊宏,然後單擊關閉整個模型的匯總。只需點擊幾下就可以關閉整個日期表的匯總。這只是 TE3 中的一項很棒的功能。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱

除了這四個騎士,還有一件更重要的事情需要你做。您需要在關係的事實表端隱藏關鍵字段。為此,您必須單獨檢查它們並在本機 LuckyTemplates 中隱藏每一個。但是,您也可以將其編寫到 TE3 中,只需單擊兩次,一切都會在您的模板中正確完成。

在擊敗了這四個騎士之後,從開發的角度來看,就主題和背景而言,我們讓我們的生活變得更輕鬆。您可以創建這樣的東西——帶有公司徽標、背景顏色等的模板。之後,您可以將其保存為 PBIT 模板,而不是 PBX 文件。當您打開此文件時,它將為您的設計提供一個不錯的起點,所有這四個騎士都已關閉並“被擊敗”。

有效地創建 LuckyTemplates 報告並避免隱藏的陷阱


LuckyTemplates 報表開發的最佳實踐
LuckyTemplates 報表和可視化的最佳實踐
LuckyTemplates 中的數據建模:技巧和最佳實踐

結論

在此博客中,我向您展示了 LuckyTemplates 中的四個隱藏陷阱、如何避免它們,以及更多快速輕鬆地開發報表的技巧。希望這能給您一些很好的思考,以及您希望如何設置類似的模板並避免在創建LuckyTemplates 報告時遇到的一些主要陷阱。

乾杯!


什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。

使用 LuckyTemplates 在線服務中的應用程序的最佳技巧

使用 LuckyTemplates 在線服務中的應用程序的最佳技巧

我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。

隨著時間的推移分析利潤率變化——使用 LuckyTemplates 和 DAX 進行分析

隨著時間的推移分析利潤率變化——使用 LuckyTemplates 和 DAX 進行分析

了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。

DAX Studio 中數據緩存的物化想法

DAX Studio 中數據緩存的物化想法

本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。

使用 LuckyTemplates 進行業務報告

使用 LuckyTemplates 進行業務報告

如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。

什麼是 LuckyTemplates 網關?所有你必須知道的

什麼是 LuckyTemplates 網關?所有你必須知道的

什麼是 LuckyTemplates 網關?所有你必須知道的