Qlik Community

Third-Party Qlik Jobs

Area for people to learn more about current Qlik related job postings.

RSANTOS
New Contributor

Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

Buenas, 

 

soy nuevo en QLIK, Necesito mostrar en una tabla simple un valor de un campo si cumple con una condición de otro.

 

 

6 Replies
Highlighted
ignacio_pena
New Contributor III

Re: Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

Hola,

Lo que tendrías que hacer es crear una nueva expresión y utilizar un IF para comprobar si se cumple la condición. Te pongo un ejemplo de la expresión:

if(MES= 'Ene', MES, 'Sin mes')

En este caso, si se cumple la condición de que en el campo MES = 'Ene', devuelva el valor del campo MES y si no se cumple que ponga Sin mes.

Captura.PNG

Donde pone 'Sin mes', puedes poner otro campo o no poner nada (te devolverá un valor nulo).

Un saludo,

 

 

RSANTOS
New Contributor

Re: Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

utilice la siguiente expresión 

if(Max(Date)=Date,[Campo2],[Campo1])

Pero me presenta todos los valores nulos.

ignacio_pena
New Contributor III

Re: Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

Hola,

En principio debería de funcionar lo que indicas. Te aconsejaría que confirmaras que el campo DATE realmente esta cogiendo bien el formato fecha.

Por otro lado y si el campo DATE lo tienes como un campo de la tabla, te aconsejaría crear una variable con el MAX(DATE) y luego igualar el IF a esa variable.

Hice un ejemplo y a mi me funciono.

La expresión que utilizo es:

if(Fecha=VMaxDate,[Campo2],[Campo1])

Donde VMaxDate es la variable con el MAX(FECHA).

Captura.PNG

Un saludo,

 

RSANTOS
New Contributor

Re: Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

Hi!,

 

No se el porque a mi no me funciona.

Inclusive lo intente con la siguiente expreción:

only({<Fecha={$(=Max(Fecha))}>}Main_Relay_Status) y no me funciona.

Existe otra forma?

 

RSANTOS
New Contributor

Re: Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

discúlpame con la palabra "expreción" era "expresión".

 

ignacio_pena
New Contributor III

Re: Mostrar en una tabla simple un valor de un campo si cumple con una condición de otro campo

Hola,

No te preocupes.

Quiza lo que deberías de probar es a poner la expresión más sencilla y comprobar que te funciona. Una vez que compruebes que funciona sin problema la puedes ir "complicando" paso a paso hasta que tenga todo lo que necesites.

Lo que yo haría es primero poner algo así en mi tabla:

if(Fecha='01/01/2019',[Campo2],'NO')

Poniendo la fecha con el formato que tu tengas y con un valor que sepas que existe. De tal manera que compruebes que eso te devuelve dato para al menos 1 registro (el que cumple la fecha y el resto debería de ser NO). Si todo te devolviera NO, es que el campo FECHA no tiene bien el formato. Posteriormente iría cambiando la expresión poco a poco hasta llegar a lo que busques. Por ejemplo, modificar el literal NO por otro campo, luego cambiaría el literal de fecha por una variable con el MAX(Fecha)...etc.

Esta es la única manera que conozco para ver si se cumple una condición.

Un saludo