Ich arbeite an einem Projekt und muss Wiederholungen für einen Datumsbereich mithilfe der iCal4J-Bibliothek generieren. Grundsätzlich ist es eine einfache RRule, die jeden Freitag für die Dauer von sechs Monaten wöchentlich wiederholt wird. DieseWiederholungsregel bis zur Verwendung von iCal4J
ist, was ich habe:
Recur recur = new Recur("FREQ=WEEKLY;INTERVAL=1;BYDAY=FR;WKST=MO;UNTIL=20170428T003000Z;");
DateTime startDate = new DateTime("20160727T0030000Z");
Date endDate = recur.getUntil();
DateTime baseDate = new DateTime("20160727T003000Z");
DateList dateList = recur.getDates(baseDate, startDate, endDate, Value.DATE_TIME);
Dies erzeugt wöchentliche Treffen jeden Freitag um halb Mitternacht, aber die letzte Sitzung am 27/01/2017 sein sollte, sondern es ist 20/01/2017.
Ein Treffen wird herausgenommen. Ps dies geschieht nur innerhalb dieses Datumsbereichs (vielleicht etwas mit Britsh Summer Time BST zu tun), aber es ist UTC eingestellt, daher sollte es nicht wichtig, richtig?
Wenn ich dann die UNTIL-Eigenschaft von der Wiederholungsregel zu 21-01-2017 um 23:59:59 ändern, dann wird es abgeholt.
Irgendwelche Vorschläge?
Grüße
Danke für die Antwort. Ich habe es geschafft, indem ich den UNTIL-Parameter auf 235959 änderte. So sieht es jetzt aus: '" RRULE: FREQ = WÖCHENTLICH; BYDAY = FR; INTERVAL = 1; UNTIL = 20170427T235959Z "' –
Das hat funktioniert, das Problem ist, dass es nach Daten vor dem bis zu Datum raten sucht, die vorher und gleich sind. Vielen Dank –