The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Hola a todos
Estoy trabajando en una base de datos en Power BI que consta de una sola tabla que contiene varios campos, incluidas varias fechas que aquí:
Me gustaría calcular el número de días laborables entre Date_création y Date_en-courses y también entre Date_création y Date_transmis, excluyendo los días festivos.
En cuanto al número de días laborables sin preocupaciones, usé el método Duration.Days en mi nueva columna personalizada. Por otro lado, no puedo excluir las vacaciones de mi tiempo devuelto.
Busqué una solución en muchos foros sin éxito. El único que pude encontrar es un archivo .csv del gobierno que enumera todas las vacaciones entre 1950 y 2050. Así que creé una tabla de vacaciones a partir de este archivo y creé relaciones entre las fechas de mis dos tablas.
Si tienes alguna idea, siéntase libre 😊
Hola @LucileP
Crear una tabla de vacaciones y una tabla de fechas
En la tabla de fechas, agregue columnas
isholiday = RELATED('holiday table'[holiday])
isweekend = IF(WEEKDAY([Date],2) in {6,7},1)
Crear columnas en "Tabla",
current-creat =
VAR noworkdays =
CALCULATE (
COUNT ( 'date'[Date] ),
FILTER (
'date',
'Table'[creation date] <= 'date'[Date]
&& 'Table'[current date] >= 'date'[Date]
&& ( 'date'[isholiday] = 1
|| 'date'[isweekend] = 1 )
)
)
RETURN
DATEDIFF (
[creation date],
[current date],
DAY
) - noworkdays
tran-create =
VAR noworkdays =
CALCULATE (
COUNT ( 'date'[Date] ),
FILTER (
'date',
'Table'[creation date] <= 'date'[Date]
&& 'Table'[transform date] >= 'date'[Date]
&& ( 'date'[isholiday] = 1
|| 'date'[isweekend] = 1 )
)
)
RETURN
DATEDIFF (
[creation date],
[transform date],
DAY
) - noworkdays
Saludos
Maggie
Equipo de Apoyo Comunitario _ Maggie Li
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Tu trabajo me ha ayudado mucho. Sin embargo, cuando el feriado y el fin de semana coinciden, el resultado ya no es correcto.
Así que modifiqué tu código:
current-creat =
VAR noworkdays =
CALCULATE (
COUNT ( 'date'[Date] ),
FILTER (
'date',
'Table'[creation date] <= 'date'[Date]
&& 'Table'[current date] >= 'date'[Date]
&& ( 'date'[isholiday] = 1
|| 'date'[isweekend] = 1 )
)
)
VAR isholiday_and_isweekend =
CALCULATE (
COUNT ( 'date'[Date] ),
FILTER (
'date',
'Table'[creation date] <= 'date'[Date]
&& 'Table'[current date] >= 'date'[Date]
&& ( 'date'[isholiday] = 1
&& 'date'[isweekend] = 1 )
)
)
RETURN
DATEDIFF (
[creation date],
[current date],
DAY
) - noworkdays + isholiday_and_isweekend
By carefully checking my results, I confirm that this code works well.
Excelente!! Me fue útil para hallar la diferencia entre dos fechas considerando días hábiles y feriados!
Es simplemente increíble !!!!
¡¡¡Maravilloso!!! ¡Muchas gracias!
Que tengas un buen día