Гость
Форумы / [игнор отключен] [закрыт для гостей] / Отчет СКД (Таблица): вывести параметры в колонки / 7 сообщений из 7, страница 1 из 1
20.04.2017, 10:40
    #39441415
Rudge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
Здравствуйте.

Подскажите, как в отчет СКД вида Таблица вывести значения параметров как колонки (на рисунке выделено красным как должно получиться):
...
Рейтинг: 0 / 0
20.04.2017, 11:04
    #39441429
vanechka_ivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
в смысле затолкать вместо надписей значения?

через объектную модель скд, там можно перед выводом отчета получить уже готовый макет, найти нужную область и вписать что угодно
...
Рейтинг: 0 / 0
20.04.2017, 11:48
    #39441480
Rudge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
А проще никак нельзя?
...
Рейтинг: 0 / 0
20.04.2017, 12:09
    #39441496
Rudge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
Я добавил группы полей, но при программном обращении к списку полей СКД (СхемаКомпоновкиДанных.НаборыДанных.НаборДанных1.Поля) их не видно.
...
Рейтинг: 0 / 0
21.04.2017, 05:42
    #39441966
Rudge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
Сделал следующим образом:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
		
    СтандартнаяОбработка = Ложь;
	
    СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
	
	Настройки = КомпоновщикНастроек.ПолучитьНастройки();
	КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);
	ПараметрыДанных = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы;
	
	МойПараметр = ПараметрыДанных.Найти("СтандартныйПериод");	
	ДатаГод = Формат(МойПараметр.Значение.ДатаНачала, "ДЛФ=Д") + " - " + Формат(МойПараметр.Значение.ДатаОкончания, "ДЛФ=Д");
	МойПараметр = ПараметрыДанных.Найти("СтандартныйПериодМесяц");
	ДатаМесяц = Формат(МойПараметр.Значение.ДатаНачала, "ДЛФ=Д") + " - " + Формат(МойПараметр.Значение.ДатаОкончания, "ДЛФ=Д");
	МойПараметр = ПараметрыДанных.Найти("СтандартныйПериодДень");
	ДатаДень = Формат(МойПараметр.Значение.ДатаНачала, "ДЛФ=Д");
	
   
	Настройки = КомпоновщикНастроек.ПолучитьНастройки();
	
	Для Каждого ЭлементВыбора Из Настройки.Выбор.Элементы Цикл
		
		Если ЭлементВыбора.Заголовок = "Период Год" Тогда			
			ЭлементВыбора.Заголовок = ДатаГод;			
		ИначеЕсли ЭлементВыбора.Заголовок = "Период Месяц" Тогда
			ЭлементВыбора.Заголовок = ДатаМесяц;	
		ИначеЕсли ЭлементВыбора.Заголовок = "Период День" Тогда
			ЭлементВыбора.Заголовок = ДатаДень;
		КонецЕсли;
		
	КонецЦикла;
	
	КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);
	
             
    //Помещаем в переменную данные о расшифровке данных
    ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
     
    //Формируем макет, с помощью компоновщика макета
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
     
    //Передаем в макет компоновки схему, настройки и данные расшифровки
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);
		
    //Выполним компоновку с помощью процессора компоновки
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    //Передаем внешний набор данных
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки);
     
    //Очищаем поле табличного документа
    ДокументРезультат.Очистить();
     
    //Выводим результат в табличный документ
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
     
    ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
	
КонецПроцедуры



В результате получилось так:
...
Рейтинг: 0 / 0
21.04.2017, 05:45
    #39441968
Rudge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
Теперь проблема эти поля группы отцентрировать и задать нужный шрифт и фон. Через условное оформление не удаётся, т.к. эти поля группы там отсутствуют в списке оформляемых полей.
...
Рейтинг: 0 / 0
21.04.2017, 10:49
    #39442094
Rudge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отчет СКД (Таблица): вывести параметры в колонки
Отформатировал добавленные мной колонки в выводимом табличном документе:

Код: sql
1.
2.
3.
4.
5.
6.
ДиапазонЯчеек = ДокументРезультат.Область("R11C3:R11C11");
Если ДиапазонЯчеек <> Неопределено Тогда
	ДиапазонЯчеек.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
	ДиапазонЯчеек.ЦветФона = Новый Цвет(155, 194, 230);
	ДиапазонЯчеек.Шрифт = Новый Шрифт("Arial", 8, Истина);
КонецЕсли;



Такой геморрой с этим отчетом, на запрос уходит час, на оформление 3.
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Отчет СКД (Таблица): вывести параметры в колонки / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]