Для выполнения отладки необходимо включить поддержку протокола tcp ip 1с
(0) У меня была такая проблема на ноутбуке с вистой. Оказалось прога 1с8 была заблокирована защитой, снял блокировку и все зарботало. Деталей не помню. Пока не вылечил приходилось работать просто сохраняя изменения в конфигураторе и запуская после этого предприятие, без кнопки - отладка.
Да, это хорошо когда свое пишешь, а тут у меня возникла ситуация, когда нужно узнать значения переменных в УТ - а там они часто бывают такими мудреными, и без точек останова просто никак.
(2) По моему, толи в брандмауэре, толи в защите винды, так и было написано - программы 1с8 заблокирована, там же нажал на нее, предложила удалить или разблокировать.
+3 Посмотри, есть ли у тебя "Центр обеспечения безопасности Windows" у меня, по моему, было именно в нем (виста)
Центр безопасности отключен и бркндмауэр тоже всемте с ним за компанию, антивирь полностью выгружал из автозагрузки + отключал все его службы(и не только его). один черт, 1с-ка все заладила: не включена, да не включена. включите поддкржку.
(6) Под всеми учетными записями?
PS А собственно протокол то включен?
Под всеми учетками пробова, даже специально новую создал все одно,
а протокол вкчен, как раз через него сейчас и сижу в нете,
и тем более порты сканятся и порт 1560 свободен, т.е. 1с его прослушивает.
значит по идее вроде как долно работать, а в реальности - шиш с маслом.
(8) Тады не знаю! Я мучился дня два, работая на даче без интернета. Потом проблема решилась сама элементарно.
Я уже мучаюсь наверное дня 4 а может и больше, подходил к 2-м сисадминам, посмотрели поковыряли и сказали не знаем. Уже чего делать не знаю. был бы ноут с приводом давно бы переустановил винду и не мучался, а тут с этим нетбуком блин. Спасибо хоть за содействие. Пойду пристрелюсь.. или лучше пристрелить кого-нибудь. хоть на душе полегчает.
Да есть такая штук, он по умолчанию был установлен. А что может сильно вредить.
только едиенственное он усановле, но в запущенных приложениях отсутствует напроч.
перезапустить все процессы 1cv8.exe на серваке. А лучше сам рабочий процесс
(14) Не на серваке, а подключенные к серваку. Короче рабочий процесс рестартить проще всего.
процес 1cv81 и убивал и все делал, только у м не сервак обычный нетбук, полночтью автономный и локальный, сейчас убью весь live и потом поглядим
Убейте меня, после сноса liva все работает, отлатка прям так и пашет :) все порты открыты. только с ней всякие проги поудалялись причем куча. вот ема-е теперь напиться надо, от радости. блин теперь на ночь глядя еще и работать надо. :)
А так всем спасибо. Особенно Armando. жизнь то налаживается. и продолжается . )))))))))))
У тебя заняты все порты, которые для отладки используются. Если локально, то закрой все программы, которые могут порты открывать и попробуй снова.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа.
Фредерик Брукс-младший
Кроме этого отмечу, что эта статья входит в небольшую серию статей об отладке в 1С:
Предмет отладки
Типы предметов отладки:
Подключение предметов отладки зависит от выбранного протокола отладки и поэтому будет рассмотрено ниже.
Выбор протокола отладки
Выбор протокола отладки
- Использовать локальный сервер отладки — вариант в основном для файловых информационных баз, в дополнительных полях можно указать адрес сетевой карты (если их несколько), а также один или несколько диапазонов портов которые будут использоваться для отладки, например: 1560:1591, 7700-8000;
- Использовать удаленный сервер отладки — конфигуратор попытается подключиться к удаленному серверу отладки по указанному адресу и порту;
- Использовать сервер отладки кластера — используется сервер отладки кластера серверов, кластер серверов должен быть запущен в отладочном режиме.
Протокол отладки TCP/IP
При отладке по протоколу TCP/IP отладчик ищет доступные предметы отладки на текущем или указанном компьютере. Для корректной работы отладчика (если конечно речь идет не о файловой базе на одного пользователя) очень рекомендуется нормально настроить сеть — в частности DNS-сервер и доступность отладочных портов (по-умолчанию 1560:1591).
Подключение предметов отладки
В список доступных предметов отладки попадают только те из них, которые отвечают следующим требованиям:
- отладчик и предмет отладки имеют одинаковый идентификатор информационной базы;
- в приложении включена возможность отладки (для сервера — см. первую статью серии, для клиентского приложения — соответствующий параметр командной строки либо свойство в диалоге настройки клиентского приложения либо соответствующие указания в конфигурационном файле);
- отсутствуют в списке подключенных предметов отладки.
Настройки отладчика
Некоторые типы предметов отладки остаются доступными для подключения очень непродолжительное время, в этом случае нужно воспользоваться настройками автоматического подключения предметов отладки:
Настройки автоматического подключения
Сервер отладки
Сервер отладки обычно запускается конфигуратором (в файловом варианте) или кластером серверов (если кластер запущен в режиме отладки).
Кроме этого сервер отладки может быть запущен вручную — для реализации нетривиальных сценариев отладки.
Сервер отладки (dbgs) находится в каталоге bin, параметр --help покажет информацию об имеющихся параметрах запуска (там все довольно понятно), пример запуска:
C:\Program Files\1cv8\8.3.13.1513\bin\dbgs -a 192.168.0.170 -p 4000
Сервер отладки готов к работе
Подключение предметов отладки
Подключение предметов отладки
Из списка доступных предметов отладки исключаются уже подключенные и не соответствующие отбору предметы отладки. Отбор можно установить в правой верхней части окна:
Отбор предметов отладки
В окне настроек отладчика можно узнать адрес сервера отладки и имя информационной базы:
Для настройки автоматического подключения предметов отладки существует специальный диалог:
В левой части диалога можно указать типы предметов отладки, которые подлежат автоматическому подключению, а в правой — дополнительные отборы предметов отладки.
На этом все, надеюсь, что эта статья была Вам полезна. Также напомню про другие статьи серии об отладке в 1С, ссылки на них можно найти в начале этой статьи.
Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Кроме этого отмечу, что эта статья входит в небольшую серию статей об отладке в 1С:
Точки останова
Точка останова — это некая точка в программном модуле, на которой выполнение модуля приостанавливается и управление перехватывает отладчик. Точку останова можно установить с любой строке модуля и в любой момент работы с отладчиком. Место установки точки останова отмечается соответствующим знаком, для разных видов точек останова используются разные обозначения:
Виды точек останова
- Точка останова (F9) — устанавливает/удаляет точку останова в строке на которой стоит курсор;
- Точка останова с условием — устанавливает точку останова и открывает окно для ввода условия — логического выражения, повторное использование команды в этой же строке откроет окно для редактирования условия. Останов в указанной точке будет выполнен только если условие истинно;
- Включить/отключить точку останова (Ctrl+Shift+F9) — включает/отключает точку останова;
- Удалить все точки останова — удаляет все точки останова во всех модулях;
- Отключить все точки останова — отключает все точки останова во всех модулях;
- Список точек останова (Alt+F9) — открывает окно для просмотра и управления точками останова, о нем ниже.
В окне показаны все точки останова во всех модулях, их расположение (модуль и номер строки) и условие (если есть). Имеется возможность включить/отключить/удалить точки останова, перейти к месту установки точек останова, сохранить и загрузить список точек останова.
Пошаговое выполнение
Команды пошагового выполнения
В режиме пошаговой отладки исполнение кода приостанавливается после каждой команды и ждет инструкций от отладчика. А инструкции бывают следующими:
- Шагнуть в (F11) — если следующая команда это процедура/функция, то начинается пошаговая отладка этой функции, иначе отладчик просто переходит к следующей команде;
- Шагнуть через (F10) — если следующая команда это процедура/функция, то она полностью выполняется (не пошагово) и отладчик переходит к следующей команде;
- Шагнуть из (Shift+F11) — прерывает пошаговое выполнение процедуры/функции и останавливается на первом операторе после выхода из нее;
- Идти до курсора (Shift+F10) — выполняются все операторы до строки на которой стоит курсор;
- Текущая строка — перемещает курсор в ту строку, на которой остановился отладчик;
- Продолжить отладку (F5) — прерывает пошаговую отладку и продолжает свободное исполнение модуля.
Управление отладкой
Окна, табло и стек вызова
Окна, табло и стек вызова
Позволяет рассчитать выражение на встроенном языке. Следует отметить, что выражения выполняются в реальной системе и об этом нельзя забывать, если, к примеру, рассчитываемое выражение создает некий объект данных, то этот объект будет создан в реальной системе.
Табло (Ctrl+Alt+W)
Специальное окно, которое состоит из четырех страниц (переключение из контекстного меню) и отображает результаты вычисления переменных, арифметических выражений и выражений с использованием встроенного языка.
Специальное окно, которое во время отладки показывает список локальных переменных текущего метода. Редактировать таблицу переменных нельзя.
Изменение значения переменной
Когда управление находится у отладчика имеется возможность изменять значения переменных и свойства объектов (доступные для записи). Доступ к этой функции можно получить из окна выражений (подчеркнутая кнопка на рисунке выше), а также из контекстного меню в окне локальных переменных и в табло (такой же значок как и в окне выражений).
Откроется специальное окно (как на рисунке выше). В верхней части можно ввести новое значение для переменной — константное значение любого типа или выражение, корректное с точки зрения встроенного языка.
Пользоваться функцией нужно с осторожностью — необдуманное изменение значений переменных может привести к записи в базу данных совершенно неправильных значений.
Стек вызова
Показывает последовательность вызовов процедур и функций, которая привела к отлаживаемой в данный момент строке кода. Колонки таблицы содержат название метода, номер строки модуля и предмет отладки.
Замер производительности
Замер производительности позволяет оценить скорость работы всей конфигурации или ее части. Измеряется скорость выполнения и частота использования конкретных участков кода, а также прочая дополнительная информация о которой ниже.
Включить режим замера производительности можно как до запуска отладки, так и во время. Повторный использование команды прекратит замер и выведет окно с результатами. Включение и выключение замера производительности действует на все подключенные ко отладчику предметы отладки.
Результаты замера
Результаты замера производительности отображаются в виде таблицы со следующими столбцами:
- Модуль — название модуля;
- Номер строки — номер строки;
- Строка — участок кода;
- Кол. — количество вызовов данного участка кода за все время замера;
- Врем. — суммарное время выполнения (в секундах) данного участка кода за все время замера;
- %(Врем.) — процент суммарного времени выполнения данного участка кода к общему времени замера (общее время замера — это суммарное время выполнения кода конфигурации);
- Клиент — отметка участков кода выполняющихся на клиенте;
- Сервер — отметка участков кода выполняющихся на сервере;
- Обр. сервер — отметка участков кода в которых происходит вызов сервера.
Таблица с результатами замера производительности может выглядеть, например, так:
Результаты замера производительности
Результаты можно отсортировать по любой из колонок. Если выделить несколько строк, то сумма квантитативных данных (Кол., Врем., %(Врем.)) отобразится в нижней части окна. Кроме этого результаты можно сохранить в файл с расширением *.pff (этот файл, в последствии, можно открыть в любом конфигураторе).
Имитация задержек при вызове сервера
Механизм имитации задержек при вызове сервера позволяет имитировать работу прикладного решения в условиях существенных временных задержек при взаимодействии с сервером — при вызове сервера, а также при отправке данных на сервер и получении данных с сервера.
Включение механизма имитации задержек
На этом все, надеюсь, что эта статья была Вам полезна. Также напомню про другие статьи серии об отладке в 1С, ссылки на них можно найти в начале этой статьи.
Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
(оценок: 3, средняя оценка: 5,00 из 5)Разберем основные случаи когда и почему не работает отладка 1С.
1. В списке предметов отладки не видны серверные сеансы
Возможно сервер 1С запущен не в режиме отладки. Для того чтобы включить режим отладки, службу сервера 1С нужно запустить с ключом -debug. Пошаговый разбор как это сделать тут.
2. В списке предметов отладки не видны ни клиентские ни серверные сеансы.
Еще одной причиной отсутствия предметов отладки в списке является то, что предметы отладки находится не на том компьютере где запущен отладчик 1С. Актуально как для серверных так и для клиентских сеансов. Для решения проблемы обычно достаточно указать имя удаленного компьютера для поиска предметов отладки и обновить список.
Если и после этого список пустой, то нужно вбить вместо имени IP-адрес удалённого компьютера. В случае если это помогло, то рекомендуется прописать привязки имен и IP-адресов компьютеров в файле hosts. Если и это не помогло то необходимо проверить настройку фаервола, разрешены ли на сервере 1С (или удаленном клиенте) входящие соединения с компьютера где запущен отладчик на порты 1560-1591.
3. В списке предметов отладки не видны клиентские сеансы.
4. Предмет отладки виден в конфигураторе и подключается, но точка останова все равно не срабатывает на строке кода.
Данная проблема актуальна при отладке по протоколу TCP. Причина в том что отладчик не может принимать входящие соединение из-за того что брандмауер или фаервол блокируют сетевое взаимодействие между отладчиком и предметом отладки. Тут нужно понимать, что отладчик не только устанавливает исходящее соединение с предметом отладки, но также должен иметь возможность принимать входящее соединение. Проблема решается отключением фаервола на компьютере где запущен отладчик либо открытием входящих соединений на портах 1560-1591 для исполняемого файла 1cv8.exe.
5. Программный код выполняется в сеансе фонового задания.
В типовых конфигурациях 1С широко использует запуск длительных процедур в фоновом режиме. Для этого на сервере запускается отдельный фоновый сеанс помимо основного серверного сеанса пользователя. Проблема решается включением автоматического подключения отладчика к фоновым сеансам. После этого как правило отладка начинает работать, если нет проблем с фаерволом описанных выше.
Подводим итоги
Напоследок стоит отметить, что как правило отладка производиться на тестовом сервере 1С, который запускается на портах отличных от типового диапазона 1560-1561. Поэтому, все изложенное выше в части номеров портов, следует рассматривать в контексте ваших реально используемых диапазонов портов.
Читайте также: