Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Syndicate_Admin
Administrator
Administrator

¿Se pueden usar períodos de comparación condicional en una tabla de matriz?

Hola, tengo una medida que calcula la productividad de los empleados y veo esta información por semana en una tabla matricial,
Necesito crear un condicional que verifique la productividad de las últimas dos semanas y devuelva un texto, por ejemplo,
Si la productividad está por debajo de las últimas dos semanas = "baja productividad", si hace dos semanas estaba por debajo del objetivo y la última semana estaba por encima
el objetivo "en recuperación",
Si hace dos semanas estaba por encima del objetivo y la última semana estaba por debajo del objetivo "atención".
Podemos hacer esto en Power BI usando la tabla de matrices, como se muestra a continuación.

andrelopes2711_0-1720199904105.png

Gracias por la ayuda.

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Hola

No estoy seguro de haber entendido correctamente su pregunta, pero intenté crear un archivo pbix de muestra como se muestra a continuación.

Verifique la imagen a continuación y el archivo pbix adjunto.

Intenté crear una visualización de matriz y, en mi ejemplo, la columna total de la visualización de matriz se considera una columna de estado reciente.

No conozco su objetivo, y en mi muestra, establezco el taget = 2.0

Jihwan_Kim_1-1720411864901.png

Jihwan_Kim_0-1720411828555.png

Función INDEX (DAX) - DAX | Microsoft Learn

Productivity and status: = 
VAR _target = 2.0
VAR _productivity =
    SUM ( data[productivity] )
VAR _lastperiod =
    INDEX ( 1, ALL ( period[period] ), ORDERBY ( period[period], DESC ) )
VAR _secondlastperiod =
    INDEX ( 2, ALL ( period[period] ), ORDERBY ( period[period], DESC ) )
RETURN
    IF (
        HASONEVALUE ( period[period] ),
        _productivity,
        SWITCH (
            TRUE (),
            CALCULATE ( SUM ( data[productivity] ), _secondlastperiod ) < _target
                && CALCULATE ( SUM ( data[productivity] ), _lastperiod ) < _target, "Low Productivity",
            CALCULATE ( SUM ( data[productivity] ), _secondlastperiod ) < _target
                && CALCULATE ( SUM ( data[productivity] ), _lastperiod ) >= _target, "In recovery",
            CALCULATE ( SUM ( data[productivity] ), _secondlastperiod ) >= _target
                && CALCULATE ( SUM ( data[productivity] ), _lastperiod ) < _target, "Attention"
        )
    )

Productivity and status color condition: =
VAR _target = 2.0
VAR _productivity =
    SUM ( data[productivity] )
VAR _lastperiod =
    INDEX ( 1, ALL ( period[period] ), ORDERBY ( period[period], DESC ) )
VAR _secondlastperiod =
    INDEX ( 2, ALL ( period[period] ), ORDERBY ( period[period], DESC ) )
RETURN
    SWITCH (
        TRUE (),
        HASONEVALUE ( period[period] )
            && (
                MAX ( period[period] )
                    IN _secondlastperiod
                        || MAX ( period[period] ) IN _lastperiod
            ),
            SWITCH (
                TRUE (),
                _productivity < _target, "red",
                _productivity >= _target, "light green"
            ),
        HASONEVALUE ( period[period] ), "white",
        SWITCH (
            TRUE (),
            CALCULATE ( SUM ( data[productivity] ), _secondlastperiod ) < _target
                && CALCULATE ( SUM ( data[productivity] ), _lastperiod ) < _target, "red",
            CALCULATE ( SUM ( data[productivity] ), _secondlastperiod ) < _target
                && CALCULATE ( SUM ( data[productivity] ), _lastperiod ) >= _target, "light green",
            CALCULATE ( SUM ( data[productivity] ), _secondlastperiod ) >= _target
                && CALCULATE ( SUM ( data[productivity] ), _lastperiod ) < _target, "yellow"
        )
    )

Hola Jihwan_Kim, soy nuevo en el área y no sabía que podía cambiar la columna Total, utilicé su exemplo y ocurrieron algunos prolems, por ejemplo, se muestra todas las semanas incluso cuando no tiene productividad y por alguna razón no devuelve el otro Staus, adjunto mi pbix simple

Hola

No estoy seguro de haber entendido su pregunta correctamente, pero verifique la imagen a continuación y el archivo pbix adjunto.

Jihwan_Kim_0-1720666844237.png

Jiwan_Kim, su ayuda fue genial, pero una nueva duda, pudimos saber cuántos agentes están en "baja productividad" o "Atención" utilizando medida, para contar cada estado y por agente necesitaríamos crear una tabla resumida por agente, semana y hacer esta comparativa de las últimas dos semanas?

Syndicate_Admin
Administrator
Administrator

Hola @andrelopes2711 , recuerde adherirse al decoro del Foro de la Comunidad al hacer una pregunta.

Proporcione el archivo de Power BI Desktop de trabajo en curso (con información confidencial eliminada) que cubra su problema o pregunta completamente en un formato utilizable (no como una captura de pantalla).

https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-...

Muestre el resultado esperado en función de los datos de muestra que proporcionó.

https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447...

Esto permite a los miembros del foro evaluar el estado del modelo, la capa de informe, las relaciones y cualquier DAX aplicado.

Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

Find out what's new and trending in the Fabric community.

July PBI25 Carousel

Power BI Monthly Update - July 2025

Check out the July 2025 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors