Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount.
Register nowThe Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.
Hola a todos
Hice una búsqueda en mensajes anteriores pero no pude encontrar mi caso de usuario:
en nuestra organización marcamos los días laborables del mes como WD1, WD2, WD3, etc. Por ejemplo, si el 1 de marzo es de lunes a viernes, será WD1 y así sucesivamente. Por ejemplo, si observamos el mes actual de octubre:
En todos nuestros conjuntos de datos PBI tenemos una tabla de calendario y me gustaría agregar una columna personalizada que contenga el número WD como en la tabla anterior. En una etapa posterior, es posible que también desee considerar las vacaciones... ¿Alguna conjetura sobre cómo hacerlo?
Hola @Ahmedx , he modificado su función de columna con mis nombres de tabla y columna:
¿Alguna pista de por qué?
Gracias @Ahmedx, pero ¿dónde debo ingresar el código a continuación?
Working day number2 = VAR _WeekDayNumber = WEEKDAY([Date],2) VAR _Year_Month_Nomber = 'Calendar'[Year Month Number] VAR _DayNumber = 'Calendar'[Date]-EOMONTH([Date],-1) VAR _tbl_Filter1 = FILTER('Calendar','Calendar'[Year Month Number]=_Year_Month_Nomber) VAR _tbl_Filter2 = FILTER('Calendar','Calendar'[Day name] in {"Sunday","Saturday"}) VAR Countweekend = CALCULATE(COUNTROWS(),_tbl_Filter1,_tbl_Filter2, DATESBETWEEN('Calendar'[Date],_DayNumber,'Calendar'[Date])) RETURN IF ( NOT 'Calendar'[Day name] in {"Sunday","Saturday"}, _DayNumber - Countweekend )
Crear un calendario
Calendar =
VAR BaseCalendar =
CALENDAR ( DATE ( 2023, 10, 1 ), DATE (2024, 12, 31 ))
RETURN
GENERATE (
BaseCalendar,
VAR BaseDate = [Date]
VAR YearDate = YEAR ( BaseDate )
VAR MonthNumber = MONTH ( BaseDate )
VAR YearMonthNumber = YearDate * 12 + MonthNumber - 1
RETURN ROW (
"Year", YearDate,
"Month Number", MonthNumber,
"Month", FORMAT ( BaseDate, "mmmm"),
"Year Month Number", YearMonthNumber,
"Year Month", FORMAT ( BaseDate, "mmm yy"),
"Day name", FORMAT ( BaseDate, "dddd")
))
Crear una nueva columna
Working day number2 =
VAR _WeekDayNumber = WEEKDAY([Date],2)
VAR _Year_Month_Nomber = 'Calendar'[Year Month Number]
VAR _DayNumber = 'Calendar'[Date]-EOMONTH([Date],-1)
VAR _tbl_Filter1 = FILTER('Calendar','Calendar'[Year Month Number]=_Year_Month_Nomber)
VAR _tbl_Filter2 = FILTER('Calendar','Calendar'[Day name] in {"Sunday","Saturday"})
VAR Countweekend = CALCULATE(COUNTROWS(),_tbl_Filter1,_tbl_Filter2, DATESBETWEEN('Calendar'[Date],_DayNumber,'Calendar'[Date]))
RETURN
IF ( NOT 'Calendar'[Day name] in {"Sunday","Saturday"},
_DayNumber - Countweekend
)
Su solución se ve perfecta. Desafortunadamente, solo puedo ver el resultado y no cómo lo hiciste, ya que tu .pbix está hecho con una versión más reciente de PBI Desktop. ¿Alguna posibilidad de cortar y pegar aquí la función DAX o el código M?
Basándome en su descripción, creé datos para reproducir su escenario. Al final, se adjunta el archivo pbix.