jueves, 20 de abril de 2017

Condicionales Personalizados con Power Query

Al hilo de la entrada anterior, donde hablamos de la funcionalidad de Añadir una columna condicional dentro de una consulta de Power Query, aprenderemos a generar un condicional más elaborado, con condiciones múltiples.
Partimos de nuestro mismo origen de datos, donde hemos creado nuestra Consulta:


Accedemos al menú de Agregar Columna > grupo General > botón Columna personalizada,
lo que nos abre la ventana de la imagen anterior, donde escribiremos:
= if [Producto]="Pdto01" then "1,23"
else if [Producto]="Pdto02" then "2,34"
else if [Producto]="Pdto03" then "3,45"
else "0"

código que replicaría la funcionalidad de Columna condicional que vimos en el post anterior.
Esto sin embargo, tiene ventajas añadidas, ya que podemos construir condicionales más complejos o compuestos de múltiples variables (empleando los operadores lógicos OR o bien AND).


Un ejemplo, en caso de que el comercial sea el 'AAA' y su zona de venta sea 'SUR' aplicamos un porcentaje de comisión del 5%, si el comercial es el 'AAA' y la zona es 'NORTE' el 10%. Al resto de comerciales, independientemente de su zona de venta, aplicamos una comisión del 1%.
Esta sería la fórmula a crear:
=if [Comercial]="AAA" then
     if [Zona]="Sur" then "0,05"
     else if [Zona]="Norte" then "0,10"
     else "0"
else "0,01"



O también, empleando los operadores lógicos y un orden concreto de ejecución, la fórmula:
=if [Comercial]="AAA" and [Zona]="Sur" then "0,05"
else if [Comercial]="AAA" and [Zona]="Norte" then "0,10"
else if [Comercial]="AAA" then "0"
else "0,01"


Con igual resultado que la anterior:



Como podemos comprobar, personalizar nuestras columnas, nos aporta una flexibilidad infinitamente mayor que la simple 'Columna condicional'.

No olvides cambiar el tipo de datos de nuestras columnas a Número decimal para trabajarlos fácilmente como números...

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.