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

Uso de múltiples variables en la misma medida

Hola a todos

He pasado por algunas publicaciones relacionadas en este Foro y SQL BI y escribí la siguiente expresión DAX usando varias variables para la medida:

Test_Measure =
Var Res_2 = FILTER('M1 Notifications', ('M1 Notifications'[Creado en] < (TODAY()-1825) && 'M1 Notifications'[Creado en] > (TODAY()-365))
Var Res_1 = FILTER(Res_2, ('M1 Notifications'[Notification System Status] = "Notificaciones pendientes" || 'Notificaciones M1'[Estado del sistema de notificación] = "Pedido asignado" || 'Notificaciones M1'[Estado del sistema de notificación] = "Notificación en curso"))
devolución
IF(COUNTROWS(Res_1) <> BLANK(),COUNTROWS(Res_1),UNICHAR((32))
)
Utilicé dos variables para filtrar la misma tabla sucesivamente para diferentes criterios. Esto es básicamente un filtro AND.
Tengo un error de sintaxis para Var Res_1. No estoy seguro de cómo podemos usar ambas variables en lugar de escribir una expresión de filtro larga que combina todas las condiciones. Para Var Res_1, ¿puedo usar la tabla filtrada Res_2? Intenté usar el nombre de la tabla en su lugar, pero sigue siendo el mismo error.
Apreciaré si los expertos explican cómo se pueden aplicar los filtros sucesivos con Variables.
Gracias de antemano
Krishna
2 ACCEPTED SOLUTIONS
Syndicate_Admin
Administrator
Administrator

@kkanda

A su medida le faltaba un paréntesis de cierre en el primer Var.

Test Measure =
VAR Res_2 =
    FILTER (
        'M1 Notifications',
         (
            'M1 Notifications'[Created on]
                < ( TODAY () - 1825 )
                && 'M1 Notifications'[Created on]
                    > ( TODAY () - 365 )
        )
    )
VAR Res_1 =
    FILTER (
        Res_2,
         ( 'M1 Notifications'[Notification System Status] = "Outstanding notification"
            || 'M1 Notifications'[Notification System Status] = "Order assigned"
            || 'M1 Notifications'[Notification System Status] = "Notification in process" )
    )
RETURN
    IF ( COUNTROWS ( Res_1 ) <> BLANK (), COUNTROWS ( Res_1 ), UNICHAR ( ( 32 ) ) )

View solution in original post

Gracias por la corrección.

View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

@kkanda

A su medida le faltaba un paréntesis de cierre en el primer Var.

Test Measure =
VAR Res_2 =
    FILTER (
        'M1 Notifications',
         (
            'M1 Notifications'[Created on]
                < ( TODAY () - 1825 )
                && 'M1 Notifications'[Created on]
                    > ( TODAY () - 365 )
        )
    )
VAR Res_1 =
    FILTER (
        Res_2,
         ( 'M1 Notifications'[Notification System Status] = "Outstanding notification"
            || 'M1 Notifications'[Notification System Status] = "Order assigned"
            || 'M1 Notifications'[Notification System Status] = "Notification in process" )
    )
RETURN
    IF ( COUNTROWS ( Res_1 ) <> BLANK (), COUNTROWS ( Res_1 ), UNICHAR ( ( 32 ) ) )

View solution in original post

Gracias por la corrección.

View solution in original post

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

April Update

Check it Out!

Click here to read more about the April 2021 Updates!

secondImage

The largest Power BI virtual conference

100+ sessions, 100+ speakers, Product managers, MVPs, and experts. All about Power BI. Attend online or watch the recordings.

secondImage

Experience what’s next for Power BI

See the latest Power BI innovations, updates, and demos from the Microsoft Business Applications Launch Event.