|
альбомная ориентация в отчете скд 1c 8.2 | ☑ | ||
---|---|---|---|---|
0
manti
17.12.13
✎
17:53
|
Может тема уже и поднималась.
Как в отчете СКД сделать альбомную ориентацию под тонкий клиент? вот так Функция СформироватьОтчет(Результат = Неопределено, ДанныеРасшифровки,ВыводВФормуОтчета = Истина) Экспорт Если ДанныеРасшифровки = Неопределено тогда ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных; КонецЕсли; Результат.Очистить(); Макет = ЭтотОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); ЭтотОбъект.СкомпоноватьРезультат(Результат, ДанныеРасшифровки); Результат.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт; Результат.ПоказатьУровеньГруппировокСтрок(1); Возврат Результат; КонецФункции и так ДанныеРасшифровки = Неопределено; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, Новый Структура("Данные", ТЗ), ДанныеРасшифровки); // Установим Альбомную ориентацию страницы ДокументРезультат = ЭлементыФормы.Результат; ДокументРезультат .ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт; // Выводим данные отчета ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент( ДокументРезультат); ПроцессорВывода.НачатьВывод(); ЭлементРезультата = ПроцессорКомпоновки.Следующий(); Пока ЭлементРезультата <> Неопределено Цикл ПроцессорВывода.ВывестиЭлемент(ЭлементРезультата); ЭлементРезультата = ПроцессорКомпоновки.Следующий(); КонецЦикла; ПроцессорВывода.ЗакончитьВывод(); не прокатывает |
|||
1
Wobland
17.12.13
✎
17:55
|
так же, как и в отчёте без СКД
|
|||
2
Wobland
17.12.13
✎
17:55
|
и так же, как и под толстый
|
|||
3
manti
17.12.13
✎
17:57
|
(2) есть пруший пример ) может где в типовйо ЗУП есть кто подскажет?
|
|||
4
manti
17.12.13
✎
18:01
|
Переменная не определена (СхемаКомпоновкиДанных)
МакетКомпоновки = КомпоновщикМакета.Выполнить(<<?>>СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки); (Проверка: Сервер) {Форма.ФормаОтчета.Форма(88,74)}: Переменная не определена (КомпоновщикНастроек) МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, <<?>>КомпоновщикНастроек.Настройки, ДанныеРасшифровки); (Проверка: Сервер) {Форма.ФормаОтчета.Форма(91,85)}: Переменная не определена (ТЗ) ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, Новый Структура("Данные", <<?>>ТЗ), ДанныеРасшифровки); (Проверка: Сервер) если с тем кодом что выше то ругается на неимение таких вот реквизитов |
|||
5
manti
18.12.13
✎
09:41
|
up
|
|||
6
Defender aka LINN
18.12.13
✎
09:51
|
(4) А слабО теперь рассказать, какое это отношение имеет к ориентации страницы?
|
|||
7
manti
18.12.13
✎
09:51
|
Нужен пример под тонкий клиент - УФ)
|
|||
8
Wobland
18.12.13
✎
09:54
|
(7) под толстый ОФ сгодится?
|
|||
9
manti
18.12.13
✎
10:00
|
(8) нет, управляемая форма
|
|||
10
Wobland
18.12.13
✎
10:01
|
а вдруг документ на сервере формируется?
|
|||
11
manti
18.12.13
✎
10:10
|
(10) есть такое, что поменять в коде?
|
|||
12
Wobland
18.12.13
✎
10:11
|
дарю. ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт;
|
|||
13
manti
18.12.13
✎
10:21
|
(12) спасибо , на форме есть Результат типа ТабДокумент. Форма отчета построена конструктором автоматом. Так а как к этому результату обратиться там по идее нужен какой-нить процессор компановки
|
|||
14
Wobland
18.12.13
✎
10:25
|
а он что, элемент формы?
|
|||
15
manti
18.12.13
✎
10:31
|
(14) да, попробуйте нарисовать форму любого отчета на СКД - сами увидите
|
|||
16
Wobland
18.12.13
✎
10:36
|
авотфих. на форме нет Результата типа ТабДокумент
|
|||
17
manti
18.12.13
✎
10:41
|
(16) что ? еще раз плиз
|
|||
18
Defender aka LINN
18.12.13
✎
10:48
|
(16) Врать-то не надо
|
|||
19
Wobland
18.12.13
✎
11:25
|
(18) вот те крест
|
|||
20
manti
18.12.13
✎
11:46
|
Если кому то тожеактуально, то в модуле объекта сделал экспортную пр-ру:
Процедура СформироватьРезультат(Результат) Экспорт СхемаКомпоновки = ПолучитьМакет("Макет1"); КомпоновщикМакетаКомпоновкиДанных = Новый КомпоновщикМакетаКомпоновкиДанных; // МакетКомпоновкиДанных = КомпоновщикМакетаКомпоновкиДанных.Выполнить(СхемаКомпоновки,КомпоновщикНастроек.Настройки); МакетКомпоновкиДанных = КомпоновщикМакетаКомпоновкиДанных.Выполнить(СхемаКомпоновки,КомпоновщикНастроек.ПолучитьНастройки()); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных,,,истина); ПроцессорВыводаРезультата = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВыводаРезультата.УстановитьДокумент(Результат); ПроцессорВыводаРезультата.Вывести(ПроцессорКомпоновкиДанных); КонецПроцедуры Далее ее вызов на форме(нарисовал свою кнопку сформировать) &НаКлиенте Процедура Сформировать(Команда) СформироватьНаСервере(); КонецПроцедуры &НаСервере Процедура СформироватьНаСервере() Объект = РеквизитФормыВЗначение("Отчет"); Результат.Очистить(); Объект.СформироватьРезультат(Результат); ЭтаФорма.СкомпоноватьРезультат(); Результат.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; Результат.АвтоМасштаб = Истина; КонецПроцедуры |
|||
21
manti
18.12.13
✎
11:47
|
ВСЕ
|
|||
22
Wobland
18.12.13
✎
11:48
|
на здоровье
|
|||
23
Defender aka LINN
18.12.13
✎
12:00
|
Гени(т)ально (19) флаг "использовать систему компоновки" ставил, когда форму создавал? |
|||
24
Wobland
18.12.13
✎
12:03
|
(23) ставил. да не бывает на форме табдокументов
|
|||
25
manti
18.12.13
✎
12:05
|
(23) а что эта галка переопределяет?
|
|||
26
manti
18.12.13
✎
12:06
|
(23) а ты попробуй без ЭтаФорма.СкомпоноватьРезультат(); и отпиши
|
|||
27
Defender aka LINN
18.12.13
✎
12:16
|
(26) Давай лучше ты попробуешь без первой строки.
(24) Ну, поле табличного документа. Таб. документ - реквизит формы. (25) Без нее будет тупо форма - рисуй все сам. |
|||
28
Wobland
18.12.13
✎
12:17
|
(27) ну для УФ - просто поле ;)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |