Функция ПРЕДСТАВЛЕНИЕ() не просто преобразует в строку - она неявно присоединяет необходимые таблицы для получения представления. При этом для разработчика не важно, какое поле используется для формирования представления (код или наименование - если речь о справочниках).
Если из текста запроса для построителя выкинуть Представления, оставив только поля ссылочного типа, то при выводе в макет для каждой ссылки будет делаться запрос к базе данных для получения представления этой ссылки - а этой по 1 запросу на каждую строку отчета...
Ну и еще (как я понял, четкого описания не нашел). Если в запросе использовать функцию ПРЕДСТАВЛЕНИЕ(), то в макет будет попадать именно она, а не поле к которому она введена. Не нужно ни каких дополнительных действий! Это в первую очередь относится к отчетам на базе УНИВЕРСАЛЬНОГО. Т.е. при описание параметров построения выходной формы (в процедуре УстановитьНачальныеНастройки) нужно указывать псевдонимы полей запроса, а в макет попадут данные функции ПРЕДСТАВЛЕНИЕ() к этому полю (разумеется если она задана).
Функция ПРЕДСТАВЛЕНИЕ() не просто преобразует в строку - она неявно присоединяет необходимые таблицы для получения представления. При этом для разработчика не важно, какое поле используется для формирования представления (код или наименование - если речь о справочниках).
ОтветитьУдалитьЕсли из текста запроса для построителя выкинуть Представления, оставив только поля ссылочного типа, то при выводе в макет для каждой ссылки будет делаться запрос к базе данных для получения представления этой ссылки - а этой по 1 запросу на каждую строку отчета...
Спасибо! Ведь ни слова (разумного) в документации...
УдалитьНу и еще (как я понял, четкого описания не нашел). Если в запросе использовать функцию ПРЕДСТАВЛЕНИЕ(), то в макет будет попадать именно она, а не поле к которому она введена. Не нужно ни каких дополнительных действий!
ОтветитьУдалитьЭто в первую очередь относится к отчетам на базе УНИВЕРСАЛЬНОГО.
Т.е. при описание параметров построения выходной формы (в процедуре УстановитьНачальныеНастройки) нужно указывать псевдонимы полей запроса, а в макет попадут данные функции ПРЕДСТАВЛЕНИЕ() к этому полю (разумеется если она задана).