Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
lasmithfla
Helper I
Helper I

Días hábiles basados en campos dinámicos

Estoy luchando con esto. Tengo una segmentación de datos que estoy usando como fechas dinámicas para el período de inicio y el período final.

Tengo una tabla de calendario que puedo contar los días hábiles, soy capaz de contar el autobús. días usando los períodos de inicio y fin, PERO cuando alguien es contratado dentro de ese período de tiempo, sus días de autobús serán menores. Así, por ejemplo, cualquier persona contratada antes de mi período de inicio tendría un recuento de días hábiles de 245. Este cálculo debe basarse en la diferencia de la fecha de contratación y el período final.

Ejemplo - mis fechas de inicio y finalización son 3/1/19 a 2/28/20 (245 días de autobús, sacando vacaciones también)

Emp ID Fecha de contratación Sin días

1 2/1/18 245

2 2/1/20 20

3 5/15/97 245

La persona con el 20 días - Empleado No 2 es lo que no puedo averiguar.

Mi campo en la tabla es la fecha de contratación, y hay miles de personas por lo que las fechas no son únicas en la tabla.

Esta es mi calc para los días de trabajo para todos los contratados antes de mi fecha de inicio. El calc. a continuación funciona para el intervalo de fechas dinámico que se seleccionaría (en este caso 3/1/19 a 2/28/20).

CountWorkdays - VAR FirstDay ? CALCULATE(Min('Calendar Table'[Date]),ALLSELECTED('Calendar Table'[Date]))
VAR LASTDAY á CALCULATE(MAX('Calendar Table'[Date]),ALLSELECTED('Calendar Table'[Date]))
RETURN CALCULATE(SUM('Calendar Table'[IsWorkingDay]),DATESBETWEEN('Calendar Table'[Date],FirstDay,LASTDAY))
Necesito otra calca para las personas contratadas dentro del período de tiempo.
Relativamente nuevo en powerbi, así que todo esto es nuevo para mí.
1 ACCEPTED SOLUTION
v-alq-msft
Community Support
Community Support

Hola, @lasmithfla

Según su descripción, creé datos para reproducir su escenario. Mis días hábiles sólo excluyen los fines de semana.

Mesa:

f1.png

Calendario:

Calendar = CALENDARAUTO()

Puede crear una columna calculada y una medida como se muestra a continuación.

Columna calculada:
IsWorkingDay á IF(WEEKDAY('Calendar'[Fecha]) en 1,2,3,4,5,1,0)

Medida:
CountWorkdays ?
var _hiredate á SELECTEDVALUE('Table'[Fecha de contratación])
var firstday ?
CALCULAR(
MIN('Calendario'[Fecha]),
ALLSELECTED('Calendario')
)
var lastday ?
CALCULAR(
MAX('Calendario'[Fecha]),
ALLSELECTED('Calendario')
)
var _re1 á
CALCULAR(
SUM('Calendar'[IsWorkingDay]),
FECHASENTRE(
'Calendario'[Fecha],
en el primer día,
último día
)
)
devolución
IF(
_hiredate<primer día,
_re1,
IF(
_hiredate>-firstday&&
_hiredate<-último día,
CALCULAR(
SUM('Calendar'[IsWorkingDay]),
FECHASENTRE(
'Calendario'[Fecha],
_hiredate,
último día
)
)
)
)

Resultado:

f3.png

Saludos

Allan

Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

3 REPLIES 3
v-alq-msft
Community Support
Community Support

Hola, @lasmithfla

Según su descripción, creé datos para reproducir su escenario. Mis días hábiles sólo excluyen los fines de semana.

Mesa:

f1.png

Calendario:

Calendar = CALENDARAUTO()

Puede crear una columna calculada y una medida como se muestra a continuación.

Columna calculada:
IsWorkingDay á IF(WEEKDAY('Calendar'[Fecha]) en 1,2,3,4,5,1,0)

Medida:
CountWorkdays ?
var _hiredate á SELECTEDVALUE('Table'[Fecha de contratación])
var firstday ?
CALCULAR(
MIN('Calendario'[Fecha]),
ALLSELECTED('Calendario')
)
var lastday ?
CALCULAR(
MAX('Calendario'[Fecha]),
ALLSELECTED('Calendario')
)
var _re1 á
CALCULAR(
SUM('Calendar'[IsWorkingDay]),
FECHASENTRE(
'Calendario'[Fecha],
en el primer día,
último día
)
)
devolución
IF(
_hiredate<primer día,
_re1,
IF(
_hiredate>-firstday&&
_hiredate<-último día,
CALCULAR(
SUM('Calendar'[IsWorkingDay]),
FECHASENTRE(
'Calendario'[Fecha],
_hiredate,
último día
)
)
)
)

Resultado:

f3.png

Saludos

Allan

Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

¡Muchas gracias, trabajado perfecto! Hemos detectado un problema desconocido. Gracias por su tiempo.

amitchandak
Super User
Super User

@lasmithfla , Consulte mi blog de recursos humanos y el archivo diff de fecha. Compruebe la fórmula del día laborable

Comprobar - https://community.powerbi.com/t5/Community-Blog/HR-Analytics-Active-Employee-Hire-and-Termination-tr...

Archivo de día laborable -https://www.dropbox.com/s/y47ah38sr157l7t/Order_delivery_date_diff.pbix?dl=0

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors