Очень часто у нас возникает необходимость в повторении одних и тех же действий на компьютере. В большинстве случаем рутинные действия могут быть автоматизированы до такой степени, что вмешательство человека будет минимальным. Программисты уже давно используют такие инструменты как cron в линуксе или назначение заданий в виндовсе, да и большинство программ и/или сайтов/сервисов позволяют настраивать разные периодические действия. Мне, например, с периодичностью раз в год на телефон в виде смс приходят напоминания о днях рождения друзе с календарей гугла. Ситуаций, когда нужно проделать те или иные действия в указанное время очень и очень много. Не стала исключением и 1с. Довольно часто нам нужно выполнять некоторые действия с заданной периодичностю: выгружать данные из 1с на сайт, обмениваться данными с другой базой, сформировать отчет про остатки на складе и послать шефу на електронку. На большинстве фирм задача решается просто берется работник и ему в обязанности вменяется формирование отчетов, запуск выгрузки и т.д. Мы же попробуем разобраться, что предлагает 1с-ка для облегчения работы тружеников бухгалтерии.
В 1с разработчики также встроили механизм, который отвечает за периодическое (регламентное) выполнение тех или иных задачи назвали его «Регламентные задания».
Регламентное задание это по сути дела процедура, которая выполняется не при наступлении события, а по расписанию – «когда часы полночь пробьют». В конфигураторе настройка регламентного задания сводится к указанию процедуры обработчика и указанию расписания
Нужно отметить разное поведение системы при работе в файловом и клиент-серверном режимах. Если системе работает в клиент-серверном режиме, то регламентные задания выполняются на сервере автоматически, запускается фоновый процесс и выполняется регламентное задание. Если же система работает в файловом варианте то для того чтобы регламентное задание было выполнено нужно вызвать команду выполнитьобработкуЗаданий();
Как правило, в типовых конфигурациях Украины и России используется следующая логика: в константах указывается пользователь, от имени которого будут, выполнятся регламентные задания, если такой пользователь вошел в систему, то регламентные задания будут выполнятся, если не вошел то не будут. Кстати при работе в клиент-серверном варианте выполнение регламентных заданий можно отключить в консоли управления сервером.