Generowanie wystąpień z wzorca powtarzania

Za pomocą Aspose.Email można generować wystąpienia przy użyciu wzorca powtarzania. Ten artykuł wyjaśnia, jak to zrobić, jak wygeneruj następne wystąpienie i pobierz przyjazne dla użytkownika opisy elementówWystąpienia z wzorca powtarzania kalendarza MAPI można generować przy użyciu Aspose.Email. Poniższy fragment kodu pokazuje, jak generować wystąpienia z wzorców powtarzania.

Oblicz następne wystąpienie lub n kolejnych wystąpień

Aby uzyskać „następne” wystąpienie, użyj metody GenerateOccurrences z parametrem nNextOccurrences = 1. Poniższy fragment kodu pokazuje, jak wygenerować 20 wystąpień, używając nNextOccurrences = 20. Wynik poniższego kodu jest następujący:

todo:image_alt_text

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

CalendarRecurrence recurrencePattern = new CalendarRecurrence();

recurrencePattern.setStartDate(sdf.parse("1997-09-10 09:00:00"));
RecurrenceRule rule = recurrencePattern.getRRules().add();
rule.setFrequency(Frequency.Monthly);
rule.setCount(20);
rule.setInterval(18);
rule.getByMonthDay().add(new int[] { 10, 11, 12, 13, 14, 15 });
DateCollection expectedDates = recurrencePattern.generateOccurrences(20);
System.out.println("expectedDates.Count = " + expectedDates.size());
for (int i = 0; i < expectedDates.size(); i++) {
    System.out.println("DateTime = " + sdf.format(expectedDates.getItem(i)));
}

Uzyskaj czytelny dla użytkownika tekst powtarzania

Czytelny dla użytkownika tekst reguły można uzyskać przy użyciu właściwości FriendlyText, jak pokazano poniżej. Wynik kodu będzie: "Powtarzaj co miesiąc w 1. i 1. dniu od końca miesiąca, maksymalnie 2 wystąpienia.". Poniższy fragment kodu pokazuje, jak uzyskać czytelny dla użytkownika tekst powtarzania.

RecurrenceRule rule = recurrencePattern.getRRules().add();
rule.setFrequency(Frequency.Monthly);
rule.setCount(2);
rule.getByMonthDay().add(1);
rule.getByMonthDay().add(-1);
System.out.println(rule.getFriendlyText());