Имя: Пароль:
1C
1С v8
Колонтитулы в Табличном документе и параметры страницы
0 GirlProgram
 
16.09.11
11:57
1)Как вывести колонтитулы только на нечетных страницах?
Вот мой код. Колонтитулы печатаются на каждой странице:

ТабДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");
//--------------
// бла-бла-бла
//------------
ТабДокумент.Вывести(Макет);
ТабДокумент.НижнийКолонтитул.НачальнаяСтраница = 1;
ТабДокумент.НижнийКолонтитул.ТекстСправа = "Руководитель______" + ИОФ;
ТабДокумент.НижнийКолонтитул.Выводить = Истина;
ТабДокумент.РазмерКолонтитулаСнизу = 10;

2)При этом я еще задаю размеры поля для печати:
ТабДокумент.ПолеСверху = 10;
ТабДокумент.ПолеСнизу = 20;
ТабДокумент.ПолеСправа = 10;
ТабДокумент.ПолеСлева = 30;

Но эти размеры почему-то не учитываются, а по умолчанию устанавливается 10*10*10*10. Почему? И как сделать, чтобы учитывалось?
1 Поручик
 
16.09.11
12:03
Закладка.
Сам не пойму, что за шляпа. Размеры полей, заданные программно, игнорируются.

Уже второй день страдаю.

1С:Предприятие 8.2 (8.2.14.528)
Управление торговлей, редакция 11.0 (11.0.7.2)
Zebra TLP 2844
2 GirlProgram
 
16.09.11
12:18
Помогите кто-нибудь у меня из-за этой фигни проект горит
3 Поручик
 
16.09.11
12:30
(0) Колонтитулы выводятся на каждой странице, так задумано в платфоррме. Для вывода на определённых страницах писать свой код.
4 GirlProgram
 
16.09.11
12:34
Хорошо, тогда что за фигня с параметрами?
5 GirlProgram
 
16.09.11
12:53
Почему у меня информацию по колонтитулам воспринимает, а всю остальную нет? поставила ориентацию ландшафт - портрет печатает. Даже указание имени параметров печати не помогает
6 Поручик
 
16.09.11
13:09
Аналогично. Пытаюсь печатать этикетки.

                   ПечатнаяФорма.ТабличныйДокумент = Новый ТабличныйДокумент;
                   ПечатнаяФорма.ТабличныйДокумент.АвтоМасштаб  = Истина;
                   ПечатнаяФорма.ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
                   ПечатнаяФорма.ТабличныйДокумент.РазмерКолонтитулаСверху = 0;
                   ПечатнаяФорма.ТабличныйДокумент.РазмерКолонтитулаСнизу = 0;
                   ПечатнаяФорма.ТабличныйДокумент.ПолеСверху = 1;
                   ПечатнаяФорма.ТабличныйДокумент.ПолеСнизу = 1;
                   ПечатнаяФорма.ТабличныйДокумент.ПолеСлева = 1;
                   ПечатнаяФорма.ТабличныйДокумент.ПолеСправа = 1;
                   ПечатнаяФорма.ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Ценник_Этикетка";


Игнорируется всё.
7 GirlProgram
 
16.09.11
13:19
у меня такое чувство что нас игнорируют не только параметры печатных форм....
8 Поручик
 
16.09.11
13:59
Кэш чистил, драйвера переставлял, под админской учеткой заходил, кэш чистил, драйвера переставлял, код выносил в конец процедуры.

Начинается истерика.....
9 GirlProgram
 
16.09.11
14:17
Получилось!!!!

короче у меня было так:

ТабДокумент = Новый ТабличныйДокумент;

Макет = ПолучитьМакет("Макет");


/// бла-бла-бла

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ТабДокумент.Вывести(ОбластьПодвал);
   
ТабДокумент.ОриентацияСтраницы                    = ОриентацияСтраницы.Ландшафт;
ТабДокумент.АвтоМасштаб                        = Истина;
ТабДокумент.НижнийКолонтитул.НачальнаяСтраница = 1;
ТабДокумент.НижнийКолонтитул.Выводить            = Истина;
ТабДокумент.НижнийКолонтитул.НачальнаяСтраница = 1;
ТабДокумент.НижнийКолонтитул.Выводить            = Истина;
ТабДокумент.РазмерКолонтитулаСнизу                = 12;
ТабДокумент.ПолеСверху                            = 10;
ТабДокумент.ПолеСнизу                            = 20;
ТабДокумент.ПолеСправа                            = 10;
ТабДокумент.ПолеСлева            
ТабДокумент.НижнийКолонтитул.ТекстСправа        = "Руководитель_____________________" + ИОПодписи;

Возврат    ТабДокумент;

Далее шел возврат, потом обращение в общей функции Напечатать документ и т.д.

Так вот, я вместо "Возврат    ТабДокумент;" прямо указата

ТабДокумент.Показать();

И все идеально :) Нашла в анотации к 8.2: Настройки параметров печати под именем, заданным в свойстве табличного документа "КлючПараметровПечати", сохраняются после вызова диалога параметров страницы, открытия окна предварительного просмотра и выполнения печати (как интерактивно, так и программно).  
Собственно поэтому и поставила "Показать", правда "КлючПараметровПечати" я не использовала.
10 GirlProgram
 
16.09.11
14:19
В общем главное не обращаться к общей функции
11 БибиГон
 
16.09.11
14:21
А где ты все это писала? в какой процедуре?
12 GirlProgram
 
16.09.11
14:28
У меня внешняя обработка, в модуле объекта создала функцию Печать()
Там все и описывала
13 GirlProgram
 
16.09.11
14:29
Теперь осталось продумать как бы описать колонтитулы, чтобы печатались только на нечетных страницах....
14 GirlProgram
 
16.09.11
15:02
Как поставить условие:

ТабДокумент.НижнийКолонтитул.ТекстСправа = ?(([&НомерСтраницы] = 1) или ([&НомерСтраницы] = 3), "Руководитель", "");

Данная строчка не работает.. Как сделать, чтобы сработало?
15 Поручик
 
16.09.11
15:06
(14) Не использовать колонтитулы вообще, а выводить строки, высчитывая высоту страницы в строках.
К сожалению, пора идти, смотрите пример в ТОРГ 12 ПроверитьВывод()
16 oreshka7387
 
16.09.11
15:19
а стандартная формула для нечетного числа "2н+1" в 1с-е не применима? просто интересно
17 GirlProgram
 
16.09.11
15:30
(16)проблема не в формуле и не до формулы
18 GirlProgram
 
16.09.11
15:34
(15) не подходит мне, у меня области слишком большие, можно конечно их разбить на меньшие, но мне надо, чтобы Область с колонтитулом всегда вставала в конец страницы, т.е. сделать имитацию колонтитула тогда...
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан