Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
ShirSandoval
Creator
Creator

MOSTRAR SOLO ULTIMOS 90 DIAS

Hola buen día,

Soy nueva, recurro a ustedes porque necesito que la siguiente expresión me traiga solo los últimos 90 días desde hoy. 

Le puse WeeKsAgo pero no estaría bien ya que me cuenta semanas completas donde pueden haber mas de 90 días.  También agregué Num(Today(0)-90) pero no me funciona para lo que quiero. 

 

COUNT (distinct{<[Opportunity.CustName],
State ={'REAP','TRMITA','TRMITP','TRMITR','VENCIDA','ACEP'},
Progress ={"40"},
[Opportunity.TransDate.autoCalendar.WeeksAgo]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},
LoanProduct = {"Prendarios"}
>} [Opportunity.CustName]) 

 

Gracias!

Labels (4)
1 Solution

Accepted Solutions
hector
Specialist
Specialist

Hola, @ShirSandoval  a mi me da los 211

Considera este tip, cuando creas secciones dinámicas en el set analysis, puedes ver el resultado en la sección baja de la pantalla

Con el cálculo original de today() - 90, devuelve un número que es la representación de días desde 1900. Por lo tanto no puedes comparar un número 43925 con una fecha DD-MM-YYYY, como te dije antes no puedes formatear al lado izquierdo del "=", por ende debes cambiar el formato de campo en la definición del SA (lo que va entre { } al lado derecho del "=")

Expresión Original

Image 001.pngImage 002.png

Image 005.png

La fecha viene en formato DD-MM-YYYY (según mis variables de fecha del inicio del script, las tuyas pueden variar)

 

Expresión Corregida

date() ajustará el formato a tu formato de fecha definido, ojo el campo fecha puede parecer fecha por formato, pero Qlik podría no interpretarlo así, para saber si está ok aplica una función de fecha como month() o year(). Aunque entiendo que si el autocalendar funcionó, es porque efectivamente si lo es.

Image 003.pngImage 004.pngImage 006.png

espero entendieras mi explicación.

saludos y que te vaya bien!

View solution in original post

10 Replies
hector
Specialist
Specialist

Hola

para poder usar Num(Today(0)-90) tu campo debiera ser tipo Date, segun entiendo weeksago es un número entero.

Podrias usar

 

[Opportunity.Transdate] = {">=$(=Today()-90)"}
o
Set vFecha = Today()-90; //En Script o panel de variables

[Opportunity.Transdate] = {">=$(vFecha)"}

 

ojo con los formatos de fecha, quizás tuvieras que usar un date() alrededor de las fórmulas.

Otra opción sería con un flag en el script

 

saludos.

ShirSandoval
Creator
Creator
Author

Hola @hector   muchas gracias por responder, 

Agregué lo que me dices, intente con el script, cree variable y nada de todas las formas no me funciona. Esta es la ultima y me da CERO algo no estoy haciendo bien. 

COUNT (distinct{<[Opportunity.CustName],
State ={'REAP','TRMITA','TRMITP','TRMITR','VENCIDA','ACEP'},
Progress ={"40"},
LoanProduct = {"Prendarios"},
Date ([Opportunity.TransDate], "DD- MM- YYYY")
[Opportunity.TransDate]) = {">=$(=Today()-90)"}
>} [Opportunity.CustName])

 

Shir2806_0-1593802252337.png

gracias nuevamente, si me puedes ayudar por favor. 

 

 

 

hector
Specialist
Specialist

Hola, tienes un error en la sintaxis

COUNT (distinct{<
[Opportunity.CustName],
State ={'REAP','TRMITA','TRMITP','TRMITR','VENCIDA','ACEP'},
Progress ={40},
LoanProduct = {"Prendarios"},
[Opportunity.TransDate]) = {">=$(=Date(Today()-90), "DD- MM- YYYY")"}
>} [Opportunity.CustName])

Es ese realmente tu formato de fecha? con el espacio después del guión??

 

saludos.

ShirSandoval
Creator
Creator
Author

Perdón @hector ya lo modifiqué pero no me da

Shir2806_3-1593805209139.png

Resultado:

Shir2806_2-1593805038051.png

Shir2806_4-1593805278522.png

Tambien  intente agregando Floor y tampoco me funciona. 

 

Count (distinct{<[Opportunity.CustName],
State ={'REAP','TRMITA','TRMITP','TRMITR','VENCIDA','ACEP'},
Progress ={"40"},
LoanProduct = {"Prendarios"},
Date(Floor[Opportunity.TransDate]"DD/MM/YYYY") = {">=$(=Today()-90)"}
>} [Opportunity.CustName])

 

 

hector
Specialist
Specialist

No puedes colocar funciones del lado izquierdo del igual, solo nombres de campos. Si el formato no coincide con el del campo, el cambio debes hacerlo dentro de las llaves { }. Por ende si tu campo llegase a venir con la hora, el floor() debes hacerlo en el script, aunque yo recomendaría dayname() que equivale a un date(floor(campo))

ShirSandoval
Creator
Creator
Author

 

Ok @hector Ya revise y los formatos coinciden entonces no haría falta todo lo que hice. Si la dejo como me indicaste al principio sigue sin funcionar.

COUNT (distinct{<[Opportunity.CustName],
State = {'REAP','TRMITA','TRMITP','TRMITR','ACEP','VENCIDA'},
Progress ={"40"},
LoanProduct = {"Prendarios"},
[Opportunity.TransDate]= {">=$(=Today()-90)"}
>} [Opportunity.CustName])

Resultado: 

Shir2806_0-1593811787253.png

Discúlpame pero soy nueva en Qlik.  Mil disculpas.

 

hector
Specialist
Specialist

Te recomiendo que crees un ejemplo en QVD o XLS de tus datos base y lo subas con el resultado esperado.

 

ShirSandoval
Creator
Creator
Author

Ok.. adjunto, Me deberían dar 211 cuentas. Gracias @hector 

hector
Specialist
Specialist

Hola, @ShirSandoval  a mi me da los 211

Considera este tip, cuando creas secciones dinámicas en el set analysis, puedes ver el resultado en la sección baja de la pantalla

Con el cálculo original de today() - 90, devuelve un número que es la representación de días desde 1900. Por lo tanto no puedes comparar un número 43925 con una fecha DD-MM-YYYY, como te dije antes no puedes formatear al lado izquierdo del "=", por ende debes cambiar el formato de campo en la definición del SA (lo que va entre { } al lado derecho del "=")

Expresión Original

Image 001.pngImage 002.png

Image 005.png

La fecha viene en formato DD-MM-YYYY (según mis variables de fecha del inicio del script, las tuyas pueden variar)

 

Expresión Corregida

date() ajustará el formato a tu formato de fecha definido, ojo el campo fecha puede parecer fecha por formato, pero Qlik podría no interpretarlo así, para saber si está ok aplica una función de fecha como month() o year(). Aunque entiendo que si el autocalendar funcionó, es porque efectivamente si lo es.

Image 003.pngImage 004.pngImage 006.png

espero entendieras mi explicación.

saludos y que te vaya bien!