Función RELACIONADA con DAX con relación de muchos a muchos

Un usuario Pregunto ✅

Cado_one

Hola a todos,

Sé que ya hay muchos temas sobre este tema pero no entiendo las explicaciones dadas y las soluciones.

Tengo tablas con una relación de muchos a muchos entre las columnas de «proyecto de código», como puede ver en la siguiente captura de pantalla.

Cado_one_0-1620219809704.png

Entonces necesito comparar «date_insert_rpa» de la primera tabla con «DateMEX» de la segunda tabla, pero aquí vienen los problemas:

Relación MW =

CALCULAR(

SUM (rpa[nb_heure_rpa]) / (CUENTA DISTINTA (rpa[jours_date_rpa].[Year]) * [PuissanceMW]),

FILTRO (rpa, ‘rpa'[jours_date_rpa].[Year] > RELACIONADO (descriptionActifsInfos[DateMEX].[Year]))

)

Se devuelve este error: La columna ‘descriptionActifsInfos[DateMEX].[Year]’no existe o no tiene relación con ninguna tabla disponible en el contexto actual.

Creo que otros temas recomiendan usar RELATEDTABLE en lugar de la función RELATED, pero no entiendo cómo usarla.

Si alguien tiene la solución, estaría encantado de probarla.

Gracias por adelantado.

Saludos,

Cado

En respuesta a Cado_one

Hola @Cado_one,

Si necesita obtener valor de muchas tablas laterales, debe usar la función RELATEDTABLE. La función RELATEDTABLE debe usarse con la función de agregación en su situación:

RatioMW =
CALCULATE (
    SUM ( rpa[nb_heure_rpa] )
        / ( DISTINCTCOUNT ( rpa[jours_date_rpa].[Year] ) * [PuissanceMW] ),
    FILTER (
        rpa,
        'rpa'[jours_date_rpa].[Year]
            > YEAR (
                MAXX (
                    RELATEDTABLE ( descriptionActifsInfos ),
                    descriptionActifsInfos[DateMEX]
                )
            )
    )
)

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

Atentamente,

Dedmon Dai

Amitchandak

@Cado_one, prueba funciones de año

CALCULAR(

SUM (rpa[nb_heure_rpa]) / (DISTINCTCOUNT (año (rpa[jours_date_rpa])) * [PuissanceMW]),

FILTRO (rpa, ‘rpa'[jours_date_rpa].[Year] > RELACIONADO (descriptionActifsInfos[DateMEX].[Year]))

)

Cado_one

En respuesta a Amitchandak

Hola @amitchandak

La función YEAR no se puede usar dentro de DISTINCTCOUNT o funciones RELATED porque no devuelve una columna.

En respuesta a Cado_one

Hola @Cado_one,

Si necesita obtener valor de muchas tablas laterales, debe usar la función RELATEDTABLE. La función RELATEDTABLE debe usarse con la función de agregación en su situación:

RatioMW =
CALCULATE (
    SUM ( rpa[nb_heure_rpa] )
        / ( DISTINCTCOUNT ( rpa[jours_date_rpa].[Year] ) * [PuissanceMW] ),
    FILTER (
        rpa,
        'rpa'[jours_date_rpa].[Year]
            > YEAR (
                MAXX (
                    RELATEDTABLE ( descriptionActifsInfos ),
                    descriptionActifsInfos[DateMEX]
                )
            )
    )
)

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

Atentamente,

Dedmon Dai

Cado_one

En respuesta a v-deddai1-msft

@ v-deddai1-msft

Muchas gracias, esto funciona perfectamente!

Saludos,

Cado

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *