El uso de relaciones inactivas no se puede ordenar debido a la dependencia circular

Un usuario Pregunto ✅

una gaviota

Hola y Feliz Año Nuevo. Tengo dos columnas (FW y AW) con el mismo tipo de datos (Status), que tiene su propio criterio de ordenación.

Así que tengo 1 relación activa y 1 inactiva con esa tabla de dimensiones con el criterio de ordenación.

Soy capaz de extraer el orden de la relacion inactiva utilizando este enfoque:

Orden de FW (Orden de FW)
CALCULATE(MINX(‘Tabla’,RELACIONADO(‘Pedido, Estado'[Order])),
RELACIÓNUSUARIO(‘Tabla'[FW],’Orden, Estado'[Status]),
TODO SALVO(‘Tabla’,’Tabla'[FW]))

que recopilé el hilo de abajo.
https://community.powerbi.com/t5/Desktop/using-inactive-relationship/mp/1195011

No entiendo por qué necesito la cláusula ALLEXCEPT. (Aunque la columna no tiene datos correctos sin ella.) Y cuando intente ordenar la columna FW por este nuevo campo de orden FW, obtendrá el error «Se ha detectado una dependencia circular».

Puedo resolver este problema creando una segunda tabla de orden de estado y solo tengo dos vínculos activos, uno a cada tabla. ¡Pero estoy tratando de evitar esa complejidad y obtener una mejor comprensión de DAX!

Aquí está mi archivo PBIX:

https://austincollege-my.sharepoint.com/:u:/g/personal/aseagull_austincollege_edu/EbAhlI39pmxKoPPtDK…

¿Alguna idea de por qué estoy recibiendo el error? ¿Alguna explicación de la necesidad de ALLEXCEPT? ¡Gracias!

Amón

En respuesta a una gaviota

No @aseagull,

En primer lugar, podría crear una tabla calculada.

Table 2 = 
ADDCOLUMNS(
    SUMMARIZE(
        'Table',
        'Table'[ID], 'Table'[AW], 'Table'[FW]
    ),
    "AW_Order",
    LOOKUPVALUE(
        'Order, Status'[Order],
        'Order, Status'[Status], 'Table'[AW]
    ),
    "FW_Order",
    LOOKUPVALUE(
        'Order, Status'[Order],
        'Order, Status'[Status], 'Table'[FW]
    )
)

A continuación, puede utilizar la función «Ordenar por columna».

v-lionel-msft_0-1610441183166.png

Saludos
Lionel Chen

Si este correo ayuda,entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

No @aseagull,

¿Qué tal si lo haces así?

v-lionel-msft_0-1609743618326.png

Saludos
Lionel Chen

Si este correo ayuda,entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

una gaviota

En respuesta a v-lionel-msft

Lionel, gracias por esta sugerencia. No ha visto LOOKUPVALUE.

Todavía golpeando el mismo error cuando intento establecer esta nueva columna como el «ordenar por» para FW. Captura de pantalla a continuación. ¿Pudiste establecerlo como la columna de ordenación?

Gracias

Amón

aseagull_0-1609774269750.png

En respuesta a una gaviota

No @aseagull,

En primer lugar, podría crear una tabla calculada.

Table 2 = 
ADDCOLUMNS(
    SUMMARIZE(
        'Table',
        'Table'[ID], 'Table'[AW], 'Table'[FW]
    ),
    "AW_Order",
    LOOKUPVALUE(
        'Order, Status'[Order],
        'Order, Status'[Status], 'Table'[AW]
    ),
    "FW_Order",
    LOOKUPVALUE(
        'Order, Status'[Order],
        'Order, Status'[Status], 'Table'[FW]
    )
)

A continuación, puede utilizar la función «Ordenar por columna».

v-lionel-msft_0-1610441183166.png

Saludos
Lionel Chen

Si este correo ayuda,entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

una gaviota

En respuesta a v-lionel-msft

¡Leonel, gracias! Te lo agradezco mucho. Así que la creación de la tabla calculada efectivamente «oculta» la circularidad, supongo? Veo que esto funciona incluso omitiendo el paso RESUMEN… Extraño. ¡Gracias de nuevo!

Solo puede ordenar una sola columna utilizando una sola columna de ordenación. La «solución» más fácil es cargar 2 conjuntos de columnas en la misma tabla si es necesario.

una gaviota

En respuesta a Matt Allington

Matt, gracias por la respuesta rápida! Quiero poder ordenar las columnas FW y AW en el mismo criterio de ordenación. Uno de ellos (AW) está enlazando a la tabla de clasificación a través de una relación activa, por lo que soy capaz de tirar en el campo vinculado en mi visualización. También quiero ordenar el campo FW en ese mismo criterio de ordenación. Podría tener más sentido una vez que pudiera mirar el archivo vinculado.

En cuanto a ALLEXCEPT, supongo que no entiendo por qué necesito algo así. Pensé que todo lo que tenías que hacer, usar una relación inactiva, era evaluar una expresión en el contexto de esa relación. ?

Deja un comentario

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