测量在两个日期内创建一条恒定线

时间:2018-10-13 18:58:15

标签: powerbi dax

我正在尝试创建一条水平线,该水平线的常数分别在项目的开始日期和结束日期开始和结束。

表如下:

DateTable

Date           
28/09/2018      
29/09/2018     
30/09/2018      
01/10/2018      
02/10/2018      

ProjectTable

Project     Start         Finish
X-100       28/09/2018    30/09/2018

我尝试做

Measure = CALCULATE(1; FILTER(DateTable; DateTable[Date] >= FIRSTDATE(ProjectTable[Start]) && DateTable[Date] <= FIRSTDATE(ProjectTable[Finish)))

但是我无法使该行位于ProjectTable的“开始”和“完成”之内。它将扩展DateTable中可用的整个日期范围。

1 个答案:

答案 0 :(得分:2)

一般规则是,折线图中不会显示空白值。

为了说明这一点,我用另外两个项目和[Value]列扩展了ProjectTable。所以现在看起来像这样。

enter image description here

然后我创建了以下工具:

Measure =
IF (
    SELECTEDVALUE ( DateTable[Date] )
        >= LOOKUPVALUE (
            'ProjectTable'[Start],
            ProjectTable[Project], SELECTEDVALUE ( ProjectTable[Project] )
        )
        && SELECTEDVALUE ( DateTable[Date] )
            <= LOOKUPVALUE (
                'ProjectTable'[Finish],
                ProjectTable[Project], SELECTEDVALUE ( ProjectTable[Project] )
            ),
    LOOKUPVALUE (
        'ProjectTable'[Value],
        ProjectTable[Project], SELECTEDVALUE ( ProjectTable[Project] )
    ),
    BLANK ()
)

由于DateTable和ProjectTable之间没有关系,因此我不得不使用LOOKUPVALUE函数来获取[开始],[完成]和[值]的值。生成的Linechart视觉效果如下所示:

enter image description here