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: 
ivan_revuelta
Contributor
Contributor

Problema para filtrar dos intervalos de fechas distintos con el mismo filtro

Hola,

 soy novato en Qlik y necesito ayuda. Mirando en el foro he conseguido cargar un script que me permite ver los cursos que hay activos entre dos fechas mediante el filtro Year: (Esta parte la hace bien)

Example.PNG

El problema es que necesito que filtre también por el grupo en el que los profesores estaban en ese momento. Es decir que además de filtrar por la FechaInicio y FechaFin, lo haga también por los campos miembroDesde y miembroHasta. No sé como hacerlo. Digamos que en la foto solo tendrían que verse las lineas con cuadro rojo que son las que corresponden a 2013. Adunto la app por si sirve de ayuda.

 Este es mi script:

// Cargo los dataset

[cursos]:

LOAD

    codigoCurso,

    curso,

    Date(Date#([fechaInicio], 'DD/MM/YYYY') ) AS [fechaInicio],

Date(Date#([fechaFin], 'DD/MM/YYYY') ) AS [fechaFin],

    profesor

FROM [lib://AttachedFiles/Cursos.csv]

 

(txt, codepage is 28591, embedded labels, delimiter is ';', msq);

 

[profesores]:

LOAD

    profesor,

    Grupo,

    Date(Date#([miembroDesde], 'DD/MM/YYYY') ) AS [miembroDesde],

Date(Date#([miembroHasta], 'DD/MM/YYYY') ) AS [miembroHasta]

FROM [lib://AttachedFiles/profesores.csv]

(txt, codepage is 28591, embedded labels, delimiter is ';', msq);

 

// Creo el intervalo para las fechaInicio y fechaFin de la tabla cursos

MinMaxDate:

Load

  RangeMin(Min(fechaInicio),Min(fechaFin)) as MinDate,

  RangeMax(Max(fechaInicio),Max(fechaFin)) as MaxDate

Resident cursos;

 

Let vMinDate = Num(Peek('MinDate',0,'MinMaxDate'));

Let vMaxDate = Num(Peek('MaxDate',0,'MinMaxDate'));

 

Drop Table MinMaxDate;

 

Calendar:

Load

  Date(TempDate) as Date,

  Month(TempDate) as Month,

  Year(TempDate) as Year,

  Date(MonthStart(TempDate),'DD/MM/YYYY') as MonthYear;

Load

  $(vMinDate)+IterNo()-1 as TempDate

AutoGenerate 1

While $(vMinDate)+IterNo()-1 <= $(vMaxDate);

 

IntervalMatch(Date)

Load fechaInicio, fechaFin Resident cursos;

0 Replies