为什么在使用“ EARLIER”功能时出现“无法确定列的单个值”错误?

时间:2019-07-07 18:38:46

标签: powerbi dax

使用EARLIER函数时,在Power BI中出现“无法确定列的单个值”错误。

我已经尝试使用这篇文章中的代码:Getting the PERCENTRANK.INC in PowerPIvot/DAX

我也搜索了EARLIER函数以及其他避免空白的方法,希望这是原因。仍然得到错误。

最后,我在上面的帖子中尝试了原始解决方案;仍然出现相同的错误:

RankAwards = RANKX('HRO_Table_current','HRO_Table_current'[HM31_AWARD_AMOUNT])

AwardsPercRank =
COUNTROWS (
    FILTER (
        'HRO_Table_current',
        'HRO_Table_current'[HM31_AWARD_AMOUNT]
            < EARLIER ( 'HRO_Table_current'[HM31_AWARD_AMOUNT] )
            && ISBLANK ( 'HRO_Table_current'[HM31_AWARD_AMOUNT] ) = FALSE ()
    )
)
    / (
        COUNTROWS (
            FILTER (
                'HRO_Table_current',
                ISBLANK ( 'HRO_Table_current'[HM31_AWARD_AMOUNT] ) = FALSE ()
            )
        ) - 1
    )

预期结果:类似于在Excel中使用PERCENTRANK会得到的结果。

实际结果:“无法确定列的单个值”之前提到的错误

1 个答案:

答案 0 :(得分:0)

尝试一下

RankAwards = RANKX('HRO_Table_current','HRO_Table_current'[HM31_AWARD_AMOUNT])

VAR FIRTVALOR =

CALCULATE(
  COUNTROWS(HRO_Table_current);
  HRO_Table_current[HM31_AWARD_AMOUNT]< EARLIER(HRO_Table_current[HM31_AWARD_AMOUNT]);
  ISBLANK (HRO_Table_current[HM31_AWARD_AMOUNT] ) = FALSE ()
        )



VAR SECONDVALOR=      
      CALCULATE(
          COUNTROWS(HRO_Table_current);
          ISBLANK(HRO_Table_current[HM31_AWARD_AMOUNT]) = FALSE()
               )

RETURN((FIRTVALOR / SECONDVALOR)-1)

您打算如何使用RANKX语句,我认为第二个勇气最重要的是表达,我不确定您要使用RANKX语句做什么。