【问题标题】:I can't sort a table column by a calculated column我无法按计算列对表格列进行排序
【发布时间】:2019-10-15 14:13:31
【问题描述】:

尝试通过同一表中的计算列对我的自定义日期表(csv 文件)中的列进行排序,但看到错误。计算的列没有引用我希望排序的列。这是计算列的 DAX:

PeriodOffset =
Dates[Period] + Dates[FiscalYear] * 13
    - CALCULATE ( VALUES ( Dates[Period] ), Dates[Date] = TODAY () )
    - CALCULATE ( VALUES ( Dates[FiscalYear] ), Dates[Date] = TODAY () ) * 13

我的日期表包含从 2003/4 到 2034/35 的每个日期,以及自定义期间编号、日历和财政年度等。我要排序的列称为 PeriodFiscalYear。该列中的每个值在 PeriodOffset 列中只有一个条目,所以不是这样。

奇怪的是,我在之前的报告中已经进行了这项工作。在这种情况下,我只是试图重新创建功能,但它不会这样做。更奇怪的是,如果我将 PeriodFiscalYear 列创建为计算列(目前它在 csv 文件中被硬编码),它就可以工作!所以我有一种解决方法,我只想了解发生了什么。

谢谢

【问题讨论】:

  • 能否请您发布 5 行示例数据,以便我们可以复制错误?

标签: powerbi dax


【解决方案1】:

我相信这与 data column 在数据被摄取到 PBI 时进行排序有关。 计算的列仅在以后计算。

因此:

  • 您只能将data column 与其他data columns 排序(因为计算的列尚未计算
  • 您可以使用data column calculated columncalculated column 进行排序

解决方案:
A) PeriodFiscalYear 变为 calculated column
B) PeriodOffset 变为 data column(在您的 CSV 或 Power Query 中)

【讨论】:

    【解决方案2】:

    我真的想通了。问题出在我的数据模型上 - 我在那里有一个循环关系,因为我使用日历表在一个表中派生 Period 列,然后将它们链接回关系中!

    我用两者中的键创建了一个链接表来建立关系,然后隐藏它。

    谢谢

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-16
      • 1970-01-01
      • 2012-08-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多