Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
5 years ago

Filtrar IF...

¡Hola!

Tengo este código dax,

Necesito la mediación para sumar todo el SO Net ( [SO Net] es una meassure = Calculate(Sum(POS DB'[SO Net)) ) de todas las filas que dicen "Stock" ( 'POS DB'[Stock] ) pero si dice "No Stock" only Sum [SO Net] <= 25000

Así que sólo suma [SO Neto] < = 25000 si dice Stock, de lo contrario Suma incluso si [SO Neto] es > que 25000

La medida debe calcularse un nivel por año, trimestre, grupo de productos, país de usuario final y, finalmente, usuario final (es por eso que utilicé la función Resumir en el código siguiente.

¿Puedes ayudarme por favor??!!

Mensuro =
SUMX (
filtro (
resumir (
«POS DB»,
'POS DB'[Año],
'POS DB'[Trimestre],
'POS DB'[Grupo de productos],
'POS DB' [País del usuario final],
'POS DB'[Nombre de usuario final]
),
[SO Neto] <= 25000
),
[SO Net]
)

6 Replies

  • Hey @andresloji ,

    ¿cómo es la relación entre las tablas 'DB' y 'POS DB'?

    Si debemos filtrar si 'DB'[Stock] dice "Stock" o "No Stock" necesitamos saber cómo están conectadas estas tablas y también cómo se ven los datos.

    Hazlo fácil para nosotros y podemos ayudarte.

    Saludos

    Denis

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      ¡hola! Lo siento por mi error, acabo de editar el post... Es todo la misma base de datos. ¡arrepentido!

  • Hay @andresloji ,

    La cuestión es que no está agregando el valor en el resumen de la tabla, por lo que no está filtrando los valores que necesita, pruebe el código siguiente.

    Meassure =
    SUMX (
        FILTER (
            SUMMARIZE (
                'POS DB',
                'POS DB'[Year],
                'POS DB'[Quarter],
                'POS DB'[Product Group],
                'POS DB'[End User Country],
                'POS DB'[End User Name],
                "@SONET", [SO Net]
            ),
            [@SONET] <= 25000
        ),
        [@SONET]
    )
    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      Mfelix gracias por su tiempo y respuesta

      De hecho, [So Net] es una fisura

      ¿Cómo puedo filtrar IF?

      Necesito la miassure para sumar todo el SO Net ([SO Net]) de todas las filas que dicen "Stock" ( 'POS DB'[Stock] ) pero si dice "No Stock" sólo Sum [SO Net] <= 25000

      Así que sólo suma [SO Net] si dice Stock, de lo contrario Sum incluso si es > que 25000

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Administrator

        Hay @andresloji ,

        Dado que necesita hacer el filtrado addtionall en sus datos basados en una columna que no está en el resumen, ¿puede compartir algunos datos de ejemplo?