Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi 功率BI如果条件为真,则列的日期值为空_Powerbi_Dax - Fatal编程技术网

Powerbi 功率BI如果条件为真,则列的日期值为空

Powerbi 功率BI如果条件为真,则列的日期值为空,powerbi,dax,Powerbi,Dax,下表有两列 其中A列为日期列,B列为文本列,其中一些值等于“x”,一些值为空 我需要根据下面的公式创建一个输出列 IF ( AND ( ColumnA < EOMONTH ( ColumnA, 3 ), ( ColumnB = "x" ) ), EOMONTH ( ColumnA, 3 ), "-" ) IF( 和(ColumnA

下表有两列

其中A列为日期列,B列为文本列,其中一些值等于“x”,一些值为空

我需要根据下面的公式创建一个输出列

IF (
    AND ( ColumnA < EOMONTH ( ColumnA, 3 ), ( ColumnB = "x" ) ),
    EOMONTH ( ColumnA, 3 ),
    "-"
)
IF(
和(ColumnA
我为其编写了以下DAX公式:

Output =
IF (
    AND (
        ColumnA
            < EOMONTH ( DATE ( YEAR ( ColumnA ), MONTH ( ColumnA ), DAY ( ColumnA ) ), 3 ),
         ( ColumnB = "x" )
    ),
    EOMONTH ( ColumnA, 3 ),
    "-"
)
输出=
如果(
及(
圆柱
我发现这个公式有一个错误,在这个上下文中不允许NULL

注:我们可以在“x”处留空


如何编写正确的DAX公式以实现上述目标?

计算中的问题是,在同一列中混合了不同的数据类型

输出
列正在处理带有
文本
数据类型的
日期
数据类型,这就是出现错误的原因。这些列只能处理日期或文本,但不能同时处理两者


要修正您的计算,您需要将
ELSE
语句从
“-”
更改为
BLANK()

难道
ColumnA
不总是小于
EOMONTH(ColumnA,3)
?您能提供一个输出表的示例吗?你能用文字解释一下
输出列的目标是什么吗?@AlexisOlson不,ColumnA并不总是小于EOMONTH(ColumnA,3),因为ColumnA中也有一些空白值,在条件下会为false。示例表中不存在空白日期列。@AngeloCanepa实际上,ColumnB值也是用公式计算的。有一个列ID有多行。如果当前ID不等于下一行ID值,则ColumnB等于x,否则为空。然后,我们检查如果ColumnA值小于EOMonth(ColumnA,3),ColumnB等于“x”,那么输出等于EOMonth(ColumnA,3)。我建议做一个ISBLANK检查,如果空白是条件所在。