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 a todos
Estoy tratando de encontrar la fórmula para calcular el número de empleados que iniciaron sesión durante cada hora del día y los datos se actualizarán con mucha frecuencia durante el día. Como puede ver en la captura de pantalla puede encontrar cuántos iniciaron sesión a las 9:00, pero luego para el resto del día muestra el valor 4.
En la tabla del lado derecho, la columna "Tipo" determina si la fila representa un inicio de sesión (I) o cerrar sesión (P)
En esta tabla, un empleado (01885) ha iniciado y salido para el día
¿Puede alguien ayudarme a arreglar mi fórmula para que no muestre valores para los intervalos de tiempo que aún no han sucedido?
CountofActiveEmployees =
VAR CurrentTime = MAX(Retail[DateTime])
RETURN
COUNTROWS(FILTER('REGISTRATIONS',
CurrentTime >= REGISTRATIONS[INDATETIME] && CurrentTime <= REGISTRATIONS[OUTDATETIME]))
Saludos
Eva
Solved! Go to Solution.
Hola @evalindag ,
Pruebe la siguiente medida:
CountOfActiveEmployess =
VAR temtable =
GROUPBY (
'REGISTRATIONS';
'REGISTRATIONS'[Division];
'REGISTRATIONS'[EMPLOYEENO];
'REGISTRATIONS'[INDATETIME];
"OUT"; MAXX ( CURRENTGROUP (); 'REGISTRATIONS'[OUTDATETIME] )
)
VAR exit_time =
FILTER ( temtable; [OUT] <> BLANK () )
VAR no_exit =
FILTER ( temtable; [OUT] = BLANK () )
VAR CurrentTime =
MAX ( Retail[DateTime] )
RETURN
COUNTROWS (
FILTER (
exit_time;
'REGISTRATIONS'[INDATETIME] <= CurrentTime
&& [OUT] >= CurrentTime
)
)
+ COUNTROWS ( FILTER ( no_exit; 'REGISTRATIONS'[INDATETIME] <= CurrentTime ) )
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHola @evalindag ,
Podemos crear una medida para satisfacer sus necesidades.
CountofActiveEmployees =
VAR CurrentTime = MAX(Retail[DateTimeGroup])
var _nexthourtime = CurrentTime + TIME(1,0,0)
var _min_date = CALCULATE(MIN(Retail[DateTimeGroup]),ALLSELECTED(Retail))
var _x =
CALCULATE(
DISTINCTCOUNT(REGISTRATIONS[EM]),
FILTER('REGISTRATIONS',
REGISTRATIONS[INDATETIME] >= _min_date && REGISTRATIONS[INDATETIME]<_nexthourtime))
var _y =
CALCULATE(
DISTINCTCOUNT(REGISTRATIONS[EM]),
FILTER('REGISTRATIONS',
NOT(ISBLANK(REGISTRATIONS[OUTDATETIME]))&&
REGISTRATIONS[OUTDATETIME] >= _min_date && REGISTRATIONS[OUTDATETIME]<_nexthourtime ))
return
_x-_y
Si no cumple con sus requisitos, ¿podría proporcionar una muestra de maqueta basada en datos falsos?
Será útil si puede mostrarnos el resultado esperado exacto basado en las tablas.
Cargue sus archivos en OneDrive para la Empresa y comparta el enlace aquí. Por favor, no contenga ninguna Información Confidencial o Datos Reales en su respuesta.
Saludos
Equipo de apoyo a la comunidad _ zhenbw
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
BTW, pbix como adjunto.
Hola @evalindag ,
Podemos crear una medida para satisfacer sus necesidades.
CountofActiveEmployees =
VAR CurrentTime = MAX(Retail[DateTimeGroup])
var _nexthourtime = CurrentTime + TIME(1,0,0)
var _min_date = CALCULATE(MIN(Retail[DateTimeGroup]),ALLSELECTED(Retail))
var _x =
CALCULATE(
DISTINCTCOUNT(REGISTRATIONS[EM]),
FILTER('REGISTRATIONS',
REGISTRATIONS[INDATETIME] >= _min_date && REGISTRATIONS[INDATETIME]<_nexthourtime))
var _y =
CALCULATE(
DISTINCTCOUNT(REGISTRATIONS[EM]),
FILTER('REGISTRATIONS',
NOT(ISBLANK(REGISTRATIONS[OUTDATETIME]))&&
REGISTRATIONS[OUTDATETIME] >= _min_date && REGISTRATIONS[OUTDATETIME]<_nexthourtime ))
return
_x-_y
Si no cumple con sus requisitos, ¿podría proporcionar una muestra de maqueta basada en datos falsos?
Será útil si puede mostrarnos el resultado esperado exacto basado en las tablas.
Cargue sus archivos en OneDrive para la Empresa y comparta el enlace aquí. Por favor, no contenga ninguna Información Confidencial o Datos Reales en su respuesta.
Saludos
Equipo de apoyo a la comunidad _ zhenbw
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
BTW, pbix como adjunto.
Hola @evalindag ,
Pruebe la siguiente medida:
CountOfActiveEmployess =
VAR temtable =
GROUPBY (
'REGISTRATIONS';
'REGISTRATIONS'[Division];
'REGISTRATIONS'[EMPLOYEENO];
'REGISTRATIONS'[INDATETIME];
"OUT"; MAXX ( CURRENTGROUP (); 'REGISTRATIONS'[OUTDATETIME] )
)
VAR exit_time =
FILTER ( temtable; [OUT] <> BLANK () )
VAR no_exit =
FILTER ( temtable; [OUT] = BLANK () )
VAR CurrentTime =
MAX ( Retail[DateTime] )
RETURN
COUNTROWS (
FILTER (
exit_time;
'REGISTRATIONS'[INDATETIME] <= CurrentTime
&& [OUT] >= CurrentTime
)
)
+ COUNTROWS ( FILTER ( no_exit; 'REGISTRATIONS'[INDATETIME] <= CurrentTime ) )
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsCovering 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 | |
2 | |
2 | |
2 | |
1 |