Я разработчик старой формации, до сих пор обслуживаю клиентов на платформах 7.7, 8.1, 8.2, времени изучать все мануалы и отслеживать новые тенденции не хватает. Цель этой статьи помочь разработчикам, таким же людям, как и я. Если эта статья сэкономит, хотя бы, 1 человеко-час жизни, значит, написана не зря.
Столкнулся с проблемой: не встает точка останова, на новых типовых конфигурациях, на управляемых формах на платформе 8.3. Работал с УТ 11. Мучился несколько дней, перезапускал сервер 1С с ключом -debug разными способами. Пока, случайно, не помог коллега по работе, которому в свое время, аналогично, помог другой коллега по работе. Информации в интернете на эту тему мало.
Причина в том, что из-за повышения производительности, и реализации многопоточности обработки данных, разработчики новых типовых конфигураций на управляемых формах, а именно УТ 11, стали использовать механизм фоновых заданий прямо в программном коде, многие ключевые модули работатют в фоновом режиме. В старых конфигурациях для 8.2, например УТ 10.3, механизм фоновых заданий использовался, в основном, в регламентных заданиях по расписанию.
Для подключения отладки, нужно поставить галочку, как на скриншоте, и перезапустить 1С предприятие.
Конфигуратор/Главное меню/Отладка/Подключение. В выпавшем меню нажать кнопку «Автоматическое подключение», установить галочку «Фоновые задание». Перезапустить отладку.
Удачи в работе!
больше 10 лет это галочке, даешь на каждую галочку по публикации на Инфостарт!
вангую, след. статья будет про флаг -debug в строке запуска сервера приложений…
вы поменьше с коллегами интернеты читайте и побольше документации
https://its.1c.ru/db/v8310doc#bookmark:dev:TI000001040
(1)
(2) Для прочтения по вашей ссылке, нужно иметь платный доступ к ресурсу ИТС, следовательно, эта информация не гулится.
Про флаг -debug, информации в интернете уже полно, изначально тоже пришлось повозиться чтобы его установить. На старых конфигурациях, не возникало проблем с отладкой, поэтому и необходимости в этой информации для меня не было. Изначально думал, что проблема с отладкой из-за флага -debug, а оказалось из-за маленькой галочки, возможно кому-то еще будет полезна эта информация, а те только ГУРУ 1С.
Чтобы этот флаг работал, параметры соединения с ИБ должны полностью совпадать с параметрами соединения фонового задания, чаще всего кластер серверов должен быть написан заглавными буквами.
Для того, чтобы узнать как подключается фоновое задание достаточно в процедуре фонового задания написать
ЗаписьЖурналаРегистрации(«Параметры соединения с базой»,,,,СтрокаСоединенияИнформационнойБазы());
(4) Это старая инфрмация. Начиная с 8.3.8 (или даже с 8.3.7) уже не обязательно данное условие.
(5)Возможно, но далеко не все используют поздние версии платформы и как минимум это не повредит даже в старших версиях платформы
Вопрос,
Галочки устанавливаю, а к фоновым заданиям не подключается? В чем может быть проблема?
(7) у меня бывало такое, помогал перезапуск 1С отладки, установка галочек во время запущенной отладки, или перезапуск агента-сервера 1С предприятия на клиент-серверной базе.
Достаточно запустить с параметром «РежимОтладки». В таком случае в типовых фоновые задания начнут выполняться «напрямую», и будет работать обычная отладка.
Там есть еще галка Web сервисы — можно еще одну статью написать
Не все же знают
(10) Когда ключевые модули типовых конфигураций перепишут из фоновых заданий на Web сервисы, обязательно так и сделаю )))
(3) Не нужен платный. Там доступен просмотр в режиме тест-драйва.
(12) тест драйв только 7 дней, еще можно ссылок с закрытой конференции разработчиков прислать. Повторюсь, раньше эта галочка нафиг была не нужна, а теперь без нее в типовых, отладка не работает.
(5) Платформа 8.3.8.2197. Проблема из (4) всё ещё актуальна. Причем на некоторых серверах приложений она есть, на некоторых — нет. Так что помнить про эту особенность нужно.
(1)Какой то ты злой Ivan Khorkov… вот я эту галочку не видал.. и плюсанул 🙂
(15)Значит ни разу не отлаживал регламентированный отчет=) Это очень древняя галочка=)
(15) Хороша ложка к обеду. Буквально позавчера первый раз эту галочку увидел. Нашел легко в Яндексе по фразе «отладить фоновое задание». Чего не было ни там, ни у уважаемого автора публикации, так это борьбы с роем фоновых заданий (1С:Документооборот), которые запускаются каждые 10 сек. Отладка слетает на каждом шаге.
Победил так. По возможности увеличил время между срабатываниями. Отключил все имеющиеся подключения к отладке. Поставил точку прерывания в модуле в процедуре метода. Запустил вручную фоновое задание («Выполнить сейчас » в режиме пользователя). Когда подключение появилось, оно останавливается в точке прерывания. Сразу отключаю галочку автоматического подключения фоновых заданий. В результате система успокаивается (не подключает в отладку новые фоновые задания) и дает выполнить нормальную пошаговую отладку.
Не проще ли вынести логику фонового задания во внешнюю обработку и уже оттуда её отлаживать?
Плюсы:
Не надо ждать пока фоновое задание начнется по расписанию;
Отлаживать можно «на лету», без перезапуска конфы;
Это навскидку, есть и другие.
(18) Вы когда-нибудь пробовали «вынести логику» запускаемой в фоне процедуры модуля внешней обработки, выгружаемой из макета в виде двоичных данных? =)
Нет, не проще.
(17) жесть…. не только разработка стала сложной, но и отладка….
Спасибо!
Благодарю!