Qlik Community

Ask a Question

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
On Demand Webinar: See Why Thousands of QlikView Users Have Switched to Qlik Sense. REGISTER
cancel
Showing results for 
Search instead for 
Did you mean: 
dominicanlauf
Contributor III
Contributor III

Auswertung der letzten 2/3 Tage

Hallo zusammen,

ich habe eine Auswertung in Qlikview erstellt, die Aussagen darüber gibt, wie produktiv die Fertigung ist (Anlagenverfügbarkeit, Ausschussrate, etc.). Die Auswertung funktioniert so, dass ich die Tage, die ich vergleichen möchte, in meiner Multibox (Filter) auswähle.

Da die Auswertung allerdings auch in der Fertigung genutzt werden soll, sollen automatisch die letzten (aktuellsten) beiden oder drei Tage angezeigt werden für die Werte vorliegen, ohne dass ich jedes Mal das Datum auswählen muss.

Wie kann ich das umsetzen?

Vielen Dank und beste Grüße,

Dominic Anlauf

 

 

1 Reply
zhadrakas
Specialist II
Specialist II

Hallo Dominic,

Hast du bereits einen Masterkalender?
Falls nicht solltest du den erstmal einbauen und dann um ein Flag_Letzte3_Tage erweitern.
Hier mal ein Beispielcode für den Masterkalender und das Flag:

QuartersMap:
MAPPING LOAD 
rowno() as Month,
'Q' & Ceil (rowno()/3) as Quarter
AUTOGENERATE (12);

Temp:
Load
           min(DATUM) as minDate,
           max(DATUM) as maxDate,
           max(DATUM,3) as Last3Days
Resident DEINE_TABELLE_WO_DAS_DATUM_DRIN_STEHT;

Let varMinDate = Num(Peek('minDate', 0, 'Temp'));
Let varMaxDate = Num(Peek('maxDate', 0, 'Temp'));
Let varLast3Days = Num(Peek('Last3Days', 0, 'Temp'));
DROP Table Temp;´

TempCalendar:
LOAD
           $(varMinDate) + Iterno()-1 As Num,
           Date($(varMinDate) + IterNo() - 1) as TempDate
           AutoGenerate 1 While $(varMinDate) + IterNo() -1 <= $(varMaxDate);

MasterCalendar:
Load
           TempDate AS DATUM,
           if(TempDate >= $(varLast3Days),1,0) as FLAG_LAST_3_DAYS,
           week(TempDate) As Week,
           Year(TempDate) As Year,
           Month(TempDate) As Month,
           Day(TempDate) As Day,
           YeartoDate(TempDate)*-1 as CurYTDFlag,
           YeartoDate(TempDate,-1)*-1 as LastYTDFlag,
           inyear(TempDate, Monthstart($(varMaxDate)),-1) as RC12,
           date(monthstart(TempDate), 'MMM-YYYY') as MonthYear,
           ApplyMap('QuartersMap', month(TempDate), Null()) as Quarter,
           Week(weekstart(TempDate)) & '-' & WeekYear(TempDate) as WeekYear,
           WeekDay(TempDate) as WeekDay
Resident TempCalendar
Order By TempDate ASC;
Drop Table TempCalendar;

//Cleanup
Let varMinDate =;
Let varMaxDate =;
Let varLast3Days =;

Nun kannst du in deiner Multibox das Flag einfügen. Bei Auswahl der 1 bekommst du nur noch die letzten 3 Tage angezeigt. Das kannst auf alle nötigen Intervalle erweitern.

Gruß

Tim