En anteriores versiones de PowerPivot, cuando teniamos una condición compleja, debiamos de anidar diferentes IF, de manera que cuando teniamos más de dos o tres condiciones, se hacia bastante tedioso escribir la expresión, cayendo facilmente en el error. En PowerPivot 2.0 tenemos la función Switch, que se comporta como en el resto de lenguajes de programación. Veamos la sintaxis

Novedades de PowerPivot en Denali (VIII): SWITCH

 

SWITCH

– Expresión: Expresión a evaluar

– Value1..ValueN: Valor que toma la expresión

– Result1..ResultN: Si la expresión toma el valor Value1 se devuelve Result1… y así sucesivamente

Pongamos el siguiente ejemplo

Novedades de PowerPivot en Denali (VIII): SWITCH

Imaginemos que dependiendo de la categoría, tenemos un cierto incremento en el precio base. Siendo:

Bebidas: 1,5

Panaderia: 2

Frutas: 3

Verduras: 4

De manera que nosotros, para calcular el precio final podríamos hacerlo con IFs anidados. La expresión quedaría (separada para verlo mejor)

=IF([Categoria]=”Bebidas”,

[Precio Base]*1.5,

IF([Categoria]=”Panaderia”,

[Precio Base]*2,

IF([Categoria]=”Frutas”,

[Precio Base]*3,

IF([Categoria]=”Verduras”,

[Precio Base]*4

)

)

)

)

 

Como vemos tenemos que anidar los IF y se complica cada vez que tenemos que mas condiciones. Con SWITCH queda mucho más limpio

=SWITCH([Categoria],
“Bebidas”,[Precio Base]*1.5,
“Panaderia”,[Precio Base]*2,
“Frutas”,[Precio Base]*3,
“Verduras”,[Precio Base]*4)

Y los resultados

Novedades de PowerPivot en Denali (VIII): SWITCH

Espero que sirva de ayuda. Nos vemos en próximas entregas  🙂

 

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like
Leer más

Azure Stream Analytics serie. Parte 1: Uso e implementación de funciones en JavaScript en un job de ASA

En esta serie de posts vamos a comentar diferentes aspectos de Azure Stream Analytics (ASA de ahora en adelante), que pueden resultarnos útiles en nuestros desarrollos del día a día. Sino conoces Azure Stream Analytics puedes ver una introducción en este enlace. Parte 1: Uso e implementación de funciones en JavaScript en un job de ASA
Leer más

Técnicas de apoyo a la indexación tradicional. SQL Server

Ante problemas de búsqueda o de cruce de datos menos habituales necesitamos pensar en soluciones alternativas. En un mundo ideal el motor de SQL Server tendría una mayor cantidad de estrategias y recursos para optimizar este tipo de situaciones. No te pierdas este post sobre técnicas de apoyo a la indexación tradicional.