Имя: Пароль:
1C
 
Вывод в табличный документ
0 Light sign
 
21.07.08
14:55
Стоит такая задача :
Есть табличный документ листов так в 100.  Попеременно чередуются страницы с альбомной и книжной ориентацией. При этом некоторые листы формируются динамически , то есть у такого листа есть заголовок и N - е количество строк секций. И надо выводить номер листа на каждом листе.

Можно ли это сделать? Например, у меня  не получается вообще выводить в одном документе страницы с альбомной и книжной ориентацией. Документ выводится на экран с той ориентацией, которая была применена последней.

Может кто-нибудь уже сталкивался и решил эту задачу(задача , я думаю,  часто встречающася) ?
1 Aprobator
 
21.07.08
15:14
Проверять нет времени, но вот так пробовал?

СекцияАльбомная = Макет.ПолучитьОбласть("НужнаяСекция");
СекцияАльбомная.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;

ТабДок.Вывести(СекцияАльбомная);

СекцияПортретная = Макет.ПолучитьОбласть("НужнаяСекция");
СекцияПортретная.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;

ТабДок.Вывести(СекцияПортретная);
2 Garkin
 
21.07.08
15:18
(1) можешь не пробовать
ОриентацияСтраницы - это свойство табличного документа а не области
3 Aprobator
 
21.07.08
15:22
(2) СП ПолучитьОбласть - Возвращаемое значение:
Тип: ТабличныйДокумент. Область, как новый табличный документ.
4 Light sign
 
21.07.08
15:26
К сожалению, (1) не работает.
5 Garkin
 
21.07.08
15:30
(3) а это мысль :), только "ТабДок" состоит из областей а не из табличных документов.
6 Light sign
 
21.07.08
15:31
(2) непонятно, то ли получить область из макета ,
то ли из сформированного табличного документа ..
7 kosts
 
21.07.08
15:32
>>И надо выводить номер листа на каждом листе.
Для этого нужно использовать колонтитул
8 kosts
 
21.07.08
15:33
>>Например, у меня  не получается вообще выводить в одном документе страницы с альбомной и книжной ориентацией.

Нужно глянуть как это сделано в стандартных конфах...
9 Garkin
 
21.07.08
15:34
(6) На самом деле ПолучитьОбласть() возвращает табличный документ у которого можно  установить ориентацию, но к сожалению  ТабДок.Вывести() выводит в ТабДок не "табличный документ" о область этого "Табличного документа"
10 Light sign
 
21.07.08
15:36
Кажется придется выводить в два отдельных документа. Горят синим пламенем номера листов.
11 Aprobator
 
21.07.08
15:42
Если идея (1) работает, то не вижу проблемы:

Условие на портретную область
Вывод портрета

ПортретнаяОбласть = Новый ТабличныйДокумент;
ПортретнаяОбласть.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;

ОчереднаяСекция = Макет.ПолучитьОбласть(ИмяОчереднойСекции);
ПортретнаяОбласть.Вывести(ОчереднаяСекция);
// не забыть проверку на размещение на одной странице.

РезТабДок.Вывести(ПортретнаяОбласть);

По аналогии делаем альбом.
12 Aprobator
 
21.07.08
15:45
(11) ошибся - так не катит. Метод Вывести как раз возвращает ОбластьЯчеек.
13 Aprobator
 
21.07.08
15:57
(+12) а вообще надо конечно (11) протестить, просто сейчас не до этого.
Достали переброски данных из зарплаты от "Паруса" в "ЗУП".
14 Light sign
 
21.07.08
16:01
Попробую (11).
15 Light sign
 
21.07.08
16:57
Нет (11) не получается. Насколько я понял, не имеет значения какую ориентацию имеют добавляемые табличные документы "ПортретнаяОбласть" и "АльбомнаяОбласть". Имеет значение только свойство Ориентация документа, в который мы их выведем - в нашем примере это ТабРезДок. А свойство это по умолчанию - книжный.