Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Resta de campos de una dimensión

Hola a todos,

adjunto el ejemplo en el tema.

Tengo la Dimensión Año y Ventas.

AÑO-----VENTAS

2010-----3

2011-----4

2012-----5

Lo que quiero es que uno de los años muestre las ventas de ese año menos las de otro, y el resto muestre la suma de ventas.

Es decir, que en el año 2012 en vez de 5 me aparezcan 2 en la tabla gráfico, las 5 ventas de 2012 menos las 3 ventas de 2010.

He hecho un If:

if([Año]=2012,sum({<[Año]={2012}>}Ventas)-(sum({<[Año]={2010}>}Ventas)),sum(Ventas))

Pero no cambian los datos, solo si filtro por 2012 me salen 2 ventas en el Total, pero quiero que salga en la tabla gráfico.

Es esto posible? cómo ? gracias!

Saludos

1 Solution

Accepted Solutions
Not applicable
Author

Por si le puede servir a alguien está resuelto con esto:

Variable : vSum2010=sum ( { < YEAR= { 2010 } >} SALES)

Expr: If(YEAR=2012,Sum({<YEAR={2012}>}SALES)-vSum2010,Sum(SALES))

View solution in original post

8 Replies
jolivares
Specialist
Specialist

No entiendo bien tu pregunta, si pudieras hacer un ejemplo con mas datos seria mejor.

Mientras tanto puedes probar con la funcion "above".

Ano     Venta     Respuesta

2010     3          X

2011     4          X

2012     5          X

2013     7          X

2014     3          X

2015     5          X

Not applicable
Author

Ano     Venta     Respuesta

2010     3          3

2011     4          4

2012     5          2

2013     7          7

2014     3          3

2015     5          5

He restado las ventas del año 2012 con las del 2010.

ecolomer
Master II
Master II

Puedes utilizar la función above de la siguiente forma

La nueva columna es Ventas - above(Ventas, 2)

P01.png

Not applicable
Author

Pero estás restando al 2014 el 2012, al 2013 el 2011 y al 2012 el 2010. Yo quiero poder restar los años que yo quiera sin que tengan que ser dos año para atrás.

Gracias igualmente.

jolivares
Specialist
Specialist

Es precisamente para esto que se usa la funcion Above(), lo que sucede es que el ejemplo que has puesto es para restar al ano 2010, Colomer te reponde de acuerdo a esto.

ramoncova06
Specialist III
Specialist III

en base a la respuesta de Enrique, puedes generar una variable y así definir cuántos años quieres restar

ecolomer
Master II
Master II

Pues efectivamente había entendido que esto era lo que querías.

Me puedes explicar cual es tu expectativa de resultado?

Not applicable
Author

Por si le puede servir a alguien está resuelto con esto:

Variable : vSum2010=sum ( { < YEAR= { 2010 } >} SALES)

Expr: If(YEAR=2012,Sum({<YEAR={2012}>}SALES)-vSum2010,Sum(SALES))