Don't miss your chance to take the Fabric Data Engineer (DP-600) exam for FREE! Find out how by attending the DP-600 session on April 23rd (pacific time), live or on-demand.
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Hi everyone,
Really new to Power BI and Dax, so thanks in advance!
I'm trying to get 2 digit month using Dax and Direct Query. Ultimately, I am trying to order data visuals correctly, using YYYYMM as my date. I've got the year part figured out and in a column already using YEAR function, which I could concatenate with my new Month columnm, but as lots of people know Dax MONTH function only retrurns single digit Month, e.g. 4 vs 04. In order to correctly order my time data, I would need YYYYMM.
I've looked long and hard and almost every solution out there involves Dax functions that are not supported in Direct Query mode. I've tried FORMAT, IF statements, countless others.
My source column has 'date' data with Date, Month, Year, and Time values in it. The column is already formatted as that in Power BI
Thanks!
Solved! Go to Solution.
YEAR and MONTH take Date as an argument, with your syntax it's just the number of days starting from 1899-12-31, where 2019 gives year 1905 and 4 gives 1 (January 1900)
You can use either
DateofServiceYearMonth = RequestSummary[DateofServiceYear]*100 + RequestSummary[DateofServiceMonth]
or
DateofServiceYearMonth = YEAR(RequestSummary[DateofService])*100 + MONTH(RequestSummary[DateofService])
Personally I would use the first one
you can use the function Number.ToText as below
Number.ToText([MonthNumber],"D2")
worked, amazing
how about something like this:
YearMonth = YEAR(Calendar[Date])*100 + MONTH(Calendar[Date])
it will give you YYYYMM as numeric value, but I don't think it should be an issue
Here is a link to a screen shot.
https://www.dropbox.com/s/6o9gjfgmn18i2sh/2020-04-24_16-21-22.png?dl=0
My original column is DateofService which I broke out into DateofServce Year and separately Month. Finally your column is DateofServiceYearMonth.
DateofServiceYearMonth = YEAR(RequestSummary[DateofServiceYear])*100 + MONTH(RequestSummary[DateofServiceMonth])
I am getting random numbers it appears ?
YEAR and MONTH take Date as an argument, with your syntax it's just the number of days starting from 1899-12-31, where 2019 gives year 1905 and 4 gives 1 (January 1900)
You can use either
DateofServiceYearMonth = RequestSummary[DateofServiceYear]*100 + RequestSummary[DateofServiceMonth]
or
DateofServiceYearMonth = YEAR(RequestSummary[DateofService])*100 + MONTH(RequestSummary[DateofService])
Personally I would use the first one
Stachu,
Thank you so very, very much. I can't tell you how many hours I spent trying different iterations of other options. This is elegant and perfect for what I need.
Cheers!
glad to help 🙂
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
| User | Count |
|---|---|
| 6 | |
| 6 | |
| 3 | |
| 2 | |
| 2 |
| User | Count |
|---|---|
| 21 | |
| 11 | |
| 9 | |
| 5 | |
| 5 |