Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

¿cómo puedo crear un campo con una expresion?

Hola comunidad

es posible crear un campo con una expresion

necesito crear un campo con la siguiente idea:

sum(valor) = 0 as salida;

ya que necesito aplicar un filtro a la tabla donde se cumpla lo siguiente

Where (Num(FechaActual - FECHA_INICIO) > 90) and (sum(Valor)=0);

6 Replies
ecolomer
Master II
Master II

Hola

Crea una variable cuya definición sea Sum(Valor)

vSumValor = Sum(Valor)

y luego utilizas el valor de la variable $(vSumValor)

ecolomer
Master II
Master II

Not applicable
Author

Enrique:

buen día tendrás un ejemplo que me apoye como funciona

declaro la variable pero al llamarla en el script me marca error de sintaxis

te pongo el ejemplo de lo que estoy haciendo si de favor me auxilias con la corrección

SET vSalida = Sum(V_COMPRA_S);

LOAD

     $(vSALIDA),

     NUM_MATERIAL,

     NUM_CENTRO,

     STOCK_TOTAL,

     V_COMPRA_S,

     V_COMPRA_E,

     Num(FechaActual - FECHA_INICIO) as Dias

    

FROM

(qvd)

Where (Num(FechaActual - FECHA_INICIO) > 90) and $(vSALIDA)=0;

Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Hola Agustín:

Para seleccionar sobre un campo agrupado necesitas dos pasos, primero cargas la tabla con todos los campos y luego haces un load con un group by y un where desde la tabla anterior.

Temp:

LOAD ...

From FicheroExcel;

Tabla:

LOAD campo,

          ventas;

WHERE ventas > 100;

LOAD campo,

          sum(ventas) as ventas

GROUP BY campo

Resident Temp;

Drop Table Temp;

Si el origen fuera una BBDD en un paso podrías hacerlo

Tabla:

LOAD campo,

          sum(ventas) as ventas;

SELECT campo, sum(ventas)

FROM mibd.tabla

GROUP BY campo

HAVING sum(ventas) > 100;


Saludos

Joaquín

Joaquin_Lazaro
Partner - Specialist II
Partner - Specialist II

Hola 90atinoco     

Cómo tienes este tema, lo has resuelto o necesitas más ayuda ?

Saludos

Joaquín

ecolomer
Master II
Master II

En el script la sintaxis es:

set vFromScript = 'Count({1<Date={"<=#(=max(Date))"}>} Label)';

o

let vFromScript = replace('$(vFromScript)', '#', chr(36));