复制记录并用幂 bi 中的日期差异进行插补

问题描述 投票:0回答:1

拥有包含特定列的数据集 - CustomerCode、Customer、Transactionnumber、Transaction_date、Due_date 和 payment_date。我正在尝试创建一个汇总表,其中包含一个名为“日期”的新列,该列根据其他列的条件遵循某些规则。

这是我需要实现的目标:

  • 如果 pay_date 不为空,我想将 Due_Date 添加到名为 date 的新列中。

  • 如果 pay_date 为空,我需要计算 Due_Date 和 Transaction_Date 之间的月份,并在日期列中添加每个月的最后一天。

  • 另外,我想复制每个月的整个记录。

例如,考虑这个例子:

原表:

交易_日期 到期日期 付款_日期
2023 年 1 月 1 日 2023 年 5 月 1 日

那么想要的输出表应该如下

交易_日期 到期日期
2023 年 1 月 31 日 2023 年 1 月 1 日 2023 年 5 月 1 日
2023 年 2 月 28 日 2023 年 1 月 1 日 2023 年 5 月 1 日
2023 年 3 月 31 日 2023 年 1 月 1 日 2023 年 5 月 1 日
2023 年 4 月 30 日 2023 年 1 月 1 日 2023 年 5 月 1 日
2023 年 5 月 31 日 2023 年 1 月 1 日 2023 年 5 月 1 日

我需要有关 DAX 代码或步骤的帮助,以在 Power BI 中实现此汇总。如何根据 pay_date 列中的条件创建遵循这些规则的计算表?任何有关 DAX 功能或执行此汇总的步骤的见解或指导将不胜感激。

powerbi dax powerbi-desktop calculated-columns
1个回答
0
投票

表1:

创建一个新的日期表如下:

Date = CALENDARAUTO() 

创建一个新表如下:

Table2 = 
GENERATE(
    Table1, 
    FILTER(
        DATESBETWEEN('Date'[Date], Table1[Transaction_Date], EOMONTH( Table1[Due_Date],0)),
        'Date'[Date] = EOMONTH('Date'[Date],0)
    )
)

© www.soinside.com 2019 - 2024. All rights reserved.