Skip to main content
Announcements
NEW: Seamless Public Data Sharing with Qlik's New Anonymous Access Capability: TELL ME MORE!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Periodos de fechas

Hola, a ver si alguien me puede ayudar con esto, porque llevo mucho tiempo intentando solucionarlo, pero no puedo.

Tengo un Intervalo que viene de excel:

Intervalo.PNG.png

Lo que hago es descomponerlo en hora, dia, semana, mes y año.

Quiero hacer un deslizador para poder filtrar todas las gráficas y tablas que tengo dependiendo del periodo que elija.

Deslizador.PNG.png

Lo que he hecho es crear:

valores:

LOAD * Inline [

Rango, DiasRango, Orden

"1 Dia", 96, 1

"1 Semana", 672, 2

"1 Mes", 2880, 3

"3 Meses", 8640, 4

"6 Meses", 17280, 5

"1 Año", 35040, 6

];

Que el valor de DiasRango es ( ej: 1 Día tiene 24 horas x 4 periodos de 15 minutos = 96 y así sucesivamente), con lo que intento hacer un Count del Intervalo que viene de excel para así relacionarlos y que al filtrar por Dia, semana, mes, ..., influya en las gráficas.

No puedo hacer un count dentro del script, me da error.

Alguien sabe alguna forma de poder hacer esto?

Un saludo y gracias.

9 Replies
jvitantonio
Luminary Alumni
Luminary Alumni

Hola Juan,

Como estas haciendo el count en el script? Recuerdo que cuando usas funciones de agregacion, debes usar Group By. Ejemplo:

LOAD

MiCampo,

count(MiCampo)

FROM ...

GROUP BY MiCampo;

Debes agrupar por todos los campos que no esten usando ni count ni sum.

JV

Not applicable
Author

Hola, intento hacerlo como me dices pero da error de expresión inválida.

CURVA:

LOAD F1 as Intervalo,

  Count(F1) as InterNumero,

FROM

[\\Curva.xls]

(biff, embedded labels, header is 2 lines, table is [Hoja1$])

GROUP BY F1;

Estoy atascado. No se cómo poner Count() y que no de error.

Hay alguna otra forma para que pueda filtrar por los periodos que he comentado.

Un saludo y gracias.

jvitantonio
Luminary Alumni
Luminary Alumni

Tienes una coma de más luego de InterNumero. Borra esa coma y prueba.

No se bie que intentas hacer con eso, pero lo que yo haria es guardar la cantidad de dias para cada uno de tus casos y luego usar esos dias en la expresion:

sum({< Fecha={">=$(=today())-$(vCantidadDias)"} >} TuCampo)

Saludos

JV

Not applicable
Author

Perdón, la coma no la había puesto. Estoy probando varias formas de escribirlo pero nada.

Con esto intento crear los periodos que comentaba para después poder poner cuadros de selección y poder elegir esos periodos.

Cómo guardo la cantidad de días que comentas?

Un saludo y gracias.

jvitantonio
Luminary Alumni
Luminary Alumni

En la tabla que creaste seria "DiasRangos". Yo ahi pondria la cantidades de dias ya que las horas me parece que no interesan. Es decir si elijes, una semana, querras ver todas las horas de todos los dias una semana hacia atras.

JV

julian_rodriguez
Partner - Specialist
Partner - Specialist

Hola Juan,

Te adjunto un ejemplo, que no usa un calendario deslizador, si no un campo para escoger el intervalo de antigüedad de datos que deseas, en días.

Espero sea de utilidad,

Saludos

Not applicable
Author

Muchas gracias Julián, de esta forma puedo filtrar por esos periodos, pero el problema que ahora me surge es que los valores que tengo son estos:

valores:

LOAD * Inline [

Rango, DiasRango, Orden

"1 Dia", 96, 1

"1 Semana", 672, 2

"1 Mes", 2880, 3

"3 Meses", 8640, 4

"6 Meses", 17280, 5

"1 Año", 35040, 6

];

Con lo que son muchos valores para que se representen en un gráfica que ocupe toda la pantalla por ejemplo y si intento solucionarlo poniendo la opción de gráfico - Presentación - Mostrar todas las barras, el problema es que las muestra todas y no hace caso del filtro que selecciono.

A ver si me pueden ayudar! Que ya estoy cerca de una solución correcta.

sebastiandperei
Specialist
Specialist

Te recomiendo que envíes una muestra, no está clara tu consulta.

Not applicable
Author

Hola, gracias por vuestro interés. Aquí os dejo un ejemplo.

Yo tengo varios filtros ( ej: Día, Mes, ....) y así puedo seleccionar un día o un mes concreto, pero lo que quiero en realidad es poder filtrar por periodos, es decir, que elija "Dia_típico" y se filtre todo el documentos por días; si lo hago por "MES" que haga lo mismo y así sucesivamente.

Un saludo y muchas gracias.