Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more.
Get startedGrow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.
Hola, chicos
Necesito comparar dos fechas (Fecha de recepción y Fecha de procesamiento), lo que necesito verificar es si la fecha de procesamiento es igual o el día siguiente de la fecha de recepción. Por ejemplo, si la fecha de recepción es el 22 de junio de 2021, la fecha de procesamiento debe ser el 22 de junio de 2021 o el 23 de junio de 2021. Si no que su considerado un fracaso.
Otro tema que tengo que tendré que considerar días festivos y fines de semana cuando compare estas dos fechas. ¿Ustedes han tenido alguna experiencia comparando fechas como el ejemplo anterior?
Gracias de antemano,
Eduardo
Solved! Go to Solution.
No @Ikezaki
¿Todas las fechas de recepción y las fechas procesadas ocurren en fechas laborables? Si es así, ¿desea comprobar si una fecha procesada es igual o la siguiente fecha de trabajo de la fecha de recepción? Para lograr este objetivo, debe tener una columna en la tabla Fecha para marcar si una fecha es una fecha de trabajo. A continuación, puede agregar una columna de índice de fecha de trabajo basada en eso.
Por ejemplo, en mi ejemplo a continuación, mis fechas de trabajo son todos días de la semana sin fines de semana (ignorando otros días festivos). El número 1 representa que es un día laborable. En función de esto, agrego una columna WorkingDayIndex para contar las fechas de trabajo acumuladas en la tabla Date. Esto se utilizará para calcular el siguiente día hábil más tarde.
Luego creo debajo de la medida para verificar las fechas.
Measure =
VAR _receivingDateIndex = SELECTEDVALUE('DimDate'[WorkingDayIndex])
VAR _receivingDate = SELECTEDVALUE('Table'[Receiving date])
VAR _nextWorkingDate = MAXX(FILTER(ALL(DimDate),DimDate[WorkingDayIndex]=_receivingDateIndex+1),DimDate[Date])
VAR _processedDate = SELECTEDVALUE('Table'[Processed Date])
RETURN
IF(_processedDate=_receivingDate||_processedDate=_nextWorkingDate,"True","False")
Tenga en cuenta que mi muestra se crea sobre la base de la suposición de que todas las fechas de recepción y las fechas procesadas deben ocurrir en días laborables. Si sus fechas de recepción y procesamiento podrían ocurrir en fechas no laborables, tenemos que hacer algunas modificaciones. Y debe crear la columna [Es el día laborable] en función de sus fines de semana y días festivos. Adjunto el pbix para su referencia.
saludos
Equipo de soporte de la comunidad _ Jing
Si esta publicación ayuda, por favor acéptala como la solución para ayudar a otros miembros a encontrarla.
No @Ikezaki
¿Todas las fechas de recepción y las fechas procesadas ocurren en fechas laborables? Si es así, ¿desea comprobar si una fecha procesada es igual o la siguiente fecha de trabajo de la fecha de recepción? Para lograr este objetivo, debe tener una columna en la tabla Fecha para marcar si una fecha es una fecha de trabajo. A continuación, puede agregar una columna de índice de fecha de trabajo basada en eso.
Por ejemplo, en mi ejemplo a continuación, mis fechas de trabajo son todos días de la semana sin fines de semana (ignorando otros días festivos). El número 1 representa que es un día laborable. En función de esto, agrego una columna WorkingDayIndex para contar las fechas de trabajo acumuladas en la tabla Date. Esto se utilizará para calcular el siguiente día hábil más tarde.
Luego creo debajo de la medida para verificar las fechas.
Measure =
VAR _receivingDateIndex = SELECTEDVALUE('DimDate'[WorkingDayIndex])
VAR _receivingDate = SELECTEDVALUE('Table'[Receiving date])
VAR _nextWorkingDate = MAXX(FILTER(ALL(DimDate),DimDate[WorkingDayIndex]=_receivingDateIndex+1),DimDate[Date])
VAR _processedDate = SELECTEDVALUE('Table'[Processed Date])
RETURN
IF(_processedDate=_receivingDate||_processedDate=_nextWorkingDate,"True","False")
Tenga en cuenta que mi muestra se crea sobre la base de la suposición de que todas las fechas de recepción y las fechas procesadas deben ocurrir en días laborables. Si sus fechas de recepción y procesamiento podrían ocurrir en fechas no laborables, tenemos que hacer algunas modificaciones. Y debe crear la columna [Es el día laborable] en función de sus fines de semana y días festivos. Adjunto el pbix para su referencia.
saludos
Equipo de soporte de la comunidad _ Jing
Si esta publicación ayuda, por favor acéptala como la solución para ayudar a otros miembros a encontrarla.
Gracias por la rápida solución para el problema, he intentado replicar exactamente los mismos pasos que me mostró, la única diferencia entre su modelo y el modelo en el que estoy trabajando es que la fecha de procesamiento está en una tabla diferente, la relación entre la tabla recibida y la tabla procesada es de 1 a muchos a uno a medida que procesamos el stock por lotes. La relación entre la tabla de fechas y la tabla recibida es la misma que la que compartió.
Consulte el ejemplo de otro problema que se produjo con la medida que sugirió.
La primera fecha es la fecha de recepción y la segunda fecha es la fecha de procesamiento, cuando agrego la medida para verificar si el siguiente día hábil es VERDADERO o FALSO, la tabla pierde la pista de las fechas, consulte a continuación:
La comprobación del día siguiente es exactamente la misma que la publicada anteriormente.
Next Day Check =
VAR _receivingDateIndex = SELECTEDVALUE('Date Dimension'[WorkingDayIndex])
VAR _receivingDate = SELECTEDVALUE(Final_Merger[First Date])
VAR _nextWorkingDate = MAXX(FILTER(ALL('Date Dimension'),'Date Dimension'[WorkingDayIndex]=_receivingDateIndex+1),'Date Dimension'[Date])
VAR _processedDate = SELECTEDVALUE('Export Worksheet'[Second Date])
RETURN
IF(_processedDate=_receivingDate||_processedDate=_nextWorkingDate,"True","False")
¿Sabrías lo que podría estar mal en mi modelo?
Gracias de antemano una vez más
No @Ikezaki
¿En qué columnas se basa la relación entre la tabla recibida y la tabla procesada en el modelo actual? Veo una relación de varios a varios entre Receipt_ID_Test y PRE-ADVICE-ID en el archivo pbix que compartió.
Jing
Hola Jingzhang,
Sí, eso es correcto, la combinación entre estas tablas es con id de recibo e id de consejo previo, sin embargo, todavía estamos limpiando los datos y la relación podría cambiar a uno a muchos (un identificador de consejo previo a muchos id de recibo).
Gracias
Hola @Ikezaki
Si pudiera proporcionar un archivo .pbix de ejemplo que debería ayudar a proporcionar un trabajo rápido en la solución.
saludos
Kumail Raza
Hay @Kumail,
¿Cómo puedo adjuntar el pbix aquí? Lo he intentado y he recibido un mensaje de error.
Gracias
@Ikezaki puedes insertar el enlace desde tu google drive, onedrive o dropbox.
Espero que esto ayude.
saludos
Kumail Raza
@Kumail Gracias Kumail, por favor vea el enlace a continuación. En este caso estoy tratando de comparar la primera fecha con la segunda fecha.
Hola @Ikezaki
Hay una relación de varios a muchos entre las tablas con la primera y la segunda fecha y, por lo tanto, no podemos obtener un solo valor para 1 fecha con la otra tabla correspondiente.
Puede limpiar la fecha para tener relaciones de 1 a muchos o de muchos a 1 entre las 2 tablas o combinar los 2 datos con filas relacionadas y devolverlos.
Espero que esto ayude y pueda volver una vez que tenga una consulta adicional.
saludos
Kumail Raza
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Ask questions in Eventhouse and KQL, Eventstream, and Reflex.