Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola
Tengo 2 tablas "Empleados" y "Leave" teniendo relaciones muchas a muchas basadas en EmpID
Empleado |
EmpID |
Fecha |
Estado |
Salir |
EmpID |
Fecha de inicio |
Fecha de finalización |
Tengo que crear la columna que verificará si la identificación del empleado no está en la tabla De licencia o si el empleado está presente en la tabla de licencia, entonces la fecha de la tabla De empleado no debe estar entre la tabla Fecha de inicio y Fecha de finalización de la licencia para ese empleado
Solved! Go to Solution.
@Surya9 ,
¿Es que desea crear una columna en la tabla de empleados?
En caso afirmativo, pruebe este código para crear una columna:
CHECK =
VAR _if_in_enddate =
CALCULATE(
MAX( 'Leave'[EndDate] ),
FILTER( 'Leave', [EmpID] = EARLIER( Employee[EmpID] ) )
)
VAR _if_in_startdate =
CALCULATE(
MIN( 'Leave'[StartDate ] ),
FILTER( 'Leave', [EmpID] = EARLIER( Employee[EmpID] ) )
)
VAR _if_between =
IF(
AND( [Date] > _if_in_startdate, [Date] < _if_in_enddate ),
"Between Startdate and Enddate",
"Not Between"
)
RETURN
IF( ISBLANK( _if_in_enddate ), "Not in Leave", _if_between )
Resultado:
Si lo entendí mal, comparta algunos datos sin datos confidenciales y espere un resultado.
Pbix al final puedes referirte.
Saludos
Equipo de apoyo a la comunidad _ chenwu zhu
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
@Surya9 ,
¿Es que desea crear una columna en la tabla de empleados?
En caso afirmativo, pruebe este código para crear una columna:
CHECK =
VAR _if_in_enddate =
CALCULATE(
MAX( 'Leave'[EndDate] ),
FILTER( 'Leave', [EmpID] = EARLIER( Employee[EmpID] ) )
)
VAR _if_in_startdate =
CALCULATE(
MIN( 'Leave'[StartDate ] ),
FILTER( 'Leave', [EmpID] = EARLIER( Employee[EmpID] ) )
)
VAR _if_between =
IF(
AND( [Date] > _if_in_startdate, [Date] < _if_in_enddate ),
"Between Startdate and Enddate",
"Not Between"
)
RETURN
IF( ISBLANK( _if_in_enddate ), "Not in Leave", _if_between )
Resultado:
Si lo entendí mal, comparta algunos datos sin datos confidenciales y espere un resultado.
Pbix al final puedes referirte.
Saludos
Equipo de apoyo a la comunidad _ chenwu zhu
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
@Surya9 puedes usar una medida como esta. Traiga Axis de Employee y elimine esta medida.
Measure2 =
CALCULATE (
MAX ( Leave[EmpID] ),
VAR _base =
NATURALINNERJOIN (
SELECTCOLUMNS (
Leave,
"emp", Leave[EmpID] & "",
"_start", Leave[StartDate],
"_end", Leave[EndDate]
),
SELECTCOLUMNS ( Employee, "emp", Employee[EmpID] & "", "dt", Employee[Date] )
)
VAR _left =
SUMMARIZE ( _base, [emp], [_start], [_end] )
VAR _right =
SUMMARIZE (
FILTER ( _base, [_start] <= [dt] && [dt] <= [_end] ),
[emp],
[_start],
[_end]
)
RETURN
EXCEPT ( _left, _right )
)
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |