Программно вызвать аварийное завершение регламентного задания

1. _Vanda_ 16.11.23 12:15 Сейчас в теме
Всем доброго дня!
Платформа: v8.3.23.1739
Вопрос такой:есть доп.обработка, которая работает по регламентному заданию, получает данные из другой базы данных. В случае если данных нет возвращает пустой результат.
Не получается вызвать аварийное завершение работы этого регл.задания, чтобы через сутки данное задание повторилось.
Пробовала через
Если Данные.Количество() = 0 Тогда
ВызватьИсключение("тут описание",  КатегорияОшибки.ОшибкаВнешнегоИсточникаДанных)
КонецЕсли;

и так
Если Данные.Количество() = 0 Тогда
Попытка
А=1/0;
Исключение
ВызватьИсключение("тут описание",  КатегорияОшибки.ОшибкаВнешнегоИсточникаДанных)
КонецПопытки;
КонецЕсли;

В форме списка регл.заданий всегда указывается, что задание выполнено, а надо чтобы фиксировалась ошибка.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 35 16.11.23 12:29 Сейчас в теме
(1)Возможно выше по коду есть уже Попытка Исключение, в которые и попадает ваше исключение.
4. _Vanda_ 16.11.23 13:37 Сейчас в теме
(2)попытки есть, но в них он не заходит, проверено. Если бы зашел - сформировалась бы запись в ЖР.
14. nomad_irk 76 16.11.23 14:50 Сейчас в теме
(1)ээээ....
А = 1/Данные.Количество()
3. soft_wind 16.11.23 12:59 Сейчас в теме
попробуйте вставить команду ВызватьИсключение
а периодичность задается в консоли рег.заданий в расписании
5. _Vanda_ 16.11.23 13:39 Сейчас в теме
(3)куда вставит? вы похоже не читали мое сообщение полностью, я все указала и знаю как указывать периодичность)вопрос не в этом, а в том, что в ошибку не уходит.
6. soft_wind 16.11.23 13:45 Сейчас в теме
а зачем вам именно Ошибка?
ну прервали и прервали выполнение регламента

выведите Сообщение - "Обработано 0 Данных!"

его как раз в обработке Консоль заданий и увидите.
7. _Vanda_ 16.11.23 13:49 Сейчас в теме
(6)чтобы автоматически запустилось на след. день и через день если данных все так же нет. Потому что данные в любом случае должны появится, а если нет, тогда чтоб наглядно было видно, что регламентное не может получить информацию из другой базы данных.
8. soft_wind 16.11.23 13:52 Сейчас в теме
(7) "чтобы автоматически запустилось на след. день"

так это же в расписании настраивается, периодичность,
хоть через день, хоть раз в месяц,

ошибки то здесь причем?
10. _Vanda_ 16.11.23 14:07 Сейчас в теме
(8)есть 2 базы, одна обращается к другой базе, данные не получили - зафиксировали ошибку, что данных нет, задание не выполнено. В самом регл. задании можно указать сколько раз нужно повторять запуск при ошибке. Можно конечно и в расписании тупо указать, чтоб каждый день загружались одни и те же данные, но зачем? а если у нас данные подгрузит, все ок, зачем нам на след.день опять запускать регламентное? для чего? чтобы снова получить те же данные? а смысл? надо запускать один раз месяц, первого числа, получил - хорошо, не получил -повторил попытку через определенное время. У меня сейчас нет цели любом случае загружать данные. Есть платформенный функционал 1с, где можно задать кол-во повторений в случае ошибки, хотелось бы понять почему у меня не получается сделать так чтобы работа рег.задания завершалась с ошибкой.
9. soft_wind 16.11.23 13:56 Сейчас в теме
так и настройте расписание
Запускать Каждый день в 6:00

будут данные, ваш регламент/обработка что-то обработает
не будет данных - просто завершится
(до следующего запуска по расписанию)
11. soft_wind 16.11.23 14:26 Сейчас в теме
(10) просто проанализируйте с какой скоростью, как часто появляются нужные для обработки данные!
исходя из частоты появления данных и задавайте периодичность выполнения. (может с небольшим запасом)

и в регламенте сделайте правильный анализ входных данных
что бы одни и теже данные не обрабатывались! (Зачем одно и тоже обрабатывать?)

и при работе, проверили, если есть новые данные, то они обрабатываются, если нет то обработка завершается.

так многие регламенты и работают, в режиме ожидания. в этом и суть регламента ОДИН раз запустил и забыл о нем..
12. _Vanda_ 16.11.23 14:31 Сейчас в теме
(11)прочитайте то, что я писала выше пожалуйста, то что вы предлагаете - с этим все ясно и понятно как божий день. Сейчас я ищу ответ на другой вопрос: почему не получается прервать регл.задание аварийно. У вас есть ответ на этот вопрос?
13. soft_wind 16.11.23 14:39 Сейчас в теме
да понятно что вы выше писали!

просто хотел объяснить что так ни кто не делает! (поэтому и советов-то нет)
все делают как вы пишите как - "все ясно и понятно как божий день"

уж если вам совсем все необычно зудит сделать, то как советовали выше,
ищите в коде вашего регламента команды Попытка и убирайте их!
тогда сработает ваше ВызватьИсключение

(ну что тут еще скажешь...)
15. sergioevans 18.11.23 00:24 Сейчас в теме
Странно, конечно, что ВызватьИсключение не прерывает регл.задание аварийно. Ладно.
Я бы пошёл другим путём. Сделал константу с типом Дата "ДатаСледующейЗагрузкиДанных" например. Пусть регзадание ломится в другую базу каждый день, но как только получает данные, сдвигает дату следующей загрузки на начало следующего месяца. А при старте регзадания, соответственно, проверяет константу и завершается, если в ней дата больше текущей, а если меньше или равна, то ломится в базу в надежде получить данные.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот