Как автоматически запускать процедуру по расписанию

1. j_a_mmm 24.03.17 07:11 Сейчас в теме
Добрый день!
Абсолютный новичок в разработке 1С. Версия: 8.3.
Имеется обработка, которая открывает форму для выгрузки данных из базы в текстовый файл. Этот механизм сейчас работает в ручном режиме: задается руками период выгрузки (начало текущего месяца - текущая дата), указывается имя и путь к выгружаемому файлу и нажимается кнопка выполнения.
Сейчас поступило задание организовать запуск этого процесса в автоматическом режиме по расписанию каждые 10 минут. Что для этого нужно сделать?
Посмотрел в Конфигураторе модуль объекта - нашел в нем процедуру, реализующую данный механизм. Я так понимаю, что в ней надо:
1) программно рассчитать период выгрузки, типа:
Сообщить(ТекущаяДата());
	Сообщить(НачалоМесяца(ТекущаяДата()));
	НачалоПериода = НачалоМесяца(ТекущаяДата());
	КонецПериода = ТекущаяДата();

2) указать имя и путь к выгружаемому файлу, типа:
ФайлДанных.Записать("s:\export.txt", КодировкаТекста.ANSI); 

3) как-то ее запускать по расписанию без открытия формы?
Собственно, прошу помочь с третьим пунктом, если остальные я прописал верно.
По теме из базы знаний
Найденные решения
2. DmitriyPopow 33 24.03.17 08:27 Сейчас в теме
(1) создаешь регламентное задание, в общий модуль (можешь свой создать) пишешь процедуру выгрузки т.е. из формы обработки переносишь в этот модуль и программно прописываешь параметры необходимые, и для регламентного задания указываешь расписание выгрузки. это если база серверная. если файловая то обработчик ожидания наверное использовать, но с общим модулем смысл тот же.
11. ipoloskov 162 30.03.17 13:31 Сейчас в теме
Папка с:\files\ на сервере существует? Права на запись в нее у пользователя USR1CV8 есть?
Ключ тут совершенно ни при чем
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. DmitriyPopow 33 24.03.17 08:27 Сейчас в теме
(1) создаешь регламентное задание, в общий модуль (можешь свой создать) пишешь процедуру выгрузки т.е. из формы обработки переносишь в этот модуль и программно прописываешь параметры необходимые, и для регламентного задания указываешь расписание выгрузки. это если база серверная. если файловая то обработчик ожидания наверное использовать, но с общим модулем смысл тот же.
6. j_a_mmm 30.03.17 11:20 Сейчас в теме
(2) Сделал всё по твоему совету - регламентное задание не срабатывает. Ставил в нем галочки "Предопределенное", "Использование" во всех вариациях. Для проверки создал обработку, в ней - форму, на форме - кнопку, по нажатию которой необходимая процедура (точно такая же как в созданном общем модуле) должна сработать и файл выгрузить. Всё работает отлично.
Куда еще посмотреть?
(4) В книге посмотрел про создание регламентных заданий и делал аналогично.
8. olegmedvedev 65 30.03.17 11:36 Сейчас в теме
(6) база файловая или SQL? если SQL то посмотрите в Агенте администрирования серверов 1С - не стоит ли галочка "блокировка регламентированных заданий"
9. Boneman 298 30.03.17 11:44 Сейчас в теме
(6) регламентное не запускается, или запускается но не делает то, что нужно ?
В консоли фоновых и регламентных заданий, добавил ? Расписание настроил ? Там должно четко быть видно, что оно запускается...и если там что-то не отрабатывает, то видно что завершилось с ошибкой, или успешно.
10. j_a_mmm 30.03.17 13:25 Сейчас в теме
(9) В Консоли заданий состояние моего регламентного задания: "Задание завершено с ошибкой".
Ошибка фонового задания: "Недостаточно фактических параметров для метода фонового задания". Попробовал убрать в объявлении процедуры параметры (НачалоПериода и КонецПериода) - теперь в консоли: "Ошибка при вызове метода контекста (Записать)".
Файл пытался уже писать не на сетевой диск, а на сам сервер двумя способами:
1) ФайлДанных.Записать("с:\files\export.txt", КодировкаТекста.ANSI);
2) ФайлДанных.Записать("\\server\files\export.txt", КодировкаТекста.ANSI);
В обоих случаях вылезает вышеуказанная ошибка.
Что интересно: в Консоли заданий есть еще другое регламентное задание, выполняемое без ошибок и тоже на сервере, и у него заполнено поле "Ключ", в отличие от моего задания.
12. Boneman 298 30.03.17 13:37 Сейчас в теме
(10)
Ошибка фонового задания: "Недостаточно фактических параметров для метода фонового задания".

Значит оно все-таки запускается. Это твой код не работает.
Ну тут уже смотреть по факту надо. Это не в файледанныхЗаписать проблема. там была бы другая ошибка.

Явно в твоем коде вызывается процедура, где должны быть обязательные параметры но их нет.
Выкладывай тогда тексты твоего творения полностью, чтобы можно было понять.
4. kolya_tlt 86 24.03.17 08:49 Сейчас в теме
(1) 1. купить книгу http://v8.1c.ru/metod/books/book.jsp?id=401
2. открыть книгу
3. прочитать главу с рег заданиями
ipoloskov; necropunk; +2 Ответить
3. binex 277 24.03.17 08:40 Сейчас в теме
По-моему, сейчас в типовых конфигурациях имеется возможность штатно запускать обработки по расписанию, которые зарегистрированы во внешних обработках.
5. Octopus 337 24.03.17 15:58 Сейчас в теме
Надо понимать, что регламентные задания выполняются на стороне сервера. Так что забудьте про Сообщить(), Предупреждение() и прочие уведомления на уровне интерфейса. Но запись в файл сработает.
7. ipoloskov 162 30.03.17 11:32 Сейчас в теме
Если база не файловая, то "s:\export.txt" нужно искать на сервере
А вообще смотрите журнал регистрации с отбором по ошибкам
11. ipoloskov 162 30.03.17 13:31 Сейчас в теме
Папка с:\files\ на сервере существует? Права на запись в нее у пользователя USR1CV8 есть?
Ключ тут совершенно ни при чем
13. j_a_mmm 30.03.17 13:44 Сейчас в теме
(11) Спасибо! Действительно у пользователя USR1CV8 не было прав на запись в папку. Сейчас всё выгружается без ошибок.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)