По теме из базы знаний
- Универсальное регламентное задание
- [ТАКСИ] Шаблон внешней обработки...и не только
- Механизм объединения дублей Контрагентов и Партнеров УТ 11
- 1С и Битрикс24, загрузка и прослушивание звонков в 1С. Интерактивно и через регламентное задание. Инициирование звонка битрикс из 1с (секретные команды).
- Использование ботов мессенджеров для автоматизации и упрощения бизнес-процессов
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) AlenkaInt,
во первых сервер должен быть запущен с ключом Debug,иначе вы никогда не попадете в точку останова, так же очень важным является тот факт что бы реквизиты базы (т.е. название базы и сервер 1с в настройках базы которую вы открываете через ярлык 1с) совпадали с реквизитами которые определяет сервер, чтобы это проверить нужно например в журнал регистрации сделать запись из одной какой нибудь рабочего регл задания, либо создать новое регл задание например со следующим кодом
ну либо добавить его в уже имеющееся задание, далее запустить это задание можно принудительно, например через консоль заданий через имя метода, либо просто в обработке через имя метода либо имя задания, это уже как душе угодно, потом глянуть по имени события #1141 что там написано в комментариях ( будет что то типо Srvr="tt-1313:1641";Ref="baza-kaif"; это и будет строка соединения определяемая сервером, далее эту строку скопировать в настройки базы в ярлыке, имя базы в имя базы имя сервера в имя сервера.
еще бывает такое что отладка серверного кода у фоновых заданий доступна только на машине где и располагается сервер (возможно это как то связано с настройками фаервола), т.е. конфигуратор открываем на машине где запущен сервер 1с
ну и конечно же не забываем проставить галку автоматического подключения к фоновым заданиям в нфастройках отладки
во первых сервер должен быть запущен с ключом Debug,иначе вы никогда не попадете в точку останова, так же очень важным является тот факт что бы реквизиты базы (т.е. название базы и сервер 1с в настройках базы которую вы открываете через ярлык 1с) совпадали с реквизитами которые определяет сервер, чтобы это проверить нужно например в журнал регистрации сделать запись из одной какой нибудь рабочего регл задания, либо создать новое регл задание например со следующим кодом
ЗаписьЖурналаРегистрации("#1141", УровеньЖурналаРегистрации.Информация,,, СтрокаСоединенияИнформационнойБазы())
ну либо добавить его в уже имеющееся задание, далее запустить это задание можно принудительно, например через консоль заданий через имя метода, либо просто в обработке через имя метода либо имя задания, это уже как душе угодно, потом глянуть по имени события #1141 что там написано в комментариях ( будет что то типо Srvr="tt-1313:1641";Ref="baza-kaif"; это и будет строка соединения определяемая сервером, далее эту строку скопировать в настройки базы в ярлыке, имя базы в имя базы имя сервера в имя сервера.
еще бывает такое что отладка серверного кода у фоновых заданий доступна только на машине где и располагается сервер (возможно это как то связано с настройками фаервола), т.е. конфигуратор открываем на машине где запущен сервер 1с
ну и конечно же не забываем проставить галку автоматического подключения к фоновым заданиям в нфастройках отладки
Запустите консоль заданий и убедитесь, что нужное задание активно, расписание выполнения актуально. Так же полезно убедиться, что в настройках базы данных на сервере 1С не установлена флаг "Блокировка выполнения регламентных заданий включена".
(14) AlenkaInt, Точка работать будет только если фоновое задание будет перехвачено отладчиком, что не есть однозначно доказано.
(15) AlenkaInt, Это ни о чем. Ошибки тоже пишутся в журнал регистрации, так что задание может просто не стартовать.
В консоли заданий установите пользователя для задания. Фильтруйте по этому пользователю журнал. Кстати сама консоль пишет выполнялось ли задание и когда в последний раз. Есть что-то?
(15) AlenkaInt, Это ни о чем. Ошибки тоже пишутся в журнал регистрации, так что задание может просто не стартовать.
В консоли заданий установите пользователя для задания. Фильтруйте по этому пользователю журнал. Кстати сама консоль пишет выполнялось ли задание и когда в последний раз. Есть что-то?
(28) AlenkaInt, если база файловая, то регламентное задание выполняет не сервер, а пользователь базы данных.
Если вы вручную его запускали, не понятно как вы могли пропустить реквизит пользователь.
А не хотение выложить скриншот вообще говорит, что ваши слова с вашими действиями никак не коррелируются...
Если вы вручную его запускали, не понятно как вы могли пропустить реквизит пользователь.
А не хотение выложить скриншот вообще говорит, что ваши слова с вашими действиями никак не коррелируются...
Сейчас выложу принтскрин. Там получается так, что запускается от имени <Не указан> и ошибка возникает. Вот в жд смотрю.
ОбщийМодуль.УправлениеСпискомПользователейПолныеПрава.Модуль(35)}: Пользователь : <Не указан> не был найден в справочнике сотрудников.
ОбщийМодуль.УправлениеСпискомПользователейПолныеПрава.Модуль(35)}: Пользователь : <Не указан> не был найден в справочнике сотрудников.
это я написал чтобы вы могли подключится к отладке и глянуть почему у вас не выполняет нужное задание то что оно должно делать, возможно у вас там есть условие которое не выполняется или еще что то, потому как задание, если вы запускаете его ПРИНУДИТЕЛЬНО, должно запуститься, а вот уже что оно там выполняет, если вы визуально пробежавшись по его коду не можете сказать, то нужно подключится к отладке, что у вас как я понял не получается, то что написал я это список требований которые нужно выполнить чтобы подключится к отладке фонового задания
(36) unoDosTres, спасибо! Код смогла проверить. В коде все хорошо. dusha0020, (37) Я тоже от вас балдею. Я же пишу, что не могу выбрать пользователя, поле не активно. Это видно и на принт скрин. С расписанием все ок. Оно во время срабатывает, спотыкается о Пользователь : <Не указан> и все.
Я балдею от автора! Раз 5 сказали, что дело в расписании и раза 3 что нужно назначить пользователя заданию. И что мы видим?
Пользователь не назначен - расписания как не было так и нет. Зачем вообще я здесь сижу? Всем пока!
Пользователь не назначен - расписания как не было так и нет. Зачем вообще я здесь сижу? Всем пока!
В 8.3.6 есть такая особенность, если вы запустили отладку (свой сеанс) по пути сервера Srvr="Имя", а другие пользователи (в т.ч. и другие фоновые задания) запускаются под Srvr="ИМЯ" то вы к ним не подключитесь отладчиком. То же самое правило и для Ref="Имя". В 8.3.7 это устранено.
Я тоже как то не мог подключится к фоновым заданиям из-за этого. Но у вас к другим получается подключаться, а именно к этому нет, поэтому возможно у вас и не эта причина... Надо проверять!
Вы выполняете под собой, т.е. имя прописано как Srvr="Имя", а когда оно выполняется автоматически оно выполняется, например, с именем Srvr="ИМЯ".
Пробуйте! Возможно причина у вас именно в этом!
Я тоже как то не мог подключится к фоновым заданиям из-за этого. Но у вас к другим получается подключаться, а именно к этому нет, поэтому возможно у вас и не эта причина... Надо проверять!
Я когда в предприятии сама стартую процесс, то точка останова срабатывает.
Вы выполняете под собой, т.е. имя прописано как Srvr="Имя", а когда оно выполняется автоматически оно выполняется, например, с именем Srvr="ИМЯ".
Пробуйте! Возможно причина у вас именно в этом!
У меня была аналогичная задачка. Конфигурация без типовых, полностью своя. Клиент-серверный вариант работы.
- Создал регламентное задание, задал ему какое-то расписание, типа запуск 15 мая.
- Написал обработку, вызвал из обработки на клиенте, всё работает.
- Изменил расписание: на каждый день с 8 до 20, каждые 10 сек. Не работает.
- Облазил все форумы, кто-то посоветовал посмотреть обработкой.
- Выдернул из УТ обработку РегламентныеИфоновыеЗадания, внедрил в свою конфигурацию, посмотрел.
- У моего задания стоит расписание, которое я устанавливал при его создании.
Вывод: 1С до 8.3.13. Из Конфигуратора не вносит изменения в расписание Регламентного задания. Сам пишет, что изменил, но не изменяет.
Возможно было бы достаточно перезапустить службу сервера,
Возможно, достаточно было бы пересоздать по-новой регламентное задание, Я не проверял.
Вариант с изменением расписания через обработку сработал, меня это устроило.
Задача решена.
- Создал регламентное задание, задал ему какое-то расписание, типа запуск 15 мая.
- Написал обработку, вызвал из обработки на клиенте, всё работает.
- Изменил расписание: на каждый день с 8 до 20, каждые 10 сек. Не работает.
- Облазил все форумы, кто-то посоветовал посмотреть обработкой.
- Выдернул из УТ обработку РегламентныеИфоновыеЗадания, внедрил в свою конфигурацию, посмотрел.
- У моего задания стоит расписание, которое я устанавливал при его создании.
Вывод: 1С до 8.3.13. Из Конфигуратора не вносит изменения в расписание Регламентного задания. Сам пишет, что изменил, но не изменяет.
Возможно было бы достаточно перезапустить службу сервера,
Возможно, достаточно было бы пересоздать по-новой регламентное задание, Я не проверял.
Вариант с изменением расписания через обработку сработал, меня это устроило.
Задача решена.
Добавлю немного своего. 1С УПП 1.3.173, платформа 8.3.17, сервер 1С на линуксе.
Стандартные регламентные задания запускаются, созданное мной задание - соответственно не работает, даже не пытается.
В конфигураторе: признак "Используется" - Истина, общих реквизитов нет, расписание установлено в "Ежедневно, каждые 120 сек".
Решил проблему с помощью Консоли заданий. Оказывается, в режиме Предприятия мое задание даже не было в списке заданий. После того, как добавил свое задание в общий список в Консоли заданий, задал там же расписание и признак "Используется", оно заработало.
Стандартные регламентные задания запускаются, созданное мной задание - соответственно не работает, даже не пытается.
В конфигураторе: признак "Используется" - Истина, общих реквизитов нет, расписание установлено в "Ежедневно, каждые 120 сек".
Решил проблему с помощью Консоли заданий. Оказывается, в режиме Предприятия мое задание даже не было в списке заданий. После того, как добавил свое задание в общий список в Консоли заданий, задал там же расписание и признак "Используется", оно заработало.
Добрый день!
У меня та же проблема. Создал отчёт в клиент-серверной базе УТ 11. Создал регламентное задание, Общий модуль с галочками Сервер и Внешнее соединение (или вместо Внешнего - Вызов сервера, или все три включал) Написал Экспортную процедуру, где прописал Отчеты.ИМЯ_ОТЧЁТА.ПриОткрытии(); И поставил точку останова.
И в самом Отчёте Процедура ПрОткрытии() тоже поставил Экспорт.
Любое регламентное задание работает, моё не выполняется. Просто Отчёт запускаю, работает.
Подскажите, пожалуйста, что не так?
У меня та же проблема. Создал отчёт в клиент-серверной базе УТ 11. Создал регламентное задание, Общий модуль с галочками Сервер и Внешнее соединение (или вместо Внешнего - Вызов сервера, или все три включал) Написал Экспортную процедуру, где прописал Отчеты.ИМЯ_ОТЧЁТА.ПриОткрытии(); И поставил точку останова.
И в самом Отчёте Процедура ПрОткрытии() тоже поставил Экспорт.
Любое регламентное задание работает, моё не выполняется. Просто Отчёт запускаю, работает.
Подскажите, пожалуйста, что не так?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот