无法部署SSAS项目。原因:“生日”的语法不正确

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

我创建了以下Dax表达式来计算年龄

Age :=
VAR Birthdate = DIM_CUSTOMER[DATEOFBIRTH]
VAR ThisDay =TODAY ()
VAR IntBirthdate =
    YEAR ( Birthdate ) * 10000
        + MONTH ( Birthdate ) * 100
        + DAY ( Birthdate )
VAR IntThisDay =
    YEAR ( ThisDay ) * 10000
        + MONTH ( ThisDay ) * 100
        + DAY ( ThisDay )
VAR Age =
    QUOTIENT ( IntThisDay - IntBirthdate; 10000 )
VAR CheckedAge =
    DIVIDE ( Age; NOT ISBLANK ( Birthdate ) )
RETURN
    CheckedAge

The result of Age DAX expression in SSAS

似乎效果很好但是,当我尝试部署项目时,出现以下错误

“不可能的继承人。理由:在语法上倒入”生日“错误。La Colonnecalculée'DIM_CUSTOMER [Age]'内容和语法均不正确。验证有效期。“

the ERROR screenshot

ssas dax msbi
1个回答
0
投票
这是一个非常奇怪的年龄计算。我不明白您为什么要用CheckedAge除以​​日期。

为什么不这样?

Age := DATEDIFF ( DIM_CUSTOMER[DATEOFBIRTH], TODAY (), YEAR )

Age := DIVIDE ( DATEDIFF ( DIM_CUSTOMER[DATEOFBIRTH], TODAY (), DAY ), 365.25 )

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