Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers!
Enter the sweepstakes now!Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.
Por ejemplo, hay muchos metris, p. ej. margen, ingresos, costo, net_revenue, forecast_revenue, presupuesto.....,
Todas estas métricas son necesarias para obtener su monto en muchas monedas diferentes, existen tipos de cambio como HKD, USD, SGD, EUR, BND, LBP, ILS, GIP.
por ejemplo, margen * HKD obtendrá el margin_hkd
si necesito transformar todas las métricas en todos los valores de la moneda, ¿existe una solución fácil para dañar el rendimiento?
Estaría muy agradecido si pudiera proporcionar alguna muestra de DAX
Hola @oakfootballclub ,
Para convertir dinámicamente métricas como el margen, los ingresos y el costo en varias monedas mientras se mantiene la eficiencia, el mejor enfoque es usar medidas predefinidas y una tabla de monedas desconectada.
En primer lugar, cree una tabla desconectada con los tipos de cambio relativos al dólar estadounidense mediante la siguiente fórmula DAX:
CurrencyRates =
DATATABLE(
"Currency", STRING,
"RateToUSD", DECIMAL,
{
{"USD", 1},
{"HKD", 7.8},
{"SGD", 1.35},
{"EUR", 0.92},
{"BND", 1.36},
{"LBP", 1500},
{"ILS", 3.7},
{"GIP", 0.82}
}
)
Esta tabla permite a los usuarios seleccionar una moneda a través de una segmentación sin necesidad de una relación con el modelo de datos.
A continuación, cree una medida para recuperar dinámicamente el tipo de cambio de la moneda seleccionada:
SelectedCurrencyRate =
VAR SelectedCurrency = SELECTEDVALUE(CurrencyRates[Currency])
RETURN
LOOKUPVALUE(CurrencyRates[RateToUSD], CurrencyRates[Currency], SelectedCurrency)
Esta medida obtiene el tipo de cambio de la moneda elegida en la segmentación.
Para controlar la conversión de moneda de forma dinámica para todas las métricas, cree una medida general mediante ISSELECTEDMEASURE. Esta medida hace referencia a las medidas base y aplica el tipo de cambio de la divisa seleccionada:
ConvertedMetricValue =
VAR Rate = [SelectedCurrencyRate]
RETURN
SWITCH(
TRUE(),
ISSELECTEDMEASURE([Margin]), [Margin] * Rate,
ISSELECTEDMEASURE([Revenue]), [Revenue] * Rate,
ISSELECTEDMEASURE([Cost]), [Cost] * Rate,
ISSELECTEDMEASURE([Net Revenue]), [Net Revenue] * Rate,
ISSELECTEDMEASURE([Forecast Revenue]), [Forecast Revenue] * Rate,
ISSELECTEDMEASURE([Budget]), [Budget] * Rate,
BLANK()
)
Esta medida aplica dinámicamente el tipo de cambio de la divisa seleccionada a la métrica seleccionada.
Agregue la columna Currency de la tabla CurrencyRates como segmentación para permitir que los usuarios seleccionen su moneda preferida. Use la medida ConvertedMetricValue en los objetos visuales y se mostrará dinámicamente la métrica seleccionada en la moneda elegida.
Este enfoque evita la redundancia, garantiza la claridad y proporciona escalabilidad. Agregar nuevas monedas o métricas requiere actualizaciones mínimas, y los usuarios tienen la flexibilidad de interactuar con las selecciones de métricas y monedas. ¡Avísame si necesitas más ayuda!
Saludos
Hola @oakfootballclub
¿Tiene la intención de informar en una moneda o en diferentes monedas? Si está en diferentes monedas y tiene la cantidad de moneda local y el indicador de moneda, puede usar segmentaciones.
Sin embargo, si aún no tienes las monedas locales, la pregunta es ¿cómo convertir una cantidad a la moneda local? ¿Es simplemente la tasa de suma (tabla [cantidad local]) * o evalúa la conversión por fila en sus datos, ya que puede haber una tasa diferente para cada fecha?
Será más fácil para nosotros entender lo que está tratando de hacer con unos datos de muestra viables y el resultado esperado de ellos.
Check out the May 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.