Еще один вариант реализации тацймера для учета, например времени выполнения задач.
Основная идея заключается в том, чтобы использовать регистр сведений для хранения интервалов таймера.
При этом в оперативной памяти не крутится постоянно обработчик ожидания.
Таймер представлен как заготовка и демонстрация в виде внешней обработки.
Для ее успешной работы в конфигураторе нужно добавить 2 объекта:
1. Регистр сведений ИнтервалыВыполненияЗадач
Измерения:
- Задача (ЗадачаСсылка)
- ВидИнтервала (ПеречислениеСсылка.ВидыИнтерваловИсполненияЗадач)
Ресурсы:
- НачалоИнтервала (Дата и время)
- НачалоИнтервала (Дата и время)
2. Перечисление ВидыИнтерваловИсполненияЗадач
Значения:
- Исполнение
- Пауза
В обработке:
- При нажатии на кнопку "принять к исполнению" - создается новая запись в регистр сведений с видом "исполнение"
- При нажатии на кнопку "пауза" - предыдущая запись завершается, создается новая с видом "пауза"
- При нажатии на кнопку "продолжить" - предыдущая запись завершается, создается новая с видом "исполнение"
- При нажатии на кнопку "выполнить" - предыдущая запись завершается.
- При нажатии на кнопку "Рассчитать длительность" - суммируется длительность всех интервалов с видом "исполнение"
Область применения этого метода - например, конфигурации, основанные на бизнес процессах, когда пользователю приходится выполнять несколько задач одновременно и важно знать точную длительность работы над ней.
Спасибо за внимание