Discussion Board for collaboration related to QlikView App Development.
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
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