Skip to main content
Announcements
See why Qlik is a Leader in the 2024 Gartner® Magic Quadrant™ for Analytics & BI Platforms. Download Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Asignando una variable en el load script de Qlikview

Amigos, estoy tratando de asignar una variable en el script de Load, por ejemplo:

    Data:
    load * inline
    [
      Año, Tienda, Ventas
      2008, Amsterdam, 100
      2009, Amsterdam, 100
      2010, Amsterdam, 100
      2008, Rotterdam, 200
      2009, Rotterdam, 200
      2010, Rotterdam, 200
      2008, The Hague, 300
      2009, The Hague, 300
      2010, The Hague, 300
    ];
    Let vVentasTotal  = Sum(Ventas);

Pero me da Null para vRevenueTotal. Soy nuevo en QV, que estoy haciendo mal aqui?
Muchas Gracias.

1 Solution

Accepted Solutions
Not applicable
Author

Hola Dorian.

No entiendo cual es el fin de tu variable, por que esto lo puedes hacer fuera del script.

En base a lo que solicitas puedes hacer lo siguiente:

1) Crea una tabla Totalizadora en base a la primera tabla creada "Data", esto mediante código Resident.

Totalizadora:

load

sum(Ventas) as Total

Resident Data;

Dicha tabla solo va tener un campo con el total de las "Ventas" de tu tabla Data.

Una vez que ejecutes tendrás 2 tablas el cual lo puedes ver en el Visor de Tablas (Ctrl + T).

2) Para que tu variable almacene el dato de la Tabla "Totalizadora" debes usar la función "Peek".

let vVentasTotal = Peek('Total',0,Totalizadora);

La función Peek muestra 3 parámetros (nombre del campo, posición de registro, Tabla).

3) Borrando tabla Totalizadora, despues de que se cargo el dato de la variable.

Drop Table Totalizadora;

4) Tu script adicional seria el siguiente:

Totalizadora:

load

sum(Ventas) as Total

Resident Data;

let vVentasTotal = Peek('Total',0,Totalizadora);

Drop Table Totalizadora;

atte.

Luis Valencia.

View solution in original post

2 Replies
Not applicable
Author

Hola Dorian.

No entiendo cual es el fin de tu variable, por que esto lo puedes hacer fuera del script.

En base a lo que solicitas puedes hacer lo siguiente:

1) Crea una tabla Totalizadora en base a la primera tabla creada "Data", esto mediante código Resident.

Totalizadora:

load

sum(Ventas) as Total

Resident Data;

Dicha tabla solo va tener un campo con el total de las "Ventas" de tu tabla Data.

Una vez que ejecutes tendrás 2 tablas el cual lo puedes ver en el Visor de Tablas (Ctrl + T).

2) Para que tu variable almacene el dato de la Tabla "Totalizadora" debes usar la función "Peek".

let vVentasTotal = Peek('Total',0,Totalizadora);

La función Peek muestra 3 parámetros (nombre del campo, posición de registro, Tabla).

3) Borrando tabla Totalizadora, despues de que se cargo el dato de la variable.

Drop Table Totalizadora;

4) Tu script adicional seria el siguiente:

Totalizadora:

load

sum(Ventas) as Total

Resident Data;

let vVentasTotal = Peek('Total',0,Totalizadora);

Drop Table Totalizadora;

atte.

Luis Valencia.

Not applicable
Author

Luis,

Tu solucion me funciono perfecto. Se que se puede hacer fuera del script, pero en mi caso estaba tratando de hacerlo dentro del script porque despues lo necesitaba referenciar mas adelante en el script, como un contador para un For Loop.

Muchas Gracias.

Saludos.

Dorian Sierra