Forum Discussion
Error in creating Date value
Hello,
I get an error when I want to create a date value with the DATE(Year, Month, Day) function.
The function that gives error is this: DATE([MaxDateYear],[MaxDate],1)
where MaxDate:=month(max(VentasSeccion[Fecha])) that should be the Month number
and MaxDateYear:=YEAR(max(VentasSeccion[Fecha])) that should be the Year number
I guess that those 2 measures that result in Month and Year (which are correct) does not have the format as numbers (Integers) and the Date function does not recognize them.
Many thanks for the support!
Viorel
You cannot use measures in your filter like that. Use variables.
Hi viorelcazacu ,
Put the 2 variables in the formula,such as below:
SalesMTD CY = CALCULATE(SUM('Table'[Sales]),FILTER(ALL('Table'),'Table'[Fecha]>=DATE(YEAR(MAX('Table'[Fecha])),MONTH(MAX('Table'[Fecha])),1)&&'Table'[Fecha]<EOMONTH(MAX('Table'[Fecha]),0)))And you will see:
For the sample .pbix file,pls see attached.
Best Regards,
KellyDid I answer your question? Mark my post as a solution!
6 Replies
- lbendlinSuper User
You cannot use measures in your filter like that. Use variables.
- lbendlinSuper User
- viorelcazacuRegular Visitor
Hello,
Unfortunatedly it does not work. I tried to encapsulate the two measures in Value, nothing happens (the formula does not gives error, it just shows nothing (like there is no data)
MaxDate:=value(month(max(VentasSeccion[Fecha])))
MaxDateYear:=value(YEAR(max(VentasSeccion[Fecha])))
I even tried to put also value inside the target formula, with no result:
DATE([value(MaxDateYear]),value([MaxDate]),1)
The formula works only if I hard code the Year and Number:
SalesMTD CY:=CALCULATE(
[Total Sales],
FILTER(
ALL(DateCalendarTable[Calendar Date]),
AND(
DateCalendarTable[Calendar Date] >= DATE(2021,3,1),
DateCalendarTable[Calendar Date] <= [MaxDateSalesTbl]
)))Kind regards,
Viorel
- v-kelly-msftCommunity Support
Hi viorelcazacu ,
Put the 2 variables in the formula,such as below:
SalesMTD CY = CALCULATE(SUM('Table'[Sales]),FILTER(ALL('Table'),'Table'[Fecha]>=DATE(YEAR(MAX('Table'[Fecha])),MONTH(MAX('Table'[Fecha])),1)&&'Table'[Fecha]<EOMONTH(MAX('Table'[Fecha]),0)))And you will see:
For the sample .pbix file,pls see attached.
Best Regards,
KellyDid I answer your question? Mark my post as a solution!
- Syndicate_AdminAdministrator
An ez solution I found is to split the column by the separator "/", now u have dd mm yyyy, after that u add all of them into a new column with this "Text.PadStart(Text.From([Day]), 2, "0") & "/" & Text.PadStart(Text.From([Month]), 2, "0") & "/" & Text.From([Year])", with this u can change it into date.