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
Syndicate_Admin
Administrator
Administrator

Diferencia de fecha entre dos columnas y filas

Hola

Estoy tratando de crear una fórmula que muestre la diferencia entre la fecha de finalización y la fecha de inicio. Esto muestra cuánto tiempo tomó comenzar un proceso después de terminar uno. En el caso de ID 1, terminaron el proceso y luego comenzaron otro, tardó 23 días en comenzar el siguiente proceso.

IDENTIFICACIÓNFecha de inicioFecha finalResultado esperado
105/05/202123/05/20210
115/06/2021 23
225/03/2021 0
302/07/202106/07/20210
317/07/202120/07/202111
329/07/2021 9
409/09/2021 0
525/09/202127/09/20210
515/10/202120/10/202118

El resultado esperado es lo que hice manualmente, quiero crear esa columna dentro de Power BI

Publiqué la tabla porque voy a cargarla en OneDrive, etc.

Gracias

Micrófono

1 ACCEPTED SOLUTION

@michael_knight , Pruebe una nueva columna como

Column = var _max1 = maxx(FILTER('Table',[ID] =EARLIER([ID]) && [Start Date] <EARLIER('Table'[Start Date])),[Start Date]) 
var _max  = maxx(FILTER('Table',[ID] =EARLIER([ID]) && [Start Date] =_max1),[End Date] ) 

return if(ISBLANK(_max), BLANK(), DATEDIFF(_max,[Start Date],DAY))

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Hola

¿Alguien sabe cómo puedo solucionar el problema anterior?

Gracias

@michael_knight , Pruebe una nueva columna como

Column = var _max1 = maxx(FILTER('Table',[ID] =EARLIER([ID]) && [Start Date] <EARLIER('Table'[Start Date])),[Start Date]) 
var _max  = maxx(FILTER('Table',[ID] =EARLIER([ID]) && [Start Date] =_max1),[End Date] ) 

return if(ISBLANK(_max), BLANK(), DATEDIFF(_max,[Start Date],DAY))
Syndicate_Admin
Administrator
Administrator

@michael_knight , una nueva columna

nueva columna =

var _max = maxx(filter(Table, [ID] =earlier([ID]) && [Fecha de inicio] < anterior([Fecha de inicio]) ) , [Fecha de finalización])

devolución

if( Isblank(_max), blank(), datediff(_max, [Fecha de inicio], día))

Hay @amitchandak

Gracias por la respuesta. Eso es brillante, pero una cosa que olvidé mencionar, si hay dos procesos en curso, debe desplazar a la versión anterior. Por ejemplo, para id #3

IDENTIFICACIÓNFecha de inicioFecha finalResultado esperado
105/05/202123/05/20210
115/06/2021 23
225/03/2021 0
302/07/202106/07/20210
317/07/202120/07/202111
329/07/2021 9
305/08/2021
409/09/2021 0
525/09/202127/09/20210
515/10/202120/10/202118

Hay dos procesos en curso, solo debe mostrar la diferencia de fecha para la versión más temprana con la última versión en blanco

@michael_knight , Pruebe una nueva columna como

Column = var _max1 = maxx(FILTER('Table',[ID] =EARLIER([ID]) && [Start Date] <EARLIER('Table'[Start Date])),[Start Date]) 
var _max  = maxx(FILTER('Table',[ID] =EARLIER([ID]) && [Start Date] =_max1),[End Date] ) 

return if(ISBLANK(_max), BLANK(), DATEDIFF(_max,[Start Date],DAY))

Brillante, gracias @amitchandak

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.