Функции для отладки
Функции ориентированные на использование в режиме отладки. Их можно вызывать из отладчика (через диалог "Вычислить выражение"). В программе есть встроенное описание этих функций. Рекомендуется использовать его. Ниже приведено описание для ознакомления без запуска программы. Имеются особенности вызова в урезанных вариантах поставки.
- открытие специализированных консолей - От(Объект, НастройкаКомпоновки=, ВнешниеНаборыДанных=)
- доступность - сервер, клиент
- варианты использования
- От(Запрос) - открывает запрос в консоли запросов
- От(ПостроительЗапроса) - открывает результирующий запрос построителя запросов в консоли запросов
- От(ПостроительОтчета) - открывает построитель отчета в консоли построителей отчетов, откуда можно открыть результирующий запрос построителя отчета в консоли запросов
- От(СхемаКомпоновки, НастройкаКомпоновки=, ВнешниеНаборыДанных=) - открывает схему компоновки в консоли компоновки данных, откуда можно открыть результирующие (из макета компоновки) запросы в консоли запросов
- От(МакетКомпоновки) - открывает запросы макета компоновки в консоли запросов
- при вызове на сервере выполняется только сохранение копий переданных объектов для отложенной отладки в новый элемент справочника "Объекты для отладки"; вместе с запросам сохраняются и их временные таблицы с ограничением числа строк (по умолчанию 500000), факт урезания таблицы отражается в результате функции
- демонстрация вызова в серверном контексте в варианте "Расширение"
- демонстрация вызова в серверном контексте в варианте "Конфигурация"
- демонстрация вызова в (толстом) клиентском контексте
- выполнение произвольного кода простое Ду(Инструкции, П1=, П2=, П3=,...) - выполняет код из параметра Инструкции, где могут применяться параметры П1, П2, П3,... Например ду("П1.Текст = П2", Построитель, "ВЫбрать * Из Константы").
- доступность - сервер, клиент
- основано на http://www.kb.mista.ru/article.php?id=105
- выполнение произвольного кода сложное Оперировать(ТекстПрограммы, РежимОперации=, СтрокаИменПараметров=, П1 =, П2 =, П3=, П4=, П5=) - выполняет код из параметра ТекстПрограммы, где могут применяться параметры П1, П2, П3,... с опциональными именами, задаваемыми в параметре СтрокаИменПараметров. Например Оперировать("ПостроительЗапроса.Текст = Текст", 2, "ПостроительЗапроса, Текст", Постротель, "ВЫбрать * Из Константы").
- доступность - сервер, клиент
- обозначение начала/конца трассы техножурнала - ТехН()/ТехК() - записывает маркер начала/конца трассы в техножурнал (должна быть включена регистрация события QERR)
- доступность - сервер, клиент
- анализ трассы выполняется в режиме предприятия инструментом "Анализ техножурнала"
- удобно использовать для изучения внутренних запросов, выполненных участком кода
- открытие исследователя объекта или коллекции - Ис(Объект = , КакКоллекцию = Ложь) - открывает объект в исследователе объектов или коллекций
- доступность - сервер, клиент
- удобно менять свойства объекта во время остановки
- при вызове на сервере выполняется только сохранение снимка переданного объекта для отложенной отладки на клиенте командой "Открыть объект для отладки"
- вычисление структуры переменных переданного фрагмента программы - Пер(ТекстПрограммы=), используется путем копирования в буфер обмена интересующего фрагмента программы и вычисления "Вычислить(Пер())"
- доступность - сервер, клиент
- позволяет вычислить структуру, образованную сразу из всех встречающихся во фрагменте программы переменных
- демонстрация
- вычисление входящих в запрос временных таблиц - ПолВТ(ЗапросИлиМенеджерВременныхТаблиц, ИмяВременнойТаблицы = "", ДопустимоеЧислоСтрок = 500000)
- доступность - сервер, клиент
- варианты использования
- ПолВТ(Запрос) - получает структуру всех входящих в запрос временных таблиц
- ПолВТ(МенеджерВременныхТаблиц, "Ставки") - получает таблицу значений из временной таблицы "Ставки" переданного менеджера временных таблиц
- получение текста из файла - Файл(ИмяФайла), позволяет увидеть текст находящийся в файле
- доступность - сервер, клиент
- сокращение коллекции - СокрКол(Коллекция, ОставитьЭлементИлиКлюч=), удаляет все элементы коллекции с возможностью оставить один элемент.
- доступность - сервер, клиент
- проверка изменения значения - Изм(Знач Значение, Знач ИмяЗначения = "", Знач НужноеСтароеЗначение = "", Знач НужноеНовоеЗначение = "")
- доступность - сервер, клиент
- Проверяет что переданное значение отличается от предыдущего переданного с тем же именем. Полезно использовать в условных точках останова например для остановки в том проходе цикла, в котором изменяется значение выражения.
- присвоение значения переменной - Пр
- доступность - сервер, клиент
- в 8.3 то же самое можно делать штатными возможностями в окне "Выражение" отладчика
- демонстрация
- открытие параметров в консоли кода - Оп(П1=, П2=, П3=, ...) - открывает консоль кода и передает ей все свои параметры
- доступность - клиент
- изменения параметров возвращаются в вызывающий контекст
- демонстрация
- открытие фрагмента программы в консоли кода - Поп(ТекстПрограммы=), используется путем копирования в буфер обмена целостного фрагмента программы и вычисления "Вычислить(Поп())"позволяет осуществить предварительное многократное выполнение кода с возможностью внесения изменений на ходу
- доступность - клиент
- демонстрация