在 LuckyTemplates 中對日期表列進行排序

在 LuckyTemplates 中對日期表列進行排序

在今天的博客中,我將討論LuckyTemplates 論壇中一直出現的一個問題。如何正確地對擴展日期表列中的字段進行排序? 您可以在本博客底部觀看本教程的完整視頻。

專家之一 Melissa Dekorte 開發。

我們在這篇博文中的示例只是一個簡單的應用程序,它從 2018 年運行到 2020 年,財政年度從 7 月開始。該成員想了解如何對月份名稱進行排序;他們還試圖對與月份相關的字段之一進行排序。

這是您可以有效地對日期表列進行排序的方法。

在 LuckyTemplates 中對日期表列進行排序

我們的擴展日期表中有很多字段;坦率地說,有時很難保持秩序。

這就是我們創建此備忘單的原因,該備忘單向您展示了每個字段在任何給定日期的樣子,以及它們的格式和內容。

在大多數情況下,您可以使用它來確定如何根據一個字段對另一個字段進行排序。

在 LuckyTemplates 中對日期表列進行排序

我們有月份名稱,論壇成員試圖使用MonthnYear來整理它。

讓我們在擴展日期表中找到月份名稱。在字段窗格中選擇月份名稱,然後轉到按列排序,並查找MonthnYear

在 LuckyTemplates 中對日期表列進行排序

當我們單擊它時,我們會收到一條錯誤消息,指出我們在 MonthnYear 中不能有多個值與 Month Name 中的相同值。

在 LuckyTemplates 中對日期表列進行排序

這歸結為粒度問題。您嘗試排序的字段與您用來排序的字段之間需要一對一的關係。

在這種情況下,對於 2018 年、2019 年和 2020 年的給定月份,我們可以為MonthnYear字段設置三個不同的值。這就是為什麼我們需要找到一個具有一對一關係的原因。

如果我們回到我們的備忘單,我們可以看到MonthofYear只是月份的數字。這將具有我們正在尋找的一對一關係。這意味著一月對應 1,二月對應 2,依此類推。

如果我們單擊“按列排序”並按“一年中的月份”排序,我們就會正確地對字段或表列進行排序。

在 LuckyTemplates 中對日期表列進行排序

在 LuckyTemplates 中對日期表列進行排序

下一個,Month & Year,有點困難。它是一個複合字段,具有較短的月份和年份。

在 LuckyTemplates 中對日期表列進行排序

我們需要找到先按年排序,然後按月排序的東西。如果我們在字段窗格中單擊MonthnYear並轉到按列排序,我們最初嘗試使用的MonthnYear將是一個完美的選擇。

在 LuckyTemplates 中對日期表列進行排序

您可以看到,對於 Month & Year 表列,所有內容都已完美整理。

在 LuckyTemplates 中對日期表列進行排序

所以現在我們已經完成了前兩個。然而,最後一個是一個非常行為不端的領域。

在 LuckyTemplates 中對日期表列進行排序

由於幾個原因,這是有問題的。我們將兩個文本字段連接在一起,並且未填充會計月份字段。

最終,我們希望實現與此MonthnYear類似的結果,其中我們有一個四位數的財政年度,然後是我們的兩位數的財政月份。

在 LuckyTemplates 中對日期表列進行排序

最簡單的方法是使用power query

我們去轉換數據

在 LuckyTemplates 中對日期表列進行排序

然後我們轉到我們的日期表並添加一個自定義列。

在 LuckyTemplates 中對日期表列進行排序

我們將此自定義列稱為財政年度財政月份排序 (FYFM 排序)。

在 LuckyTemplates 中對日期表列進行排序

我們將從我們的文本前綴開始,它是我們年份的前兩位數字 20,然後我們將它與一個名為Tex.Middle的函數連接起來。此函數從較大的文本字符串中提取子字符串。它類似於DAX 函數 MID,我將向您展示兩者之間的區別。

在 LuckyTemplates 中對日期表列進行排序

我們將在我們的財政年度字段中使用它。

在 LuckyTemplates 中對日期表列進行排序

在 DAX 中,當我們提取子字符串時,它是一個基於 1 的索引。要提取第三個字符,我們需要使用 3。在 power 查詢中,它是一個從零開始的索引,因此第三個字符將為 012。

我們從 2 開始,這是第三個字符。我們想要返回兩個字符以從財政年度字段中獲取第二對數字。

在 LuckyTemplates 中對日期表列進行排序

下一步是將其與我們填充的財政月份字段連接起來。

在DAX中,我們需要用到一個LENGTH函數和一個IF函數,然後我們就可以手動pad了。

在 power query 中,有一個函數可以完成所有這些工作。這是Text.PadStart

由於會計期間是一個數字字段,我們需要使用一個名為Text.From的函數將數字值轉換為我們可以填充的文本值。然後我們將提取我們的會計期間字段。

在 LuckyTemplates 中對日期表列進行排序

我們要確保它有 2 個字符。如果它有 1 個字符,我們將用 0 填充它。

在 LuckyTemplates 中對日期表列進行排序

單擊“確定”按鈕後,我們將獲得四位數的財政年度,然後是兩位數的填充財政月份。

在 LuckyTemplates 中對日期表列進行排序

然後我們將返回主頁並單擊關閉並應用

如果我們按列對FM & FY 字段進行排序,它現在將按財政年度和財政月完美排序。

在 LuckyTemplates 中對日期表列進行排序

結論

在此博客中,我介紹了有關如何在 LuckyTemplates 中對日期表列進行排序的技術。對於困難的領域來說,這是一個很好的策略,它來自於構建一些自定義函數。我希望您發現這套通用工具對您自己的報告開發很有幫助。

如果您還沒有這樣做,請訂閱LuckyTemplates TV頻道,我們將來會在該頻道發布更多內容。

乾杯!


什麼是 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 網關?所有你必須知道的