2016-07-21 5 views
0

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

Antwort

1

es ausprobieren: Hier ist ein Beispiel für meine Wiederholungsregel für gleiche ist.

Wenn mein Startdatum 2016.10.08 ist und das Datum ist 2016.10.12 dann wird dies für alle Freitag wiederkehrende Termine schafft zwischen diesen beiden Terminen kommen.

Weekly Recurrence Regel ist

RRULE:FREQ=WEEKLY;BYDAY=FR;INTERVAL=1;UNTIL=20161218T000000Z 
RRULE:FREQ=WEEKLY;BYDAY=<Day of week>;INTERVAL=<Every month/with some interval>;UNTIL=<Until Date> 

So nach dieser die Regel sein wird: "RRULE:FREQ=WEEKLY;BYDAY=FR;INTERVAL=1;UNTIL=20170428T003000Z"

+0

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 "' –

+0

Das hat funktioniert, das Problem ist, dass es nach Daten vor dem bis zu Datum raten sucht, die vorher und gleich sind. Vielen Dank –

Verwandte Themen