Home
» Power BI
»
Lógica de moneda múltiple en LuckyTemplates: un ejemplo de LOOKUPVALUE
Lógica de moneda múltiple en LuckyTemplates: un ejemplo de LOOKUPVALUE
Un escenario muy común dentro del análisis financiero es tener que integrar las tasas de cambio en sus datos transaccionales. La mayoría de las veces, los datos de ventas se registran independientemente de la moneda y el nombre o código de la moneda simplemente se coloca dentro de una columna. Y podría ser USD, AUD, GBP, pero en realidad no se ajusta por el tipo de cambio para usted. Puede ver el video completo de este tutorial en la parte inferior de este blog.
Entonces, lo que tienes que hacer es integrar una gran cantidad de tipos de cambio históricos, porque a través del tiempo, los tipos de cambio cambian. Entonces, dependiendo del día en que vendiste algo, el tipo de cambio equivalente será muy diferente. Voy a mostrar cómo puede resolver esto dentro de LuckyTemplates.
Hay un poco que tienes que entender, especialmente en torno al modelo de datos que sé que es un concepto relativamente nuevo para mucha gente. Pero le muestro muchas de mis mejores prácticas aquí y luego cómo incorporar esta información de tipo de cambio en sus ventas o su tabla transaccional.
Para el blog de hoy, quiero hablar sobre cómo manejar múltiples monedas dentro de LuckyTemplates. Veo muchas de estas preguntas en los foros y es un problema común, especialmente para los contadores o personas de finanzas que necesitan calcular el valor de sus ventas potenciales utilizando su moneda local.
Hay algunas complejidades involucradas en este escenario y voy a hablar sobre cómo puede resolverlas. Primero, mostraré cómo puede integrar la tabla de divisas en nuestro modelo de datos desde el back-end. Voy a hacer clic en Editar consultas, luego en Tipos de cambio. Cuando hago clic en Navegación, verá los pares de fechas y divisas.
Este es un escenario bastante común porque así es como se recupera la información de la moneda. El formato anterior es cómo se le darán los datos; a veces un banco te lo enviará y otras veces puedes descargarlo en línea. Desafortunadamente, esto no es útil en absoluto si desea incorporar estos datos sobre la marcha en sus cálculos.
Columnas no pivotantes
Lo que tenemos que hacer es quitar el pivote de estas columnas y hacer clic hasta que tengamos las columnas que necesitamos, que en este caso son la columna Fecha, la columna Par de divisas, la columna Moneda extranjera y la columna Tipo de cambio. Queremos una línea por fecha y por moneda.
Esta es una de las cosas clave que debe hacer para incorporar esto en su modelo de LuckyTemplates. Guardaremos esto y luego volveremos al modelo.
Cómo funciona el modelo de datos
Voy a mostrarle la configuración para el modelo de datos aquí. Tenemos los datos de ventas , las fechas de nuestras ventas ( tabla de fechas ) y los productos ( tabla de datos de productos ) que vendemos a los clientes ( tabla de datos de clientes ) en regiones específicas del mundo ( regiones de ventas ).
La tabla de datos de ventas es donde vamos a hacer todos nuestros cálculos. Tenemos una columna de código de moneda alineada con la región a la que estamos vendiendo. La columna Ingresos totales muestra los ingresos totales en la moneda particular a la que lo vendimos, por lo que no podemos sumar los Ingresos totales y llamarlos nuestras Ventas totales. Eso está completamente mal. Necesitamos obtener cada venta individual que hicimos y transferirla a nuestra moneda local , que en este ejemplo son dólares Kiwi.
Lo que podemos hacer es vincular nuestra tabla de tipos de cambio a la tabla de fechas y luego vincular la tabla de fechas a la tabla de datos de ventas.
De esta manera, podemos elaborar una fórmula para cada uno de esos montos individuales con la moneda ajustada. Primero, obtenemos nuestra suma de Ingresos totales y la arrastramos a la tabla. Como puede ver, este es un número completamente incorrecto. No nos dice en absoluto cuánto hemos vendido realmente porque está en yenes japoneses, dólares canadienses, euros, etc., por lo que son solo números sin sentido.
La función BUSCARVALOR
Lo que tenemos que hacer es usar una función llamada LOOKUPVALUE y ponerla dentro de una función de iteración. Vamos a colocar LOOKUPVALUE dentro de SUMX porque, en última instancia, estamos sumando los ingresos, pero también debemos ajustar cada fila en la tabla de datos de ventas y cada ingreso derivado de una venta y dividirlo por el tipo de cambio asociado.
El primer valor después de LOOKUPVALUE es lo que queremos recuperar, por lo que, en este caso, queremos recuperar el tipo de cambio de la tabla de tipos de cambio que creamos. También queremos asegurarnos de que la fecha sea la misma que la fecha de la orden de venta y que la moneda extranjera sea la misma que el código de moneda dentro de la tabla de datos de ventas.
LOOKUPVALUE ajustará cada artículo de venta individual para el tipo de cambio de moneda en un día en particular.
Moneda de ventas totales ajustada
Cuando miramos nuestra tabla de Moneda de Ventas Totales Ajustadas, sabemos instantáneamente que esto no es correcto.
La moneda extranjera proviene de la tabla de tipo de cambio , que no tiene relación con la tabla de datos de ventas, que es de donde provienen nuestras ventas totales.
Lo que tenemos que hacer es ajustar esto por la moneda dentro de la región de Ventas. Ahora puede ver por día de dónde provienen estas ventas por moneda.
La clave aquí es el ajuste de la moneda y el proceso de descentrar las columnas para que el tipo de cambio esté en una sola fila.
Conclusión
En esta publicación, necesitábamos ir al modelo de datos para asegurarnos de que hubiera una relación entre la columna Fechas y la columna Tipos de cambio. También escribimos lógica avanzada dentro de la función SUMX. Dado que SUMX es un iterador, fue a la tabla de datos de ventas y luego, para cada fila de esta tabla, fue el ingreso total dividido por el tipo de cambio de esa moneda en particular en esa fecha específica. Así logramos el Total de Ventas Moneda Ajustado en nuestra fórmula.
Ahora, si hace esto de manera efectiva, se vuelve muy sencillo hacer estos cálculos. Al comprender cómo ordenar el modelo de datos y también cómo utilizar la medida DAX LOOKUPVALUE, tiene la capacidad de ejecutar fácilmente cálculos ajustados por moneda. No solo eso, también puede ver sus resultados dinámicamente dependiendo de la moneda en la que quiera verlos.
Así que hay muchas aplicaciones para esto, especialmente en el mundo financiero o en cualquier organización que venda productos en muchas monedas diferentes. Muy aplicable a una situación del mundo real. Esperemos que esto ayude a aquellos que se encuentran con este problema y están buscando una solución.
Buena suerte con la implementación de esta técnica usted mismo.