【问题标题】:Unable to deploy SSAS project. reason : The syntax of 'Birthdate' is incorrect无法部署 SSAS 项目。原因:“生日”的语法不正确
【发布时间】:2020-06-09 13:24:28
【问题描述】:

我创建了以下 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

它似乎完美地工作 但是,当我尝试部署项目时,出现以下错误

“不可能的 de déployer les métadonnées。理由:La syntaxe pour 'Birthdate'est wronge。 La Colonne calculée 'DIM_CUSTOMER[Age]' contient une erreur de syntaxe。 Entrez une formule valide。”

【问题讨论】:

    标签: powerbi ssas dax msbi


    【解决方案1】:

    这是一个非常奇怪的年龄计算。我不明白你为什么要除以CheckedAge 的日期。

    为什么不这样呢?

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

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

    【讨论】:

    • 嗨@Alexis,首先我要感谢您的回复。当我尝试您的方法时,我设法部署了项目,但现在问题出在 power bi 中,我无法使用 Age 列,因为我收到以下错误消息:查询“DIM_CUSTOMER”[Age] 引用的计算列其中不包含数据,因为其表达式中出现错误。
    猜你喜欢
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    • 2014-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多