cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Seguimiento de órdenes invertidas a partir de datos de marca de tiempo

Hola chicos, tengo los siguientes datos. Básicamente, para cada id de pedido, el sistema registra las marcas de tiempo para cada una de las columnas de estado. La secuencia de estados de una orden es la siguiente:

Nuevo > Wvalid> > Wappr > Appr Válido

Si una orden tiene una marca de tiempo para la 'Fecha de estado appr', las marcas de tiempo de las columnas anteriores NO PUEDEN SER POSTERIORES A esta fecha. Si lo hacen, el orden se considera 'invertido'. Me gustaría hacer un seguimiento del número de órdenes 'invertidas'

identificacióndescripciónEstado Nueva fechaEstado Wvalid Fecha Estado Fecha válida Estado Wappr Fecha Estado Appr Fecha
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:23
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:14
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:132020-08-11 09:00:172020-08-18 15:36:22
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:132020-08-11 09:00:172020-08-18 15:36:22
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:13
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:132020-08-11 09:00:17
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:132020-08-11 09:00:172020-08-18 15:36:22
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:132020-08-11 09:00:172020-08-18 15:36:22
1252955100 No hay disuaso de escalada instalado cerca del área pública.2013-12-06 08:12:232013-12-06 08:13:142014-04-10 12:34:13
1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hay @digitalpresto ,

Pruebe la siguiente fórmula:

Measure = 
var t = MAX('Table'[Status Appr Date])
return 
    CALCULATE(
        DISTINCTCOUNT('Table'[ID]),
        FILTER(
            'Table',
            'Table'[Status Appr Date] <> BLANK()
            && (
                'Table'[Status New Date] > t 
                || 'Table'[Status Wvalid Date] > t 
                || 'Table'[Status Valid Date] > t
                || 'Table'[Status Wappr Date] > t
            )
        )
    )
Measure 2 = 
IF(
    ISFILTERED('Table'[ID]),
    [Measure],
    SUMX(
        ALLSELECTED('Table'[ID]),
        [Measure]
    )
)

image.png

Si el problema sigue sin resolverse, proporcione información detallada del error o el resultado esperado que espera. Hágamelo saber de inmediato, esperando su respuesta.

Saludos
Winniz

Si esta publicación ayuda, entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Hay @digitalpresto ,

Pruebe la siguiente fórmula:

Measure = 
var t = MAX('Table'[Status Appr Date])
return 
    CALCULATE(
        DISTINCTCOUNT('Table'[ID]),
        FILTER(
            'Table',
            'Table'[Status Appr Date] <> BLANK()
            && (
                'Table'[Status New Date] > t 
                || 'Table'[Status Wvalid Date] > t 
                || 'Table'[Status Valid Date] > t
                || 'Table'[Status Wappr Date] > t
            )
        )
    )
Measure 2 = 
IF(
    ISFILTERED('Table'[ID]),
    [Measure],
    SUMX(
        ALLSELECTED('Table'[ID]),
        [Measure]
    )
)

image.png

Si el problema sigue sin resolverse, proporcione información detallada del error o el resultado esperado que espera. Hágamelo saber de inmediato, esperando su respuesta.

Saludos
Winniz

Si esta publicación ayuda, entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

Gracias @v-kkf-msft , sí que marca las órdenes invertidas correctamente, comprar ya que la tabla puede tener muchas filas por orden, debemos ponerla en una tabla de resumen (utilizando la función RESUMIR), también ¿cómo obtenemos el estado de la orden más reciente / actual por orden?

Hay @digitalpresto ,

Pruebe la siguiente fórmula:

Status = 
var Tab = 
    FILTER(
        UNION(
            SELECTCOLUMNS('Table', "ID", [ID], "Date", [Status New Date], "Status", "New"),
            SELECTCOLUMNS('Table', "ID", [ID], "Date", [Status Wvalid Date], "Status", "Wvalid"),
            SELECTCOLUMNS('Table', "ID", [ID], "Date", [Status Valid Date], "Status", "Valid"),
            SELECTCOLUMNS('Table', "ID", [ID], "Date", [Status Wappr Date], "Status", "Wappr"),
            SELECTCOLUMNS('Table', "ID", [ID], "Date", [Status Appr Date], "Status", "Appr")
        ),
        [Date] <> BLANK()
    )
var M_Date = MAXX(Tab, [Date])
return 
    MAXX(
        FILTER(Tab, [Date] = M_Date),
        [Status]
    )

image.png

Saludos
Winniz

Helpful resources

Announcements
PBI User Groups

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group!

MBAS on Demand

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

July 2021 Update 768x460.png

Check it out!

Click here to read more about the July 2021 Updates

Top Solution Authors