Как сделать отладку в 1с

Добавил пользователь Владимир З.
Обновлено: 04.10.2024

Отладчик 1С является встроенным в конфигуратор инструментом, который предназначен для отладки программных модулей, создаваемых в процессе разработки прикладного решения.

Отладчик 1С позволяет:

  1. отслеживать последовательность выполнения операторов встроенного языка;
  2. просматривать значения переменных.

Основные возможности отладки 1С:

Особенности отладки в 1С:

Точки останова при отладке кода 1С

Отладчик позволяет установить на конкретную строку модуля специальный маркер - точку останова, - при достижении которой исполнение программного модуля останавливается и управление передается отладчику.

Виды точек останова:

  1. безусловные (исполнение программного модуля останавливается в любом случае);
  2. с условием (выполнение программного модуля останавливается только в том случае, если заданное условие истинно);
  3. по ошибке (система может остановиться по вызванной ошибке; необходима установка соответствующего флага в меню "Отладка" — "Остановка по ошибке. ").

Точки останова 1С

Остановка по ошибке:

Остановка по ошибке

Отладчик поддерживает возможность отключения точек останова (кнопкой на панели инструментов, из контекстного меню модуля, "горячими" клавишами "Ctrl+Shift+F9". При этом строка модуля остается отмечена маркером (знак точки останова становится серым), однако на ход исполнения модуля он никакого влияния не оказывает.

Отключение точек останова

При большом количестве точек останова удобно использовать отдельное окно для работы с точками останова, позволяющее просматривать и редактировать их в едином списке. Чтобы увидеть список всех установленных точек останова, необходимо зайти в меню "Отладка" — "Список точек останова" (Alt + F9).


Окно для работы с точками останова

Остановка по ошибке

В платформе 1С:Предприятие предусмотрена возможность использовать режим "Остановка по ошибке". В этом режиме отладка может быть остановлена:

  • при каждой возникающей ошибке, либо
  • при ошибке, в тексте которой присутствует подстрока, указанная разработчиком.

Вызов окна настройки "Остановка по ошибке" осуществляется через меню "Отладка" - "Остановка по ошибке. ".

Подстроки интересующих ошибок указываются в настройках отладки.

Остановка по ошибке

Во время отладки при такой настройке отладка будет останавливаться только при возникновении ошибок, связанных с делением на ноль.

Пошаговое выполнение кода 1С

После того, как при достижении точки останова управление прикладным решением передано отладчику, существует возможность дальнейшего исполнения модуля в нескольких режимах:

  1. пошаговое выполнение;
  2. исполнение вызова функции или процедуры;
  3. прерывание пошагового исполнения функции или процедуры;
  4. выполнения модуля до той строки, на которой стоит курсор или продолжение свободного выполнения модуля.

Пошаговое выполнение кода 1С

  • "Шагнуть в" - пошаговое построчное выполнение;
  • "Шагнуть через" - исполнение вызова функции или процедуры (без "проваливания" внутрь функции или процедуры);
  • "Шагнуть из" - прерывание пошагового исполнения функции или процедуры (выход из пошаговой трассировки функции или процедуры), и останов на следующей после ее вызова строке кода;
  • "Идти до курсора" - выполнение модуля до строки с курсором.

Для пошагового выполнения кода 1С необходимо:

При выполнении пошагового выполнения отладки команда "Шагнуть из" используется для выхода из пошаговой трассировки функции или процедуры, и останова на следующей после ее вызова строке кода.

Просмотр значений выражений при отладке кода 1С

Во время пошагового выполнения существует возможность:

  1. просматривать значения переменных, содержащихся в модуле;
  2. рассчитывать произвольные значения (добавив в выражение свои данные).

Посмотреть значения выражений (переменных) кода 1С можно следующими способами:

Эти два метода анализа кода очень похожи, основные отличия в интерфейсе. Табло удобнее использовать для группы показателей, выражения — для одиночных.

Для объектов встроенного языка значения их свойств представляются в виде древовидной структуры.

Для значений, являющихся строками, массивами и коллекциями значений также возможен просмотр в отдельном окне (команда "Показать в отдельном окне").

Например, в процессе отладки содержимое таблицы значений целиком можно увидеть в окне "Выражение", но только посредством команды "Показать в отдельном окне".


Форма подключения и настройки отладки в Конфигураторе 1С

Форма подключения и настройки отладки в Конфигураторе 1С

В принципе, на этом вся настройка может быть закончена, можно выбрать нужный сеанс и подключиться к нему для отладки. Однако, часто бывает что мы увидим пустой список предметов отладки. Если это ваш случай, то читаем дальше.

Итак, при настройке отладки в конфигураторе 1С надо учесть два момента.

Настройка поиска отладки на удаленном компьютере в Конфигураторе 1С

Настройка портов для поиска предметов отладки в Конфигураторе 1С

Все, после этого, запускаем на выполнение программу и отладчик должен остановиться на точке останова, которую вы поставили на сроке кода. В стеке вызовов можно посмотреть где в данный момент выполняется код, на сервер или на клиенте.

Точка останова при отладке в строке кода 1С

Если после всех настроек список доступных предметов отладки так и остался пустым, то следует проверить включен ли режим отладки на сервер 1С. Вот здесь можно посмотреть как включить отладку на сервере 1С.

Если же вам надо подключиться к клиентскому сеансу, то надо проверить включена ли доступность отладки у этого клиентского сеанса. Для это в режиме 1С:Предприятие открываем меню Настройки — Параметры…

Доступ к настройкам параметров в клиентском приложении 1С

Настройка параметров отладки в клиентском приложении 1С

После этой настройки в конфигураторе обновляем список доступных предметов отладки, если все сделано правильно, там должен появится данный клиентский сеанс.



Изначально в клиент-серверных базах 1С 8.3 (8.1, 8.2) отладка производится только на клиенте и не работает на сервере. Процедуры и функции, которые выполняются на сервере невозможно отладить. Естественно, это довольно неудобно.

В данной инструкции мы расскажем, как же все-таки включить отладку на сервере, расширив тем самым возможности при разработке прикладных решений. Все ниже описанные действия подойдут для различных версий 1С: 8.1, 8.2 и 8.3. Отличием будет являться лишь название папки в реестре и службы. По самому наименованию их легко отличить, так как в него включается указание этого номера.

Как включить отладку на сервере 1С:Предприятия 8.3?


  1. Открываем службы, находим "1C:Enterprise 8.3 Server Agent (x86-64)" (Агент сервера 1С:Предприятия 8.3) и останавливаем ее. Можно это сделать через диспетчер задач (Ctrl+Alt+Del или Ctrl+Shift+Esc), если используете Windows 10.

  2. Теперь, чтобы включить отладку на сервере 1С и начали работать точки останова, вычисление значения переменных и т.д. Необходимо запустить редактор реестра.
    Чтобы его открыть, необходимо нажать Пуск > Выполнить (Windows+R) и ввести в командную строку regedit, после чего нажать Enter.
  3. Найти в реестре ветку

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.3 Server Agent (x86-64)

После этого не сервере 1С будет включена отладка.

Читайте также: