Forum Discussion
Replace Month Values from Numbers to Names
- 1 year ago
Hi
- Data Model: You have a SalesData table (month, year, sales) and a MonthNames table mapping month (1) to names (January). Ensure a one-to-many relationship between MonthNames[month] and SalesData[month].
- Segmenter: Use MonthNames[MonthName] in the segmenter to show names like "January".
- Fix salesselectedpreviousmonth: If the measure returns 0 or blank, it’s likely due to filter context issues. Check the DAX, e.g.:
salesselectedpreviousmonth =
CALCULATE(
[salesselected],
PREVIOUSMONTH('SalesData'[DateColumn]) -- Requires a date column
)
If no date column exists, calculate manually:
salesselectedpreviousmonth =
VAR CurrentMonth = SELECTEDVALUE('MonthNames'[month])
VAR CurrentYear = SELECTEDVALUE('SalesData'[year])
VAR PrevMonth = IF(CurrentMonth = 1, 12, CurrentMonth - 1)
VAR PrevYear = IF(CurrentMonth = 1, CurrentYear - 1, CurrentYear)
RETURN
CALCULATE(
[salesselected],
'SalesData'[month] = PrevMonth,
'SalesData'[year] = PrevYear
)
- Use a Calendar Table: For better results, create a calendar table with Date, MonthNumber, MonthName, and Year. Relate it to SalesData using a calculated date (e.g., DATE(SalesData[year], SalesData[month], 1)). Then use:
salesselectedpreviousmonth =
CALCULATE(
[salesselected],
PREVIOUSMONTH('Calendar'[Date])
)
Test: Verify that selecting "January" in the segmenter shows correct values for all measures, including salesselectedpreviousmonth.
Thank you for being part of the Microsoft Fabric Community.
As highlighted by danextian , the proposed approach appears to effectively address your requirements. Could you please confirm if your issue has been resolved?
If you are still facing any challenges, kindly provide further details, and we will be happy to assist you.
Best Regards,
Community Support Team _ C Srikanth.