Нужно программно добавить в отчет на СКД поля набора данных. Причем, чтобы они были доступны в списке полей при изменении варианта отчета пользователем.
В модуле объекта отчета нет подходящего обработчика, чтобы при запуске отчета заполнить список полей набора данных (скриншот https://yadi.sk/i/b_VER8w8jJyNx). Если в разделе основной программы модуля объекта отчета написать следующий код:
Поле = НаборДанныхОбъект.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
Поле.Поле = "Поле1";
Поле.ПутьКДанным = "Поле1";
Поле = НаборДанныхОбъект.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
Поле.Поле = "Поле2";
Поле.ПутьКДанным = "Поле2";
То, в пользовательском режиме в списке полей при настройке варианта отчета, появляются поле1 и поле2 (скриншот https://yadi.sk/i/ALAnUMMsjJyBm)
Нужно разместить данный код в ПриСозданииНаСервере формы, чтобы он отрабатывал лишь единожды при старте отчета.
Для этого в процедуре ПриСозданииНаСервере я сначала преобразую основной реквизит формы в объект (с помощью РеквизитФормыВЗначение), затем добавляю в этот отчет-объект необходимые поля набора данных и делаю обратное преобразование отчет-объект в ДанныеФормыСтруктура (с помощью метода ЗначениеВДанныеФормы). Однако при старте такой формы, при изменении варианта отчета в пользовательском режиме, созданные поля набора данных не отображаются.
(см скрин1 https://yadi.sk/i/pAqqX8vijK2fc скрин 2 https://yadi.sk/i/zZVdVrGvjK2sG)
Скрин, на котором видно что после добавления кода в МО отчета, в пользовательском режиме появляются необходимые поля https://yadi.sk/i/ALAnUMMsjJyBm (в предыдущем сообщении почему то не открывается)