![]() |
![]() |
![]() |
|
СКД: Как в СКД каждую запись в группировке печатать на отдельной странице | ☑ | ||
---|---|---|---|---|
0
Asintelekt
10.08.09
✎
06:32
|
В отчете есть группировка, имеющая дочерние группировки и таблицу. Сам отчет представляет собой справку для сотрудников, ее в день берут человек 20, а вечером на всех печатают. Надо чтобы каждому сотруднику справка печаталась на отдельной странице (Верхняя группировка – Сотрудник). Что тут можно сделать?
Заранее спасибо! |
|||
1
Andrey07070707
10.08.09
✎
07:20
|
(0)может и не то, непробывал но направление вроде правильное указал )))v8: СКД Как закрепить шапку в отчете?
|
|||
2
Asintelekt
11.08.09
✎
07:03
|
(1) Как я понял, тема для того, чтобы при прокрутки отчета оставалась шапка(для ориентировки, где какие данные). А мне надо каждому сотруднику печатать справку на отдельном листе.
|
|||
3
Asintelekt
11.08.09
✎
08:43
|
up!
|
|||
4
Garkin
11.08.09
✎
09:57
|
||||
5
Asintelekt
18.08.09
✎
11:21
|
(4) Не то, что надо. Отчет полностью сделан визуальными средствами СКД, но с предопределенным макетом. Пробовал в нижний макет группировки добавить разрыв страницы (Таблица - Настройки Печати – Вставить разрыв страницы), не помогло. Как можно сделать разрыв страницы в СКД?
|
|||
6
Garkin
18.08.09
✎
11:28
|
(5) всетаки ищешь легкий путь :(
|
|||
7
Garkin
18.08.09
✎
11:30
|
(5) в СКД сделать разрыв страницы нельзя.
Разрыв страницы можно сделать постобработкой табличного поля. |
|||
8
IronDemon
18.08.09
✎
11:32
|
Процедура ДействияФормыДействие(Кнопка)
ПостроительОтчета.Параметры.Вставить("ДатаКон", ТекущаяДата()); Таб = ЭлементыФормы.Результат; Таб.ОриентацияСтраницы=ОриентацияСтраницы.Ландшафт; Таб.АвтоМасштаб=Истина; Таб.Очистить(); Макет = ПолучитьМакет("Макет"); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьПеревод = Макет.ПолучитьОбласть("Перевод"); СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; Запрос=Новый Запрос; Запрос=ПостроительОтчета.ПолучитьЗапрос(); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл ОбработкаПрерыванияПользователя(); ОбластьЗаголовок.Параметры.Заполнить(Выборка); Таб.Вывести(ОбластьЗаголовок); ЭлементПараметраДанных = Настройки.ПараметрыДанных.Элементы.Найти("Период"); ЭлементПараметраДанных.Значение = ТекущаяДата(); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,Настройки, ); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ЭлементыФормы.Результат); ПроцессорВывода.НачатьВывод(); ЭлементРезультата = ПроцессорКомпоновки.Следующий(); Пока ЭлементРезультата <> Неопределено Цикл ПроцессорВывода.ВывестиЭлемент(ЭлементРезультата); ЭлементРезультата = ПроцессорКомпоновки.Следующий(); КонецЦикла; Таб = ПроцессорВывода.ЗакончитьВывод(); Таб.Вывести(ОбластьПеревод); КонецЦикла; КонецПроцедуры |
|||
9
Asintelekt
18.08.09
✎
13:31
|
(8) ОбластьПеревод = Макет.ПолучитьОбласть("Перевод");
что именно есть в данной области? она и делает разрыв страницы? |
|||
10
IronDemon
18.08.09
✎
13:40
|
(9) Да
|
|||
11
Asintelekt
18.08.09
✎
14:00
|
(10) Можете объяснить, почему не работает таким образом:
http://xmage.ru/view.php?id=7sw0g7gf Отчет полностью сделан визуальными средствами. |
|||
12
IronDemon
18.08.09
✎
14:02
|
Смотри откуда у меня "ОбластьПеревод"
|
|||
13
Asintelekt
18.08.09
✎
14:10
|
(12)Макет = ПолучитьМакет("Макет");
Это надо еще отдельный макет создать (табДок)? |
|||
14
Asintelekt
20.08.09
✎
09:21
|
(8) Можете скинуть сам отчет для примера, не смог разобраться.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |