Трассировка функций
Есть возможность включить запись в файл трассировки имен функций, а также значений параметров вызова. При выходе из функции может записываться возвращаемое значение и длительность выполнения в секундах. Для этого необходимо установить опцию Трассировка функций на закладке Документы пункта Установка/Настройки Главного меню.
Запись происходит как в режиме интерпретатора, так и в режиме выполнения кода ibx. В последнем случае в ibx-файле должна содержаться отладочная информация (имена функций).
Управление выводом информации о вызове функций осуществляется параметрами секции Trace в файле ib.ini:
[Trace] InputParams=1 RetVal=1 Duration=1 Indent=1
Дополнительные настройки хранения параметров трассировки могут содержатся в файле deploy.ini.
По умолчанию все параметры включены. InputParams - выводить параметры (если есть) перед выполнением функции. RetVal - выводить возвращаемое значение (если есть) при выходе из функции. Duration - измерять и выводить длительность выполнения функции в секундах. Indent - использовать отступы по 2 пробела на один уровень вложенности вызова функции. Если параметры RetVal и Duration отключены, то при выходе из функции трассировка не выполняется.
Вызовы встроенных функций, за исключением функций ДОБАВИТЬ_ОПРЕДЕЛЕНИЕ, ДОБАВИТЬ_РЕКВИЗИТ и функций для расчета остатков и оборота (ОБД и т.п.), а также вызовы скрытых функций не трассируются. Вывод происходит до выполнения тела функции.
Выборочно отключить трассировку функций ДОБАВИТЬ_ОПРЕДЕЛЕНИЕ и ДОБАВИТЬ_РЕКВИЗИТ можно в файле ib.ini:
[Trace] AddRM=0
Для отключения трассировки функций для расчета остатков и оборота используется следующий параметр:
[Trace] Account=0
Также можно вручную указать функции, которые необходимо исключить из трассировки:
[Trace] Excl01 = Центрировать, РазбитьНаСтроки Excl02 = ДобСимв
Параметры ExclNN, где NN принимает значение от 01 до 99, – списки имен функций для исключения из трассировки. В одной строке может быть задано несколько имен функций через запятую.
При трассировке функций указывается библиотека, в которой реализована данная функция. Для вывода используется синтаксис вызова:
["<библиотека>"].<функция>
Для отключения трассировки перекомпиляции используется следующий параметр:
[Trace] Recompile=0