| 
    
            
         
         | 
    
    
  | 
СКД как программно изменить шрифт заголовка? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        aleksejafonkin    
     27.06.18 
            ✎
    15:20 
 | 
         
        Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
 
        СтандартнаяОбработка = Ложь; НастройкиОтчета = КомпоновщикНастроек.ПолучитьНастройки(); лкОтборОрг = ""; лкОтборДата = ""; лкОтборПоПроекту = ""; Для Каждого СтрОтбора Из НастройкиОтчета.Отбор.Элементы Цикл Если ТипЗнч(СтрОтбора) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда Если Строка(СтрОтбора.ЛевоеЗначение) = "ПериодРегистрации" И Строка(СтрОтбора.ПравоеЗначение) <> "" И СтрОтбора.Использование = Истина Тогда лкОтборДата = " за " + Строка(Формат(СтрОтбора.ПравоеЗначение,"ДФ=dd.MM.yyyy")); КонецЕсли; Если Строка(СтрОтбора.ЛевоеЗначение) = "Проект" И Строка(СтрОтбора.ПравоеЗначение) <> "" И СтрОтбора.Использование = Истина Тогда лкОтборПоПроекту = "по проекту: " + Строка(СтрОтбора.ПравоеЗначение); КонецЕсли; Если Строка(СтрОтбора.ЛевоеЗначение) = "Организация" И Строка(СтрОтбора.ПравоеЗначение) <> "" И СтрОтбора.Использование = Истина Тогда лкОтборНаОрг = "на " + Строка(СтрОтбора.ПравоеЗначение); КонецЕсли; Если Строка(СтрОтбора.ЛевоеЗначение) = "ОтОрганизации" И Строка(СтрОтбора.ПравоеЗначение) <> "" И СтрОтбора.Использование = Истина Тогда лкОтборОтОрг = " от " + Строка(СтрОтбора.ПравоеЗначение); КонецЕсли; КонецЕсли; КонецЦикла; ПарамЗаголовок = НастройкиОтчета.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Заголовок")); ПарамЗаголовок.Использование = Истина; ПарамЗаголовок.Значение = "Реестр платежей" + лкОтборДата + Символы.ПС + лкОтборНаОрг + лкОтборОтОрг + Символы.ПС + лкОтборПоПроекту; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиОтчета, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновки); КонецПроцедуры Отчет написан на СКД, программно меняю заголовок, но не знаю как поменять теперь шрифт у заголовка, подскажете?  | 
|||
| 
    1
    
        Tonik992    
     27.06.18 
            ✎
    15:25 
 | 
         
        В МакетеКомпоновки надо искать заголовок и там уже шаманить.
 
        Либо ПроцессорВывода выводишь в цикле в документ, и когда доберешься до заголовока, меняй шрифт.  | 
|||
| 
    2
    
        Vakhrin    
     27.06.18 
            ✎
    16:00 
 | 
         
        Элемент условного оформления для заголовка?     
         | 
|||
| 
    3
    
        Малыш Джон    
     27.06.18 
            ✎
    16:00 
 | 
         
        Сомневаюсь, что в макете будет информация о шрифте заголовке     
         | 
|||
| 
    4
    
        Малыш Джон    
     27.06.18 
            ✎
    16:00 
 | 
         
        (2) а условие какое?     
         | 
|||
| 
    5
    
        Vakhrin    
     27.06.18 
            ✎
    16:18 
 | 
         
        Никакого условия, никаких полей, только описание оформления и область применения.     
         | 
|||
| 
    6
    
        aleksejafonkin    
     27.06.18 
            ✎
    16:38 
 | 
         
        (5) вот как эту область отловить?     
         | 
|||
| 
    7
    
        Tonik992    
     27.06.18 
            ✎
    17:17 
 | 
         
        Берешь ПроцессорВывода, вызываешь НачатьВывод()
 
        Далее цикл: ЭлементКомпоновки = ПроцессорКомпоновки.Следующий(); Пока ЭлементКомпоновки <> Неопределено Цикл .... // тут ты в ЭлементКомпоновки находишь заголовок и шаманишь ПроцессорВывода.ВывестиЭлемент(ЭлементКомпоновки) ... ЭлементКомпоновки = ПроцессорКомпоновки.Следующий(); КонецЦикла;  | 
|||
| 
    8
    
        aleksejafonkin    
     27.06.18 
            ✎
    17:26 
 | 
         
        (7) Спасибо, сейчас попробую!     
         | 
|||
| 
    9
    
        Ботаник Гарден Меран    
     27.06.18 
            ✎
    17:38 
 | 
         
        Зачем такие муки, если СКД программно?
 
        Берешь ДокументРезультат.Область(Стр1, Кол1, СтрN, КолN).Шрифт = Новый Шрифт(<ИмяШрифта>,<Размер>,...);  | 
|||
| 
    10
    
        aleksejafonkin    
     27.06.18 
            ✎
    18:00 
 | 
         
        (9) Спасибо!     
         | 
|||
| 
    11
    
        Tonik992    
     28.06.18 
            ✎
    09:36 
 | 
         
        (9) Такой подход менее гибкий, и слишком зависит от видимости заголовка.     
         | 
|||
| 
    12
    
        Ботаник Гарден Меран    
     28.06.18 
            ✎
    10:19 
 | 
         
        (11)
 
        В (9) не подход, а намёк. А остальное - хум хау.  | 
|||
| 
    13
    
        Vakhrin    
     28.06.18 
            ✎
    11:06 
 | 
         
        Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
 
        ЭлементОформления = КомпоновщикНастроек.Настройки.УсловноеОформление.Элементы.Добавить(); ЭлементОформления.ИспользоватьВЗаголовке = ИспользованиеУсловногоОформленияКомпоновкиДанных.Использовать; ЭлементОформления.ИспользоватьВГруппировке = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; ЭлементОформления.ИспользоватьВЗаголовкеПолей = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; ЭлементОформления.ИспользоватьВИерархическойГруппировке = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; ЭлементОформления.ИспользоватьВОбщемИтоге = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; ЭлементОформления.ИспользоватьВОтборе = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; ЭлементОформления.ИспользоватьВПараметрах = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(,,,,, Истина)); КонецПроцедуры  | 
|||
| 
    14
    
        Tonik992    
     28.06.18 
            ✎
    13:33 
 | 
         
        (13) Тоже самое сделал в конструкторе. И это реально работает, проверил. 
 
        СКД удивляет  | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |