|
Настроить регламентное задание | ☑ | ||
---|---|---|---|---|
0
Despa1r
11.06.15
✎
16:37
|
Написал код, отбирающий элементы из справочника и отправляющий данные об их количестве на почту. Сам код практически рабочий - засунул в форму с кнопкой, при нажатии отправляется.
Засунул код в модуль, сделал регламентное задание - не отправляется. Менеджер заданий подключен. Консоль заданий добавляет задание и молчит. В журнале регистрации пусто. Расписание настроено нормально. В конфигураторе стоят галки "предопреленное", "использование". На самом модуле "глобальный" и "сервер". Код чуть ниже. |
|||
1
Despa1r
11.06.15
✎
16:39
|
Процедура ПриОпределенииИспользованияРегламентныхЗаданий() Экспорт
Дата1 = ТекущаяДата(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СУММА(1) КАК КоличествоЗаписей |ИЗ | Справочник.Видеоролики КАК Видеоролики |ГДЕ | Видеоролики.ДатаДобавления >= &ДатаНач | И Видеоролики.ДатаДобавления <= &ДатаКон"; Запрос.УстановитьПараметр("ДатаНач",НачалоМесяца(Дата1)); Запрос.УстановитьПараметр("ДатаКон",КонецМесяца(Дата1)); Выборка = Запрос.Выполнить().Выгрузить(); Для каждого строка из Выборка Цикл Сообщить(строка.КоличествоЗаписей); КонецЦикла; Колво = строка.КоличествоЗаписей; ПочтовыйПрофиль = Новый ИнтернетПочтовыйПрофиль; ПочтовыйПрофиль.АдресСервераSMTP = "blababla"; ПочтовыйПрофиль.ПортSMTP = 666; ПочтовыйПрофиль.АутентификацияSMTP = СпособSMTPАутентификации.Login; ПочтовыйПрофиль.ПользовательSMTP = "blababla"; ПочтовыйПрофиль.ПарольSMTP = "blablabla"; Сообщение = Новый ИнтернетПочтовоеСообщение; Сообщение.Получатели.Добавить("[email protected]"); Сообщение.Тема = "Добавленные видеоролики за последний месяц"; Сообщение.Тексты.Добавить("За последний месяц было добавлено видеороликов: " + Колво); Сообщение.Отправитель = "[email protected]"; Сообщение.ИмяОтправителя = "1cBot"; Почта = Новый ИнтернетПочта; Почта.Подключиться(ПочтовыйПрофиль); Почта.Послать(Сообщение); КонецПроцедуры Процедура ВыполнениеРегламентныхЗаданий() ВыполнитьОбработкуЗаданий(); КонецПроцедуры |
|||
2
1sik
11.06.15
✎
16:44
|
Попробуй сначала внешней обработкой запустить процедуру ПриОпределенииИспользованияРегламентныхЗаданий(), если она нормально отработает, тогда можно искать причину в расписании. А то может, что не так с подключением к почтовому серваку или еще с чем нибудь. А еще есть галка блокировка регламентных заданий включена в консоли сервера, если база серверная.
|
|||
3
Despa1r
11.06.15
✎
16:49
|
(2) Процедура отрабатывается. Расписание выставляю в консоли заданий каждый раз заново, сейчас допустим 10 июня 2015, каждый день, с 16:50:00 каждые 30 сек. Как наступит 16:50 ничего не произойдет. Никаких ошибок даже не пишет. Причем заданий два, одно предопределенное, другое нет, оба не работают
|
|||
4
1sik
11.06.15
✎
16:51
|
(3) А если выполнить сейчас нажать?
|
|||
5
Despa1r
11.06.15
✎
16:52
|
(2) Бывает иногда пишет такое:
Метод задания не найден: КоличествоВидеороликов:ПриОпределенииИспользованияРегламентныхЗаданий , хотя модуль находится в разделе Общие Модули, называется "КоличествоВидеороликов" Пишет это когда я убираю Процедура ВыполнениеРегламентныхЗаданий() ВыполнитьОбработкуЗаданий(); КонецПроцедуры |
|||
6
Despa1r
11.06.15
✎
16:52
|
(4) а где это можно сделать? я не нашел
|
|||
7
1sik
11.06.15
✎
16:56
|
Какая конфигурация? В некоторых есть эта кнопка в некоторых может не быть и консоль заданий качать.
Еще модуль должен быть нормально настроен. Галки Клиент сервер и т.д норально проставлены. У меня один раз из за галок не искало процедуру и ругалось на те строки которые даже не использовались в задании. Поэтому всегда ставлю галки сервер, внешнее соединение и вызов сервера. Другие сняты. |
|||
8
Despa1r
11.06.15
✎
17:03
|
(7) Конфигурация тут собственного производства. Консоль заданий отдельно подключал.
Поставил галки как Вы сказали. При изменении расписания пишет теперь "Метод задания не найден: КоличествоВидеороликов:ПриОпределенииИспользованияРегламентныхЗаданий" |
|||
9
Despa1r
11.06.15
✎
17:05
|
(7) Полный текст ошибки
{Форма.ФормаКонсоли.Форма(226)}: Ошибка при вызове метода контекста (Записать) РегламентноеЗадание.Записать(); по причине: Метод задания не найден: КоличествоВидеороликов:ПриОпределенииИспользованияРегламентныхЗаданий |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |