Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Icon for Administrator rankAdministrator
2 years ago

Fórmula DAX

Necesita ayuda con una fórmula DAX. Tengo un conjunto de resultados que tiene las cuatro columnas como se muestra en la imagen. El número de registros es mucho mayor y hay varias fechas y estados. Necesito crear una columna calculada que muestre la última fecha de vencimiento para cada combinación de fecha de vencimiento y estado y necesito filtrar por dónde el estado es igual a 'Abierto' o 'Pendiente'. Por lo tanto, para el pequeño conjunto de resultados de muestra a continuación, la combinación de fecha de vencimiento y estado es 2023-03-31 || 'Abierto', y la última fecha de vencimiento es 2023-11-01. Necesito poder crear una variable que almacene el valor de 2023-11-01 para esta combinación. Creo que puedo crear una tabla que haga esto, pero creo que se puede escribir una fórmula DAX para derivar esto. Lo intenté, pero devolvió la fecha máxima para todos los registros del conjunto de resultados, independientemente de la combinación de fecha y estado

11 Replies

  • No lo tiene claro.

    ¿Cuál es el resultado esperado en función de los datos de ejemplo que proporcionó?

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Icon for Administrator rankAdministrator

      @ryan_mayu... la intención es crear un campo que pueda usar en un objeto visual para mostrar la última fecha de vencimiento para cada combinación de fecha y estado. Por lo tanto, con el pequeño subconjunto de la captura de pantalla, quiero crear un objeto visual que muestre tres columnas, la fecha, el estado y la [última] fecha de vencimiento, pero solo una fila. Por lo tanto, el objeto visual debe mostrar una fila como esta:

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Icon for Administrator rankAdministrator

        @ldwf @

        Puede probar esto para crear una columna

        Última fecha de vencimiento = CALCULAR(máximo('Mesa'[fecha de vencimiento]),TODOSEXCEPTO('Mesa','Mesa'[Fecha],'Mesa'[estado]))
        O bien, puede crear una medida
        Medir = maxx(FILTRO(todo('Mesa'),'Mesa'[Fecha]=máximo('Mesa'[Fecha])&&'Mesa'[estado]=máximo('Mesa'[estado])),'Mesa'[fecha de vencimiento])
  • Hola

    Escribe esta fórmula de columna calculada

    Última fecha de vencimiento = calculate(max(Data[Fecha de vencimiento]),filter(Data,Data[Date]=before(Data[Date])&&Data[Status]=before(Data[status])))

    Espero que esto ayude.

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Icon for Administrator rankAdministrator

      Gracias, pero esta solución me da la fecha más reciente de todos los registros de todo el conjunto de resultados, no para cada combinación de fecha y estado que aparece en el objeto visual

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Icon for Administrator rankAdministrator

      Reformulé la pregunta. La fórmula DAX también necesita un filtro

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Icon for Administrator rankAdministrator

        Hola

        Pruebe esto

        Última fecha de vencimiento = calculate(max(Date[Two date]),filter(Data,Date[Date]=before(Date[Date])&&Data[Status]=before(Data[status])&&Data[Volume]>0))