Я делаю запрос с группировкой по полю "ДокументОпределяющийСтатус".
Добавляю к нему поле "Комментарий", вытаскивающее комментарий из объекта "ДокументОпределяющийСтатус" в зависимости от его типа:
ВЫБОР
КОГДА вт_ПредметыЛизинга.ДокументОпределяющийСтатус ССЫЛКА Документ.хлОбращениеКлиента
ИЛИ вт_ПредметыЛизинга.ДокументОпределяющийСтатус ССЫЛКА Документ.хлЗаявкаНаЛизинг
ТОГДА вт_ПредметыЛизинга.ДокументОпределяющийСтатус.Комментарий
КОГДА вт_ПредметыЛизинга.ДокументОпределяющийСтатус ССЫЛКА Документ.хлПриложениеКДоговоруЛизинга
ТОГДА вт_ПредметыЛизинга.ДокументОпределяющийСтатус.ДоговорЛизинга.Комментарий
ИНАЧЕ ""
КОНЕЦ
Соответственно, мне нужно кинуть его либо в группируемые поля (что невозможно ибо это строка неограниченной длины) либо в аггрегируемые (но непонятно какую брать аггрегатную функцию, и тем более поле однозначно определяется из "ДокументОпределяющийСтатус")
Можно не включать поле в запрос, а добавить в вычисляемые поля компоновщика - но чтобы оно появилось в результирующей таблице придется либо сделать его ресурсом (а это опять таки аггрегирующая функция) либо добавить в группировки (а это опять таки группировка).
Для явного реквизита группировки (например, "ДокументОпределяющийСтатус.Комментарий") можно вообще не включать поле ни в запрос ни в компоновщик, а просто добавить его из дерева на вкладку "Выбранные поля" на форме настроек отчета, но это, к сожалению, не мой случай
Что делать? :-(
P.S. Тут хотя бы один объект, а если бы я захотел сделать конкатенацию комментариев по разным объектам группировки!? Но это уже вопрос теретический, а практический выше... Заранее спасибо!
Выразить строка 500. Потом при выводе пробелы зачистить.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший