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

The ultimate Microsoft Fabric, Power BI, Azure AI & SQL learning event! Join us in Las Vegas from March 26-28, 2024. Use code MSCUST for a $100 discount. Register Now

Reply
Syndicate_Admin
Administrator
Administrator

seleccionar columna dinámicamente en la medida dax - ¿es posible?

Hola

En mi informe tengo un filtro de inicio y fin separado para seleccionar el período de tiempo.

bsz412_0-1660211445990.png

Tengo que calcular el monto de la venta a EUR, usando una columna de venta en la tabla de ventas y el tipo de cambio de la tabla de tipos de cambio.

La parte difícil es que, si se selecciona el 22 de agosto, quieren que todo se calcule con la tasa ex del 22 de agosto. Si se selecciona el 22 de julio como período final, quieren que todo se calcule sobre ese tipo de cambio.

Primero tuve una tabla de tarifas ex como esta:

bsz412_1-1660211571470.png

y estaba conectado con muchas a muchas relaciones con la tabla de ventas por la columna de código de país.

El monto de las ventas se calculó con la ayuda de una función de búsqueda. La desventaja de la función de búsqueda es el rendimiento. Una función relacionada sería mucho más rápida, pero para eso necesitaría una relación de uno a muchos.

Ahora, lo que estoy tratando de hacer, es que modifiqué la tabla de tipos de cambio, la pivoté, de modo que tengo las tasas ex en diferentes columnas y ahora puedo establecer la relación de uno a muchos con la tabla de ventas.

bsz412_2-1660211740832.png

Ahora puedo usar la función RELATED, pero como cada mes está en diferentes columnas, tendría que agregar todas y cada una de las columnas en el código, en la función switch. (El código siempre tiene que utilizar el tipo de cambio del período final seleccionado)

Supongo que no es posible, pero tal vez alguien tenga un consejo sobre esto: ¿es posible hacer referencia al nombre de la columna con una medida, en lugar de agregar 50-60 líneas de código para cada mes? Siempre debe usar el nombre de columna que sea idéntico al período final seleccionado.

¡Gracias!

Sellout Amount EUR test = 

VAR ex_ratedate = SELECTEDVALUE(Endperiod[yearmonth number])

RETURN

SUMX(

sales, sales[sellout]*

SWITCH(

TRUE(),

ex_ratedate=202101, RELATED(exchange_rate[202101]),

ex_ratedate=202102, RELATED(exchange_rate[202102]),

RELATED(exchange_rate[202206])))
1 REPLY 1
Syndicate_Admin
Administrator
Administrator

@bsz412,

Vea si puede adaptar la solución a continuación. Utiliza una tabla puente para resolver la relación de muchos a muchos. En su modelo, CountryCode será la tabla puente. Este enfoque le permite evitar pivotar la tabla de tipos de cambio.

https://community.powerbi.com/t5/Desktop/Alternative-LookupValue-function-to-create-virtual-relation...

Helpful resources

Announcements
Fabric Community Conference

Microsoft Fabric Community Conference

Join us at our first-ever Microsoft Fabric Community Conference, March 26-28, 2024 in Las Vegas with 100+ sessions by community experts and Microsoft engineering.

February 2024 Update Carousel

Power BI Monthly Update - February 2024

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

Fabric Career Hub

Microsoft Fabric Career Hub

Explore career paths and learn resources in Fabric.

Fabric Partner Community

Microsoft Fabric Partner Community

Engage with the Fabric engineering team, hear of product updates, business opportunities, and resources in the Fabric Partner Community.

Top Solution Authors