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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Dos columnas calculadas con RELATEDTABLE dan como resultado una dependencia circular

Necesito encontrar a todas las personas que tienen un cierto valor en otra tabla, pero no en otro valor.

Por ejemplo, una persona que tiene una licencia válida y también una cancelación de esa licencia y se almacenan en una tabla de acciones de licencia.

Intenté crear estas dos columnas calculadas:

Recall = 
VAR _SEL = SELECTCOLUMNS ( RELATEDTABLE('LicenseStatus'), "ID", [Status] )
RETURN
IF ( "RECALL" IN _SEL, "YES", "NO" )

License = 
VAR _SEL = SELECTCOLUMNS ( RELATEDTABLE('LicenseStatus'), "ID", [Status] )
RETURN
IF ( "LICENSE" IN _SEL, "YES", "NO" )

Para poder hacer esta pregunta:

HaveCancelledLicense =
IF ( License = "YES" and Cancelled = "YES", "YES", "NO" )

pero obtengo "Error de dependencia circular" cuando creo la segunda columna calculada. ¿Por qué? ¿No se referencian entre sí?

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

@hebe

¿Podría proporcionar algunos datos de muestra y resultados esperados?

Creé un archivo de muestra para mostrar el problema:

https://1drv.ms/u/c/9f00986c82fa1657/ES1QHM3WKKFMuq8kc5DWiwUB4BOZIRGqEfLSWLAOfobaBA?e=psTQYg

Las Columnas Calcluidas: "Emitido" y "Cancelado" están comentadas ya que crean una Referencia Circular si no están comentadas. ¿Por qué no se me permite tener más de una columna de cálculo con RELATEDTABLE en la misma tabla?

(Sí, sé que esta no es la solución óptima, pero así es como se ve la base de datos de origen y soy consciente de que hay otras (mejores) formas de resolver esto, pero quiero saber por qué esta solución no funciona 🙂 )

Hola @hebe ,

Puede probar el siguiente DAX para agregar columnas calculadas.

Issued = 
VAR _SEL= CALCULATE (
        COUNTROWS ( 'Status' ),
        ALLEXCEPT(Person,Person[Id]),
        'Status'[Status] = "Issued"
    )
RETURN IF ( _SEL > 0, "Yes", "No" )

Cancelled = 
VAR _SEL= CALCULATE (
        COUNTROWS ( 'Status' ),
        ALLEXCEPT(Person,Person[Id]),
        'Status'[Status] = "Cancelled"
    )
RETURN IF ( _SEL > 0, "Yes", "No" )

vdengllimsft_0-1727069664812.png


Consulte el pbix adjunto como referencia.

Saludos

Dengliang Li

Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Gracias por su respuesta uzuntasgokberk. No creo que la respuesta en el post al que te refieres sea relevante en este caso. Tienen dos medidas que obviamente dependen del resultado de la otra y, por lo tanto, crean una dependencia circular. En mi caso, no hay dependencia entre las columnas calculadas, por lo que no entiendo por qué recibo el mensaje de error de referencia circular.

Todo esto es DAX. Cometí un error cuando escribí el código para "HaveCancelledLicense", por lo que tiene razón en que debería ser "&&" y no "y".

El problema parece ser que uso "RELATEDTABLE" en la misma tabla en dos columnas calculadas separadas. No entiendo por qué eso no estaría permitido. (Si ese es el problema). Son dos columnas completamente separadas y no veo por qué se afectarían mutuamente, pero cada una de ellas funciona por sí misma, pero no juntas.

Syndicate_Admin
Administrator
Administrator

Hola @hebe,

El problema del error de dependencia circular se compartió antes en la comunidad. Puede agregar una columna en PowerQuery.

https://community.fabric.microsoft.com/t5/Desktop/Circular-dependency/m-p/2978637#M1017963

Saludos
Gokberk Uzuntas

LinkedIn: https://www.linkedin.com/in/g%C3%B6kberk-uzunta%C5%9F-b43906198/

Medio: https://medium.com/@uzuntasgokberk

Si esta publicación ayuda, considere Acéptalo como solución y felicitaciones para ayudar a los otros miembros a encontrarlo más rápidamente.

Helpful resources

Announcements
Sept PBI Carousel

Power BI Monthly Update - September 2024

Check out the September 2024 Power BI update to learn about new features.

September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

Sept NL Carousel

Fabric Community Update - September 2024

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

Top Solution Authors