Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
jorge_redondo
Contributor III
Contributor III

A vueltas con una expresión

Hola!

Tengo la siguiente expresión en un gráfico de tabla:

If ( Fecha_arq >= ( Today() - vDia ), NETO_arq )

Que muestra registros anteriores a la fecha de hoy dependiendo de una variable (vDia) que recojo en un cuadro de entrada.

QlikView - Copia del Distribuidor - [CQlikviewJLArenasV2.jpg

Luego necesito incorporar al informe un gráfico dónde se muestre cómo se distribuyen las ventas de esos x días (Today()-vDia) en familias, para lo cual tengo creado un gráfico con la dimensión 'Familia' y la expresión:

Sum( { $ <[E_S] = {'V'} > } Importe_bruto)

Que mostraría el total de ventas ('V').

El problema es que necesito implementar la expresión que utilizo en la tabla anterior para que me muestre sólo las ventas de esos días y no lo consigo.

El qvd del gráfico es distinto al de la tabla. El campo fecha que usa la tabla es Fecha_arq y el campo de la tabla del gráfico es Fec_Doc. Entonces si pongo:

Sum( { $ < Fec_Doc>= { $ (Today() -1 }, [E_S] = {'V'} > } Importe_Bruto )) // NO DA RESULTADO

Aunque si pongo (a modo de prueba):

Sum( { $ < Fec_Doc= { '26/02/2014' }, [E_S] = {'V'} > } Importe_Bruto ))

Funciona, pero no sirve por tener que utilizar constantes.

Está claro que es un problema de sintaxis y de que ando flojo de SET ANALISYS 🙂

Me podeis echar un cable?? gracias !!!

4 Replies
Luis_Cortizo
Former Employee
Former Employee

Hola, Jorge

    No tengo el ordenador delante, pero por lo que leo en tu Set Analysis, prueba con:

{($(=Today()) -1)}


En lugar de:


{ $ (Today() -1 }


QlikView necesita saber que Today() es una expresión y no una cadena de texto para poder evaluarla.


Un saludo.

jorge_redondo
Contributor III
Contributor III
Author

Gracias Luis!

Lo he sustituído pero no va...

En realidad, la expresión que quiero introducir es Today() - vDia y no Today()-1 como puse erróneamente, aunque no tenga mayor importancia.

Adjunto el qvw, por si te es más fácil resolverlo !

Gracias por tu interés!

Not applicable

Hola Jorge

Por la expresión que has puesto, puede ser que estes perdiendo el formato en la fecha y por eso no te de resultado,

Si pones en un cuadro de texto :  today() -vDia  , te devolverá un numero (ya que no le estas dando formato a la fecha)

Mientras que si especificas el formato:  date( today()-vDia,DD/MM/YYYY ) te debería devolver una fecha.

jorge_redondo
Contributor III
Contributor III
Author

Gracias, Juan y Luis.

Al final lo resolví prescindiendo del SET ANALISYS y usando la expresión:

sum( if ( Fec_Doc >= Date( Today () - vDia, 'DD/MM/YYY'),......

Ya que siguiendo vuestras indicaciones el gráfico no mostraba nada.