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

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.

Reply
jbyrond
Frequent Visitor

Calcular el tiempo después de un valor de corte fijo

Hola a todos, estoy tratando de conseguir PowerBI para calcular la cantidad de tiempo (en minutos) después de una hora y fecha. Mi objetivo es tener varios tiempos de corte (1100, 1300, 1330, 1500, 1530) que puedo seleccionar en una segmentación de datos, luego de los datos de abajo, PowerBI me diría cuántos minutos ocurrieron después de ese tiempo.

Por lo tanto, si selecciono Individual 1, Sala 1 (de una cortadora), luego 1100 (de una segmentación), según la información siguiente, powerbi devolvería un valor de "140", ya que el individuo finalmente terminó a las 13:20. Si selecciono 1300, devolvería "20", y si selecciono 1500, no devolvería nada.

El objetivo es calcular la cantidad de tiempo que una persona pasó en una habitación más allá de su tiempo límite asignado en un día y una habitación determinados.

¡Gracias!

NombreUbicaciónFuera de habitación (hora)En habitación (fecha y hora)Fuera de la habitación (fecha y hora)
Individual 1Habitación 111:20:007/1/2020 7:057/1/2020 11:20
Individual 1Habitación 111:20:007/1/2020 11:307/1/2020 13:20
2 ACCEPTED SOLUTIONS
ryan_mayu
Super User
Super User

@jbyrond

se puede probar esto

Measure = 
VAR time1=timevalue(max('Table'[Out of Room (Date and Hour)]))
VAR time2=TIMEVALUE(SELECTEDVALUE(Table2[Slicer]))
return if(time2>time1,BLANK(),hour(time1-time2)*60+MINUTE(time1-time2))

1.PNG

a continuación está el archivo adjunto para sus referencias.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




View solution in original post

@jbyrond

por favor, vea el archivo adjunto a continuación

View solution in original post

11 REPLIES 11
ryan_mayu
Super User
Super User

@jbyrond

se puede probar esto

Measure = 
VAR time1=timevalue(max('Table'[Out of Room (Date and Hour)]))
VAR time2=TIMEVALUE(SELECTEDVALUE(Table2[Slicer]))
return if(time2>time1,BLANK(),hour(time1-time2)*60+MINUTE(time1-time2))

1.PNG

a continuación está el archivo adjunto para sus referencias.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




¡Hola Ryan! Esto ha funcionado muy bien y realmente ha ayudado a mi flujo de trabajo. Pero me he encontrado con una excepción que no puedo arreglar sin arruinar todas las otras respuestas correctas, jaja. La excepción se produce cuando un visitante entra en una habitación después del tiempo de corte seleccionado:

Preguntas:

1 )¿Cuánto tiempo se utilizó la habitación después de las 3 pm?

Respuesta deseada: 60 minutos

Actualmente, la fórmula devuelve de 16:30 a 12:00.

NombreUbicaciónFuera de la habitación (Hora)En habitación (fecha y hora)Fuera de la habitación (fecha y hora)
Individuo 1Habitación 112:00:007/1/2020 07:007/1/2020 12:00
Individuo 1Habitación 116:307/1/2020 15:307/1/2020 16:30

¿Alguna idea? ¡Gracias!

@jbyrond

¿Sigues siendo el mismo dato de muestra? ¿Podría explicar más sobre la lógica? Si seleccionamos la hora de la segmentación de datos que es después de las 15:00, ¿entonces mostrar 60 minutos?

Hola Ryan, cambié los datos de la tabla del ejemplo original para mostrar la excepción: ocasiones en las que la persona entra en la habitación después de la hora límite.

Estoy tratando de determinar exactamente cuánto se ocupó una habitación después de un tiempo de corte seleccionado.

Tiene razón, en este ejemplo, si elegimos 3pm como una hora límite, la respuesta debe ser 60, porque la persona entró en la habitación a las 3:30 pm y salió a las 4:30pm.

Como actualmente tenemos la fórmula escrita, calculó el tiempo desde la persona anterior que sale (1200pm) hasta la nueva hora de finalización (430pm), aunque la habitación no está ocupada hasta que la siguiente persona entra a las 3:30 pm. Sólo debe considerarse ocupado una vez que alguien entra.

Espero estar claro. ¡Gracias por su ayuda!

NombreUbicaciónFuera de la habitación (Hora)En habitación (fecha y hora)Fuera de la habitación (fecha y hora)
Individuo 1Habitación 112:00:007/1/2020 07:007/1/2020 12:00
Individuo 1Habitación 116:307/1/2020 15:307/1/2020 16:30

@jbyrond

por favor, vea el archivo adjunto a continuación

¡Hola! No estoy seguro de si mi versión funciona correctamente, pero por cada vez que selecciono en la segmentación de datos, devuelve 60 minutos. A las 6 de la mañana, devuelve 300 minutos. ¿Es así de tu parte?

Si el objetivo es devolver cuánto tiempo se ocupó la habitación después de una cortadora/tiempo determinado:

Dados los datos actuales, debe devolver lo siguiente dadas estas selecciones de segmentación de datos:

Para 6:00:00 AM: 360 minutos (7am-12pm + 330-430pm)

Para las 7:00:00 AM: 360 minutos (7am-12pm + 330-430pm)

Para las 8:00:00 AM: 300 minutos (8am-12pm + 330-430pm) * lo que significa que la habitación fue ocupada durante 300 minutos después de la hora límite de 8am *

Para las 9:00:00 AM: 240 minutos (9am-12pm + 330-430pm)

Para las 10:00:00 AM: 180 minutos (10am-12pm +330-430pm)

Para las 11:00:00 AM: 120 minutos (11am-12pm +330-430pm)

Para las 12:00:00 PM: 60 minutos (330-430pm)

Para la 1:00:00 PM: 60 minutos (330-430pm)

Para las 2:00:00 PM: 60 minutos (330-430pm)

Para las 3:00:00 PM: 60 minutos (330-430pm)

Sólo nos interesaría la cantidad de tiempo que una habitación fue ocupada por el individuo 1 después del tiempo de segmentación seleccionado.

@jbyrond

por favor, vea el archivo adjunto a continuación

Gracias gracias gracias! ¡Esto funcionó increíblemente!

De nada

Vaya, eso funcionó muy bien. Así que creé una nueva tabla con los tiempos de corte en una columna, creé una segmentación a partir de eso, luego una tabla con la fecha, individual, habitación y "tiempo de corte", y funcionó muy bien. ¡Gracias!

@jbyrond

¡De nada!





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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