Forum Discussion

Nspiler's avatar
Nspiler
Frequent Visitor
1 year ago
Solved

Expression error

I am using the following to establish a new conditional column in Power Query:

= Table.AddColumn(#"Filtered Rows3", "LC19", each
if[FY18]= #date(2017, 7, 1) and [FY19] = #date(2018, 7, 1) then "Retained"
else
if[FY19]= #date(2018, 7, 1) and [First Gift Date]>= #date(2018, 7, 1) then "New"
else
if[FY18]= #date(null) and [FY19]= #date(2018, 7, 1) and [First Gift Date]<= #date(2017, 6,30) then "Reactived"
else "N/A")

And I keep receiving the folowing Expression.Error: 1 arguments were passed to a function which expects 3.
Details:
Pattern=
Arguments=[List]

 

All the referenced columns are formatted as type Date - what am I missing?

  • To explain further, your error message is because:

    #date(year, month, day) requires three arguments.

    #date(null) has only one argument

     

    Of course, #date(null,null,null) would also be invalid as the arguments for #date(...) need to be of type number and each within a certain range of numbers, and null cannot be converted to a number. 

     

    As others have pointed out, you can just use if [FY18]=null ...

4 Replies

  • To explain further, your error message is because:

    #date(year, month, day) requires three arguments.

    #date(null) has only one argument

     

    Of course, #date(null,null,null) would also be invalid as the arguments for #date(...) need to be of type number and each within a certain range of numbers, and null cannot be converted to a number. 

     

    As others have pointed out, you can just use if [FY18]=null ...

  • v-prasare's avatar
    v-prasare
    Community Support

    Nspiler, Thanks for reaching out ot MS fabric community support.

     

    ronrsnfldOmid_Motamediserohit1991Fowmy  Thanks for your promt response. Nspiler Can you please confirm whether solution provided by our super worked for you? please let us know if you need further assistance.

     

    Your feedback is important to us, Looking forward to your response. 

     

     

    Thanks,

    Prashanth Are
    MS fabric community support

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and give Kudos if helped you resolve your query

  • Fowmy's avatar
    Fowmy
    Super User

    Nspiler 

    in the following line, you have used #date(null) which is not acceptable, try this way


    if [FY18]= null and [FY19]= #date(2018, 7, 1) and [First Gift Date]<= #date(2017, 6,30) then "Reactived"


    You may try [FY18]= "" also