Использование своего макета в построителе

Делается это так (виа Миста):

НовыйМакет = ПостроительОтчета.Макет;


//Делаем с НовыйМакет что-нить, меняем ширину колонок, форматы, надписи в шапке и т. д.  

ПостроительОтчета.Макет = НовыйМакет;

//Самое главное, не забыть после вывода построителя или перед строкой НовыйМакет = ПостроительОтчета.Макет;
написать строку
ПостроительОтчета.Макет = Неопределено;
, иначе макет первый раз зафиксируется и больше автогенерироваться не будет :o)

Редактировать ширину колонок после выполнения кода можно так:

//Макет - это макет, полученный из построителя, 
//который мы после редактирования запихнем обратно в построитель 
//Ширина - число, ширина колонки  

Для Каждого ОбластьПоиска Из Макет.Области Цикл

    ТекущаяОбласть = Неопределено;

    Пока Истина Цикл

        ТекущаяОбласть = Макет.НайтиТекст(ПредставлениеКолонки, ТекущаяОбласть, ОбластьПоиска, Истина, Истина, Истина, Ложь);

        Если ТекущаяОбласть <> Неопределено Тогда
            ТекущаяОбласть.ШиринаКолонки = Ширина;
        Иначе
            Прервать;
        КонецЕсли;

    КонецЦикла;

КонецЦикла;

Переименовываем поля в построителе

Полезная процедура из типовых конфигураций. Пояснения в коде.

// Процедура заполняет представления элементов всех коллекций построителя отчета на
 
//  основании соответствия имен и представдлений переданных в параметре
 
//
 
// Параметры
 
//  СтруктураСоответствияИмен - Структура, ключ - имя поля, значение - представление поля
 
//  ПостроительОтчета         - ПостроительОтчета
 
//
 
//  Возвращаемое значение
 
//   НЕТ
 
//
 
Процедура ЗаполнитьПредставленияПолей(СтруктураСоответствияИмен, ПостроительОтчета) Экспорт

    СтруктураКоллекцийПостроителяОтчета = Новый Структура("ДоступныеПоля, ВыбранныеПоля, ИзмеренияКолонки, ИзмеренияСтроки, Отбор");
    
    Для каждого ЭлементСтруктуры Из СтруктураКоллекцийПостроителяОтчета Цикл
        Для а = 0 По ПостроительОтчета[ЭлементСтруктуры.Ключ].Количество() - 1 Цикл
            Если ПустаяСтрока(ПостроительОтчета[ЭлементСтруктуры.Ключ][а].Имя) Тогда
                Продолжить;
            КонецЕсли;
            Если СтруктураСоответствияИмен.Свойство(ПостроительОтчета[ЭлементСтруктуры.Ключ][а].Имя) Тогда
                ПостроительОтчета[ЭлементСтруктуры.Ключ][а].Представление = СтруктураСоответствияИмен[ПостроительОтчета[ЭлементСтруктуры.Ключ][а].Имя];
            КонецЕсли; 
        КонецЦикла; 
    КонецЦикла; 
    
КонецПроцедуры // ЗаполнитьПредставленияПолей()
 

///вызывается при инициализации построителя
 

СтруктураИмен = Новый Структура;
    СтруктураИмен.Вставить("ДатаОтгрузки", "Дата отгрузки");
    СтруктураИмен.Вставить("КоличествоДокумента", "Количество документа");
    СтруктураИмен.Вставить("СуммаДокумента", "Сумма документа");
    СтруктураИмен.Вставить("СостояниеОтгрузки", "Состояние отгрузки");
    СтруктураИмен.Вставить("НомерСчета", "Номер счета");

    ЗаполнитьПредставленияПолей(СтруктураИмен, ПостроительОтчетаОтчет);