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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Medida dinámica de Dax

Hola equipo,

Tengo una tabla de hechos y una tabla de 2 dimensiones llamada tabla de meses. Los meses y los datos sin procesar NO están conectados entre sí

. Aquí estoy tratando de comparar el mes con el mes. En la siguiente instantánea, estoy tratando de comparar febrero con marzo para ver qué frutas han llegado recientemente en marzo en comparación con febrero.

Pude hacer esta lógica en la tabla calculada, sin embargo, quería que este cálculo fuera una medida dinámica. Porque quería una comparación dinámica de dos meses de datos.

A continuación se muestra la medida de Dax que he utilizado, que no me está dando el resultado correcto

Bandera =
FUERON Tabla1=
CALCULABLETABLE(
VALORES(Raw_Data[Frutas]),
FILTRO(Raw_Data,Raw_Data[Mes]=SELECTEDVALUE(Month_Table_1[Mes]))
)
FUERON Tabla 2=
CALCULABLETABLE(
VALORES(Raw_Data[Frutas]),
FILTRO(Raw_Data,Raw_Data[Mes]=SELECTEDVALUE(Month_Table_2[Mes]))
)
FUERON final=EXCEPTUAR(Tabla 2,Tabla1)
devolución
SI(MAXX(Raw_Data,[Frutas])en final ,"Sí","No")

anvikuttu_0-1699809793783.png

La bandera debería haber aparecido como "Sí" para el melocotón en marzo porque estamos comparando febrero con marzo y solo "melocotón" es la nueva fruta que se muestra en marzo. El resto de los registros deben rellenarse como "No".

Por favor, ayúdanos con la lógica.

Gracias y saludos,

Vijay Krishnan

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

@anvikuttu no te preocupes. Si necesita más orientación, no dude en agregarme en LinkedIn y luego enviar el PBIX. Más que feliz de ayudar en todo lo que pueda aparear.

Syndicate_Admin
Administrator
Administrator

Hola @TheoC , el código modificado que pegué anteriormente funciona bien. Además, no encuentro la opción de adjuntar un archivo pbix aquí. También he aceptado su código como solución.

Gracias por toda tu ayuda... se agradece.

Gracias y saludos

Syndicate_Admin
Administrator
Administrator

Hola @anvikuttu

¿Puede enviarme los datos de muestra con los que está trabajando (o el archivo PBIX)?

Además, me acabo de dar cuenta de que las tablas Month1 y Month2 no están necesariamente estructuradas en un orden particular de mes (es decir, Month1 = Feb, Jan, Mar y Month2 de la misma manera).

¡Avísame si es posible enviar los datos!

Muchas gracias,

Theo

Syndicate_Admin
Administrator
Administrator

Gracias @TheoC por su rápida respuesta. Su código soluciona parcialmente el problema.

El conjunto de datos resultante debe basarse en Month2. Si ve a continuación (instantánea), lo primero es que estamos tratando de ver qué frutas están disponibles en el mes 2 que no están disponibles en el mes 1. Las banderas rellenadas para Feb son correctas,

sin embargo, también vemos que hay flag = Yes para Mar también, lo cual es incorrecto. ¿Podría ayudar a corregir el código?

anvikuttu_1-1699844364619.png

Syndicate_Admin
Administrator
Administrator

Hola @anvikuttu

Sus requisitos son muy parecidos a algo que hice para otra persona hace un par de semanas.

Esto compara años en lugar de meses, pero eso no debería ser un problema para cambiar

Comparar años seleccionados 2.pbix

Syndicate_Admin
Administrator
Administrator

Hola @anvikuttu

Intente modificar la forma en que usa la función EXCEPT. No he probado lo siguiente, pero pruébalo y modifícalo según tus necesidades:

New Fruits Flag = 

VAR SlicerMonth1 = SELECTEDVALUE( Month_Table_1[Month] )

VAR SlicerMonth2 = SELECTEDVALUE( Month_Table_2[Month] )

VAR FruitsInMonth1 = 

    CALCULATETABLE (
        VALUES( Raw_Data[Fruits] ) ,
        Raw_Data[Month] = SlicerMonth1
    )
	
VAR FruitsInMonth2 = 
    
	CALCULATETABLE(
        VALUES( Raw_Data[Fruits] ) ,
        Raw_Data[Month] = SlicerMonth2
    )
	
VAR NewFruitsInMonth2 = EXCEPT ( FruitsInMonth2 , FruitsInMonth1 )
VAR CurrentFruit = SELECTEDVALUE ( Raw_Data[Fruits] )

RETURN

IF ( 
	CurrentFruit IN NewFruitsInMonth2 , 
	"Yes", "No"
	)

Asegúrese de colocar esta medida en el objeto visual donde tiene las frutas enumeradas y debería mostrar dinámicamente "Sí" para las frutas nuevas en los meses de comparación seleccionados.

Espero que esto ayude al apareamiento.

Theo

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.