Основы конфигурирования в системе '1С Предприятие 8.0'

  73c64bed     

Отладчик


Отладчик - вспомогательный инструмент, облегчающий разработку программных модулей системы 1С:Предприятие 8.0. Отладчик предоставляет следующие возможности:

  • Пошаговое выполнение модуля;
  • Расстановка точек останова;
  • Прерывание и продолжение выполнения модуля;
  • Возможность отладки нескольких модулей одновременно;
  • Вычисление выражений для анализа состояния переменных;
  • Просмотр стека вызовов процедур и функций;
  • Возможность остановки по возникновению ошибки;
  • Возможность редактирования модуля в процессе отладки;
  • Замер производительности.

Отладчик является встроенным в конфигуратор инструментом. Для его использования необходимо, чтобы одновременно с конфигуратором была запущена отлаживаемая конфигурация в режиме "1С:Предприятие". Последовательность запуска программ не имеет значения.

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

  • Запустите конфигуратор и откройте модуль, предназначенный для отладки;
  • Расставьте в требуемых строках модуля точки останова;
  • Запустите режим "1С:Предприятие" для выбранной конфигурации, если режим уже был запущен, то выполните команду "Отладка - Подключиться";
  • Выполните действия, которые вызовут исполнение отлаживаемого модуля (например, проведите документ);
  • Проведите пошаговое выполнение нужного вам фрагмента модуля.

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


Для отладки модуля внешней обработки необходимо открыть файл внешней обработки в Конфигураторе, воспользовавшись пунктом "Файл - Открыть". В дальнейшем с модулем внешней обработки в Отладчике можно работать так же, как и с любым другим модулем.

Отладчик позволяет установить на конкретную строку модуля специальный маркер - точку останова, - при достижении которой исполнение программного модуля останавливается и управление передается отладчику. Точку останова можно установить в любой строке модуля, в любой момент работы с Отладчиком. В случае, если строка, на которой устанавливается точка останова, не содержит операторов (например, пустая строка), содержит неисполняемый текст (например, заголовок процедуры или функции, определение переменных) или является продолжением оператора, начатого на предыдущих строках, положение точки останова будут автоматически скорректировано.

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

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


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


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


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


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


С помощью табло и диалога "Выражение" можно получить значения интересующих выражений. Стек вызовов позволяет проследить последовательность вызова процедур и функций.


В случае, если не хотим продолжить пошаговое выполнение модуля дальше, с помощью команды "Отладка - Продолжить отладку" разрешим системе 1С:Предприятие 8.0 свободное выполнение модуля (до следующей точки останова).

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


Установленные точки останова запоминаются при закрытии конфигурации. Если снова открыть конфигурацию, то посмотреть список точек останова можно с помощью диалога "Точки остановки", вызываемого пунктом меню "Отладка - Список точек останова".

В процессе отладки допускается редактирование текущей конфигурации и сохранение изменений.

Внимание! Хотя в процессе отладки возможно редактирование отлаживаемого модуля, Отладчик не производит компилирование измененного кода - продолжается отладка кода конфигурации базы данных (на момент запуска отладчика или подключения). Для отладки изменений потребуется завершить работу в режиме "1С:Предприятие", сохранить изменения, обновить конфигурацию базы данных и повторно запустить Отладчик.

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

Результат замера производительности представляет собой список ссылок на конкретные строки модуля, с указанием частоты их выполнения и длительности (абсолютного времени выполнения и относительного, в процентах от общего времени выполнения замеряемого участка):


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


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


Дополнительной возможностью является включение в замер или исключение из замера времени выполнения вызываемых процедур и функций. Использование этой возможности позволяет получать картину замера, максимально приближенную к реальной, в случае, когда из замеряемого модуля вызываются внешние по отношению к нему, процедуры.

Разработчик может сохранить результаты замера в файл для последующего анализа и сравнения с результатами других замеров.



Содержание раздела