cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Highlighted
Frequent Visitor

Buscar la duración del inicio de sesión y el cierre de sesión en la misma columna

Hola
Tengo problemas para encontrar la duración de inicio de sesión y cierre de sesión para el mismo ID de usuario.

sin embargo, encuentro una solución en

Calcular el tiempo entre el check-in y el check-out desde diferentes filas

y me da este resultado

Capture.PNGCapture2.PNG2

mediante el uso de este DAX

Col1 ?
CALCULAR (
MIN ( 'Empleado-evento'[índice] ),
FILTRO (
ALLEXCEPT ( 'Employee-event', 'Employee-event'[UserID] ),
'Empleado-evento'[índice] > ANTERIOR ( 'Empleado-evento'[índice] )
&& 'Empleado-evento'[Evento] - "OUT"
)
)

TIEMPO DE SALIDA ?
LOOKUPVALUE (
'Empleado-evento'[Tiempo],
'Employee-event'[Index], 'Employee-event'[Col1]
)


Duración en Mín.
SI (
'Empleado-evento'[Evento] á "IN",
DATEDIFF ( 'Empleado-evento'[Tiempo], 'Empleado-evento'[TIME OUT], MINUTE ),
BLANK ()
)

es muy bueno, pero no pude aplicar a enormes datos (más de millones de filas) que se quedas sin memoria


De todos modos, hay que hacerlo en el Editor de consultas u otra solución

1 ACCEPTED SOLUTION

Accepted Solutions
Super User III
Super User III

No estoy seguro de por qué tiene el paso LOOKUPVALUE. Por favor, pruebe esta expresión en su lugar:

Duration =
VAR __thislogin = 'Employee-event'[Time]
VAR __nextlogout =
    CALCULATE (
        MIN ( 'Employee-event'[Time] ),
        ALLEXCEPT ( 'Employee-event', 'Employee-event'[UserID] ),
        'Employee-event'[Team] > __thislogin,
        'Employee-event'[Event] = "OUT"
    )
RETURN
    IF (
        'Employee-event'[Event] = "IN",
        DATEDIFF ( __thislogin, __nextlogout, MINUTE ),
        BLANK ()
    )

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Please mark my post as a solution! Kudos are also appreciated!

Proud to be a Super User!




View solution in original post

2 REPLIES 2
Super User III
Super User III

No estoy seguro de por qué tiene el paso LOOKUPVALUE. Por favor, pruebe esta expresión en su lugar:

Duration =
VAR __thislogin = 'Employee-event'[Time]
VAR __nextlogout =
    CALCULATE (
        MIN ( 'Employee-event'[Time] ),
        ALLEXCEPT ( 'Employee-event', 'Employee-event'[UserID] ),
        'Employee-event'[Team] > __thislogin,
        'Employee-event'[Event] = "OUT"
    )
RETURN
    IF (
        'Employee-event'[Event] = "IN",
        DATEDIFF ( __thislogin, __nextlogout, MINUTE ),
        BLANK ()
    )

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Please mark my post as a solution! Kudos are also appreciated!

Proud to be a Super User!




View solution in original post

Highlighted

Desafortunadamente, esto no funcionó. Estos son los resultados

Capture3.PNG

Algunos registros son correctos, mientras que otros están equivocados

Helpful resources

Announcements
Community Conference

Power Platform Community Conference

Check out the on demand sessions that are available now!

Community Conference

Microsoft Power Platform Communities

Check out the Winners!

secondImage

Power Platform 2020 release wave 2 plan

Features releasing from October 2020 through March 2021

Top Solution Authors