Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Necesitaba poder evaluar el resultado de una formula que tengo como texto para obtener el resultado y mostrarlo en la fila correspondeinte de una tabla pivotante pero no se como hacerlo. La formula que tengo no puedo calcularla en el scrip ya que los operandos que tengo en dicha formula varian con las selecciones que se hacen sobre el qlikview.
Alguien tiene alguna solucion?
Es que en vez que pensar en como haces el reporte en algo como Excel, en QlikView hay que pensar en como agrupar conceptos. En el modelo de datos, yo harría un agrupación nueva de conceptos en donde REG1 está ligado con el concepto A, REG2 con el concepto B, REG3 con el concepto A y B, etc. Luego en tu reporte tienes es agrupación como tu dimensión y el expresión de sum(monto).
Saludos, Karl
Ya se que el qlikview sirve para agrupar registros, el problema es que no puedo hacer lo que me comentas debido a que la formula que puse como ejemplo "A+B" puede ser cualquier operacion matemática como "A*B" o "(A+B)*C". Yo si que agrupo para obtener el resultado de "A", "B" y "C", ¿pero como hago para calcular el resultado en la expresion del campo?
Saludos,Daniel
Daniel,
Revisa el siguiente post que usa valuelist() y pick() para hacer esos tipos de tablas o haz una tabla simple o pivote que tienes las expresiones vertical en vez de horizontal.
http://community.qlik.com/message/84237#84237
Saludos, Karl
Sabrias decirme como usar el valuelist() y pik() para mi ejemplo porque no veo muy claro que su funcionamiento me sirva para mi caso.
Saludos, Daniel
Primero la dimensión sería valuelist('REG1','REG2','REG3','REG4','REG5').
Segundo la expresión sería
pick(
match(valuelist('REG1','REG2','REG3','REG4','REG5'),'REG1','REG2','REG3','REG4','REG5'),
sum(COLUMNA3={'A'} COLUMNA4),
sum(COLUMNA3={'B'} COLUMNA4),
//tmb above([NombreColumna],1) + above([NombreColumna],2)
sum(COLUMNA3={'A'} COLUMNA4) + sum(COLUMNA3={'B'} COLUMNA4),
sum(COLUMNA3={'C'} COLUMNA4) ,
sum(COLUMNA3={'A'} COLUMNA4) + sum(COLUMNA3={'B'} COLUMNA4) + sum(COLUMNA3={'C'} COLUMNA4)
)
Pero para hace como tu me indicas tengo que conocer el numero de registros que va tener mi tabla. Y yo desconozco eso, ya que puedo tener hasta el registro REG5 o REG10 o o REG20 por poner un ejemplo.
Saludos, Daniel
Tal vez no entiendo bien el contexto pero si tienes que definir una formula para cada registro como en tu ejemplo no sé como no vas a saber cuantos registros vas a tener. En vez de A, B y C ¿nos puedes explicar más acerca del reporte en particular que quieres hacer?
Saludos, Karl
Lo tablas las voy a leer de una base de datos SQL, con lo cual las formulas las puede definir como quiera el usuario:
| COLUMNA1 | COLUMNA2 |
| REG1 | A |
| REG2 | B |
| REG3 | A+B |
| REG4 | C |
| REG5 | (A+B)*C |
Esta tabla es en la que el usuario puede meter todos los registros que quiera y la formula como desee. Despues en otra tabla se indica la relacion de cada operando (esta tabla en mi ejemplo no la puse ya que no tiene mucha impotancia). Seria po ejempo:
| COLUMNA3 | COLUMNA4 |
| A | P1 |
| A | P2 |
| B | P3 |
| B | P4 |
| C | P5 |
Y con esta relacion obtendia el valor de los operando como suma sobre esta tabla:
| COLUMNA4 | COLUMNA5 | COLUMNA6 | COLUMNA7 |
| P1 | 22/12/2011 | D1 | 50 |
| P1 | 12/12/2011 | D1 | 100 |
| P2 | 12/11/2011 | D3 | 250 |
| P3 | 12/02/2011 | D1 | 20 |
| P3 | 12/12/2011 | D2 | 300 |
| P5 | 12/12/2010 | D2 | 120 |
En conclusion, mi finalidad es obtener esto:
| COLUMNA1 | COLUMNA2 |
| REG1 | 400 |
| REG2 | 320 |
| REG3 | 400+320=720 |
| REG4 | 120 |
| REG5 | (400+320)*120=86400 |
Espero que hayas podido entender lo que pretendo y puedas ayudarme porque llevo dias buscadole alguna solucion pero no doy.
Un saludo, Daniel
Alguien puede darme alguna idea de para hacer los calculos que me piden hacer en qlikView?
Un saludo, Daniel