Kleara · Бібліотека
Уникайте повторних подій в експортах прибирання, що перекриваються
Два чотиритижневі календарі прибирання, що накладаються, мають 21 спільну подію. Порівняйте ідентифікатори й дати до імпорту другого файлу, щоб не рахувати роботу двічі.
Чому файли, що перекриваються, рахують двічі
Припустімо, ви зберігаєте календар прибирання на чотири тижні зараз і другий через два тижні, обидва з одного плану для кухні й спальні. Файли охоплюють частину тих самих днів, тож деякі повторення є в обох. Якщо скласти рядки обох файлів, запланованої роботи вийде більше, ніж насправді.
Кожна подія в календарному файлі Kleara має ідентифікатор із кімнати, справи, її позиції в кімнаті й дати, наприклад kitchen.taskSink.0.2026-11-10@kleara.vomcore.com. Те саме повторення має однаковий ідентифікатор в обох файлах.
Пара файлів із прикладу
Перший файл охоплює період із 26 жовтня по 22 листопада 2026 року й містить 46 подій. Другий охоплює період із 9 листопада по 6 грудня й містить 44. Двадцять один ідентифікатор є в обох, лишається 69 різних повторень — рівно стільки, скільки дає одне розгортання того самого плану на 42 дні.
Спільні події припадають на 9–22 листопада — два тижні, які охоплюють обидва файли. Кожна з них — подія на весь день: кінець 20261110 після початку 20261109 означає один день, а не два дні роботи.
Перевірте до імпорту другого файлу
- Спершу порівняйте діапазони дат: будь-яке перекриття означає, що спільні події, найімовірніше, є.
- Порівнюйте ідентифікатори, а не заголовки: дві події «Кухня: Почистити раковину» в різні дні — це різні повторення.
- Збережіть перший файл, доки не побачите, як ваша календарна програма обробила другий імпорт: програми по-різному вирішують, чи оновлювати подію з відомим ідентифікатором, чи додавати копію.
- Якщо перекриття не має бути зовсім, оберіть другий діапазон, що починається наступного дня після закінчення першого.
Межі ідентифікатора
Ідентифікатор називає справу й дату, а не версію плану. Якщо між двома завантаженнями ви змінили періодичність, повторення може зберегти дату й ідентифікатор, а пізніші дати зміняться; порівнюйте й налаштування справ.
Попередній перегляд планувальника завжди охоплює 28 днів від обраної вами дати початку, і кожен новий розрахунок заново вирівнює дні старту. Тому файли з різними датами початку не обов’язково збігатимуться за датами для тієї самої справи. Сам застосунок календарів не експортує; у ньому ведеться один поточний план.
Заплановані повторення завдань
| A, B | Заплановані повторення завдань |
|---|---|
| |A| | 46 |
| |B| | 44 |
| |A ∩ B| | 21 |
| |A ∪ B| | 69 |
Результати
| UID | DTSTART | DTEND |
|---|---|---|
| kitchen.taskMop.1.2026-10-26@kleara.vomcore.com | 20261026 | 20261027 |
| kitchen.taskSink.0.2026-10-26@kleara.vomcore.com | 20261026 | 20261027 |
| bedroom.taskVacuum.1.2026-10-27@kleara.vomcore.com | 20261027 | 20261028 |
| kitchen.taskTrash.2.2026-10-27@kleara.vomcore.com | 20261027 | 20261028 |
| bedroom.taskDust.2.2026-10-28@kleara.vomcore.com | 20261028 | 20261029 |
| kitchen.taskDishwasher.3.2026-10-28@kleara.vomcore.com | 20261028 | 20261029 |
| bedroom.taskSheets.0.2026-10-29@kleara.vomcore.com | 20261029 | 20261030 |
| kitchen.taskSink.0.2026-10-29@kleara.vomcore.com | 20261029 | 20261030 |
| kitchen.taskFridge.4.2026-10-30@kleara.vomcore.com | 20261030 | 20261031 |
| kitchen.taskTrash.2.2026-10-30@kleara.vomcore.com | 20261030 | 20261031 |