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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Ayuda con DateDiff

Probablemente una sencilla para la mayoría, pero ¿cómo escribo una medida para caluclar el movimiento en días de cada proyecto de construcción de un mes a otro? Entonces, por ejemplo, ¿el movimiento en la fecha de construcción para el proyecto A mostraría 30 días?

Sería más fácil para mí tener medidas separadas para los cambios en la fecha de inicio de la construcción y la fecha de puesta en marcha.

¿También hay alguna manera de hacer esta dinámica refiriéndose al período máximo de informe y uno menos que este en lugar de usar el 21 de septiembre y el 21 de agosto en la medida?

Gracias

ProyectoSalidaFecha de inicio de la construcciónFecha de puesta en marchaPeríodo
A5001/01/202301/06/2023Ago-21
B2501/04/202307/04/2023Ago-21
C5001/05/202301/07/2023Ago-21
A5001/02/202301/06/2023sep-21
B2501/04/202307/04/2023sep-21
C5001/05/202301/06/2023sep-21

10 REPLIES 10
Syndicate_Admin
Administrator
Administrator

No @GJUDGE,

la fecha de DQO no ha cambiado en los dos meses más recientes

La última fecha es 2025-Feb, por lo que si no existe COD= 2025-Ene y 2024-Dic, entonces dateiff debería ser 0 ?

Measure 2 = 
var _last=CALCULATE(MAX('Table'[Construction Start Date]),ALLEXCEPT('Table','Table'[Project]))
var _pre= MAXX(FILTER(ALL('Table'),'Table'[Project]=MAX('Table'[Project]) && [Construction Start Date]<_last),[Construction Start Date])
return IF(DATEDIFF(_pre,_last,MONTH)<=2,DATEDIFF( _pre,_last,DAY),0)

Eyelyn9_0-1635497772412.png

Saludos
Eyelyn Qin
Si este post Ayuda, a continuación, por favor considere Acéptalo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

@Eyelyn9 Sí, la fecha de DQO no ha cambiado, pero incluso si este es el caso, necesito que la medida solo compare las fechas de DQO de los últimos dos meses. Incluso si esto es cero. Por ejemplo, en el proyecto B en los datos de prueba que proporcioné, todavía debería ver un retorno de cero. Básicamente, lo que quiero hacer es COD Date (Filltered reporting period for the latest month) minus COD Date (filtrado para el período de informe del mes pasado menos 1 mes).

Syndicate_Admin
Administrator
Administrator

No @GJUDGE,

He agregado una fila para simplemente reproducir datos como dijiste que tus datos reales contienen muchos mesesde datos.

Mi primera medida devuelve el diff de fecha para cada cambio.

Eyelyn9_0-1635494252220.png

A continuación se devolverá la diferencia entre las dos últimas fechas:

Measure 2 = 
var _last=CALCULATE(MAX('Table'[Construction Start Date]),ALLEXCEPT('Table','Table'[Project]))
var _pre= MAXX(FILTER(ALL('Table'),'Table'[Project]=MAX('Table'[Project]) && [Construction Start Date]<_last),[Construction Start Date])
return DATEDIFF(_pre,_last,DAY)

Eyelyn9_1-1635494565300.png

Si todavía no es lo que esperas, por favor muéstrame lo que quieres.

Saludos
Eyelyn Qin
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

@Eyelyn9 Realmente aprecio su ayuda. Cuando pruebo su última medida en mis datos reales, sigo obteniendo el resultado incorrecto. A continuación se muestra el proyecto A. La fecha de COD es la misma que la fecha de inicio de la construcción. Cuando uso cualquiera de sus dos medidas, obtengo una diferencia de 153 días cuando esto debería ser cero (es decir, la fecha de DQO no ha cambiado en los dos meses más recientes). ¡Espero que tenga sentido!

GJUDGE_0-1635496568300.png

Syndicate_Admin
Administrator
Administrator

No @GJUDGE,

Por favor, pruebe:

Measure = 
var _pre=MAXX(FILTER(ALL('Table'),[Project]=MAX('Table'[Project]) && [Construction Start Date]<MAX('Table'[Construction Start Date])),[Construction Start Date])
return DATEDIFF(_pre,MAX('Table'[Construction Start Date]),DAY)

Eyelyn9_0-1635490601984.png


Saludos
Eyelyn Qin
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

@Eyelyn9 ¡Esto casi me lleva allí! La única otra complejidad es que mis datos reales contienen muchos datos de meses. Usando su medida, parece estar comparando las últimas y las primeras fechas en lugar de los últimos dos meses. ¿Hay alguna forma de modificar su medida?

Syndicate_Admin
Administrator
Administrator

por favor, explique cómo llega a la 120.

@lbendlin En agosto, se planeó que el proyecto A comenzara la construcción el 01/01/2023. En septiembre esta fecha se había deslizado al 01/05/2023. Es decir, se había movido hacia atrás 120 días.

Sus datos de muestra dicen que el proyecto A se deslizó a 2023-02-01.

@lbendlin Tienes toda la razón, ¡estaba leyendo mal mis propias filas! Entonces, ¿busca una medida para calcular la diferencia de 30 días, si puede ayudar?

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Power BI Monthly Update - May 2024

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

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.