Events can have a regular repeat specification, so they repeat on some kind of regular schedule. Repeated events are stored in the database with a start date and a rule specification, so they do not take up much more room than a non-repeat event. In the edit dialog, click on the Repeat button to display the Repeat Dialog where you can set these options. All regular repeat specifications share some common features:
The Every field defaults to 1 - meaning the item repeats every interval (every day on a daily repeat, every week on a weekly repeat, etc.). If you set that to 2 it will repeat every other interval, '3' - repeats every third interval, etc. There is no actual limit to how large the Every field can be, however if you sync with other calendar applications, there may well be some limit (such as 99 days).
This field has the repeat end date. By default, there is no end date for repeats and the event will repeat indefinitely. If you want the event to end earlier, tap on the button and the standard Date Picker appears at which point you can pick the end date for the event. Pimlical will not display any repeat occurrences after this date. You can also enter the number of occurrences for the repeat with a long-press on the Repeat End Date button. In the dialog that appears, just enter the number of times the event repeats. Pimlical will then automatically calculate the repeat end date based upon the number of occurrences that you enter (if you use this feature, be sure to set the Every field first so it takes that into consideration when calculating the repeat end date.
If you have an event that does not repeat on a regular schedule, Pimlical does have a feature to handle that - see the section on Irregular Repeats. By clicking on this button, you can enter irregular repeat instances that are loosely grouped with the original repeat. For Example, in the US, election day is on the first Tuesday that follows the first Monday in November, every four years - there is no way to handle that with a regular repeat specification, so use an irregular repeat to quickly enter the next N years of events.
Only show Next Occurrence
If you check this box, Pimlical only displays the next occurrence of a repeat event. If unchecked (normal case), all repeat instances are displayed in the calendar. Use this feature when you don't want to clutter up the calendar with a lot of repeats (for example, you might have a daily reminder to take a pill, etc.).
Reschedule from Checkoff Date
This checkbox only appears if the event is marked as a floating event or task as regular events do not have this feature. If checked, when you mark an instance of repeat floating event, or repeat task as complete, the task is rescheduled based upon the checkoff date and not based upon when the next occurrence would normally occur. For example, you have a weekly repeat on Monday as a floating event. You do not complete the task until Tuesday and check it off on Tuesday. The repeat floating event is now rescheduled to repeat on Tuesdays and will be rescheduled to repeat weekly starting with the next Tuesday. You might have a repeat floating event that runs every 3 months to remind you have a haircut. If you are a month late getting your haircut, you want to wait another three months and not be reminded in two months - so you would check this box.
The drop-down list at the top of the dialog selects the type of repeat:
This handles events that repeat on a daily basis. The Every field defaults to 1 - meaning the item repeats every day. To repeat on certain days of the week (such as just Monday-Friday) use a weekly repeat - see below.
This handles events that repeat on a weekly basis and on possibly more than one day a week. When this option is selected, a button appears to the right of the Every field with the day of the week that the item will repeat on. Tap that button to display a list of the days of the week and check which days the item should appear on. For example, if you want an event that just repeats on weekends, you would set a weekly repeat on Sat/Sun).
Monthly by Day (of week)
This handles events that repeat on a specific day and week of the month. For example, you may have a meeting that is on the second Tuesday of the month. In this case, the drop-down list actually displays the repeat as something like Monthly: 1st Sat. The repeat will be based upon the start date of the event, so make sure you set the start date before entering the repeat dialog.
Monthly by Date
This handles events that repeat on a specific day of the month - for example, the tenth day of the month. Again the drop-down list displays the actual repeat - for example: Monthly: Day 3. You can also set advanced type of repeat which repeats on the first day of the week after the specified day of the month (see below).
Yearly by Day (of week)
This handles events that repeat on a specific day, week and month of the year. For example, you may have an annual retreat that is on the second Tuesday of June. In this case, the drop-down list actually displays the repeat as something like Yearly: Jun, 2nd Tue. The repeat will be based upon the start date of the event, so make sure you set the start date before entering the repeat dialog.
Yearly by Date
This handles events that repeat on a specific day and month of the year - for example, the tenth day of November. Again the drop-down list displays the actual repeat - for example: Yearly: Nov, Day 3. You can also set advanced type of repeat which repeats on the first day of the week after the specified day of the month (see below).
Special Issues with Monthly/Yearly by Day repeats
Months can have 4 or 5 occurrences of a day of the week and sometimes it's important to distinguish between an event that appears on the fourth week of the month versus the last week of the month. If set for the last week of the month, the event will then appear in the fourth week if that day only appears in the fourth week of the month, or in the fifth week of the month if that day appears in the fifth week.
When you select a repeat by Day and the date you have chosen is such that the day is in the fourth week of the month, you will first only see the option to use the fourth week of the month. However, if you then tap on the OK button and tap on the Repeat button again, Pimlical now adds the additional options to use the last week of the month as well as the fourth week of the month, so you can change it if you wish.
For setting up repeats only on the fifth week of the month, see section Advanced Monthly by Date or Yearly by Date Repeats below.
Special Issues with Monthly by Date repeats
If you set an item to repeat on the 31st day of the month, what happens in months that have fewer days? The answer is that the event will appear on the last day of that month instead. So if you schedule an event for February 29, it will in fact appear on February 28 in non-leap years, so if you only want the event to repeat on February 29, be sure to start it in a leap year and set it to repeat every 4 years (which will work as expected for the entire Pimlical Calendar with the exception of February 1900 which was not a leap year as that is the only year in the calendar divisible by 4 that is not a leap year - every 100 years there is no leap year and every 400 years there is a leap year).
If the month the event starts in only has 30 days or less and you want it to always repeat on the last day of the month, you will need to start the event on the latest, prior month that does have 31 days. You can then delete the one or two occurrences of the repeat event that occur before the actual starting date you want.
Special Issues with Making Exceptions to Repeat Series in an Android/Google Calendar
If you edit a repeat series in Pimlical, any changes you make only apply to the repeat series itself and not ti any exception events that have been created. However, if the event is in an Android calendar, then after the event is synched to Google Calendar, those changes ARE applied to all the exception events as well and will be reflected in Pimlical calndar on the next refresh of the calendar. The same operation on a repeat series in the local calendar will only affect the series itself and never affects exceptions to the repeat series.
It should also be clear that there are some operations that are likely to cause inconsistencies when syncing with Google Calendar. For example, if you create a repeat series in an Android calendar and make various exceptions and deletions and then move the repeat series and/or some exceptions into a local calendar (or vice-versa), it's not likely that all the exceptions, deletions, attributes will be preserved as might be expected.
Birthdays and Anniversaries
You can set up yearly repeats with an Action Tag to mark the event as a birthday or anniversary - the event will then show you how old the person is or what the anniversary year is. The tag also allows you to set the starting year, so that an event like Independence day can be entered even though the start date is outside of the normal range of Pimlical's Calendar (1900-2099). See the section on Action Tags.
Advanced Monthly by Date or Yearly by Date Repeats
Pimlical supports an advanced type of monthly-by-date and yearly-by-date rules to handle complex repeats like the Black Friday case - you can set the repeat to occur on the first specified day of the week after the designated repeat occurrence. If you set a yearly repeat on December 26th and then select the Monday checkbox, the event will repeat on the first Monday that follows Christmas day (25th of December).
With a bit more care and study, you can also use this to select a repeat day to follow the By-Day repeat rules as well (where an item repeats say on the 3rd Tuesday of the month). The trick here is that you have to determine the earliest day of the month on which that item could occur and then pick the day after that. Fortunately, that's a fixed value and you can use the table below to determine which day of the month to use to accomplish that. First determine how many days after the event it is occurring based upon the number of days in the week. For example, in the Black Friday case that would be 1 day after (Thanskgiving is on Thursday and Black Friday is on Friday), for Cyber Monday, that would be four days after (Monday is four days after Thursday). That determines which row to use in the table below. Then use the week of the repeat to pick the column:
|Week of Repeat:||First||Second||Third||Fourth|
|One day later in week||2||9||16||23|
|Two days later in week||3||10||17||24|
|Three day laters in week||4||11||18||25|
|Four days later in week||5||12||19||26|
|Five days later in week||6||13||20||27|
|Six days later in week||7||14||21||28|
|Seven days later in week||8||15||22||29|
Example: Black Friday is the Friday after Thanksgiving (Thanksgiving occurs on the fourth Thursday in November) in the USA. Since Thanksgiving occurs on the fourth Thursday in November and we want the following Friday, we pick the first row (One Day Later in Week) and the last column which provides the value of 23.
Since the earliest that Thanksgiving occurs is the 22nd of November, you can set the repeat to repeat on the first Friday on or after the 23rd of November. Cyber Monday would be the first Monday on or after the 26th of November (Four Days Later in Week). Note that many calendar applications do not support this advanced type of repeat (for example, Google calendar will display such a repeat if imported by iCalendar or synced, but it won't allow the user to edit it).This feature is now also supported in Pimlical's iCalendar import/export. If you pick two or more days of the week to repeat on, Pimlical will pick the earliest, selected day of the week that occurs after the desginated day of the month (it does not repeat on each of the selected days).
Another unusual case that this type of repeat handles is the case where you want an item to only repeat on the fifth week of the month and to skip months that don't have a fifth week. To handle that case, note that the repeat can not possibly occur earlier than the 29th of the month. So, if you set up a repeat on the 29th of the month and then select a day of the week, the item will only repeat in those months that have a fifth week - months that do not have a fifth week show no occurrence of the item (contrast this with a normal repeat on the last week of the month that would display it on the fourth weekk in those months that had no fifth week).