К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Печать в портретном режиме, а хочу ландшафт!

Гость
0 - 05.07.2013 - 12:13
Бухгалтерия предприятия, редакция 2.0 (2.0.45.5) в терминале

Внешняя форма СФ с выбором подписантов

Везде, где только можно (и видимо, там где нельзя) наставил:
ТабДокумент.ОриентацияСтраницы ориентацияСтраницы.Ландшафт;

пробовал и
ТабДокумент.КлючПараметровПечати = "Параметры_Печати_СФ_1137";
после чего в параметрах страницы менял на ландшафт, печатал, потом открываешь снова - опять 25 = портрет

Как сделать ландшафт?



Гость
1 - 05.07.2013 - 12:14
"=" - опечатка, т.е.

ТабДокумент.ОриентацияСтраницы = ориентацияСтраницы.Ландшафт;
Гость
2 - 05.07.2013 - 12:16
Куда вставить
ТабДокумент.ОриентацияСтраницы = ориентацияСтраницы.Ландшафт;
чтобы наверняка?
Гость
3 - 05.07.2013 - 14:21
Кэш 8.2 почистил. Базу передобавил. Не помогло.
Гость
4 - 05.07.2013 - 14:55
(3) перед строчкой ТабДокумент.Показать()
Гость
5 - 05.07.2013 - 15:09
Нет у меня во внешней печатной форме Показать().
Гость
6 - 05.07.2013 - 15:40
если есть строчка
Возврат ТабДокумент;
тогда перед ней
Гость
7 - 05.07.2013 - 15:47
Модуль Формы:

Процедура ПриОткрытии()
ТабДокумент = Новый ТабличныйДокумент;
Если Корректировочный Тогда
ТабДокумент = ПечатьКорректировочногоСчетаФактуры1137(СсылкаНаОб ъект);
Иначе
ТабДокумент = ПечатьСчетаФактуры1137(СсылкаНаОбъект);
КонецЕсли;

ТабДокумент.ПолеСверху = 13;
ТабДокумент.ПолеСлева = 0;
ТабДокумент.ПолеСнизу = 0;
ТабДокумент.ПолеСправа = 0;

ТабДокумент.ВерхнийКолонтитул.Выводить = Истина;
ТабДокумент.ВерхнийКолонтитул.НачальнаяСтраница = 2;
ТабДокумент.ВерхнийКолонтитул.ВертикальноеПоложени е = ВертикальноеПоложение.Низ;
ЗаголовокДляПечати = ОбщегоНазначения.СформироватьЗаголовокДокумента(Сс ылкаНаОбъект, "Счет-фактура") + " г.";
ТабДокумент.ВерхнийКолонтитул.ТекстСлева = ЗаголовокДляПечати;
ТабДокумент.ВерхнийКолонтитул.ТекстСправа = "Лист [&НомерСтраницы]";
ЭтаФорма.Заголовок = ЗаголовокДляПечати;

Элементыформы.ПолеТабличногоДокумента.ВставитьОбла сть(ТабДокумент.Область());
ЭлементыФормы.ПолеТабличногоДокумента.ОтображатьЗа головки = Ложь;
ЭлементыФормы.ПолеТабличногоДокумента.ОтображатьСе тку = Ложь;
ЭлементыФормы.ПолеТабличногоДокумента.Защита = Истина;
ЭлементыФормы.ПолеТабличногоДокумента.ТолькоПросмо тр = Истина;

КонецПроцедуры






Модуль объекта:


Функция ПечатьСчетаФактуры1137(Ссылка) Экспорт
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.КлючПараметровПечати = "СчетФактура1137СчетФактура1137";
Макет = ПолучитьМакет("СчетФактура1137");

ДанныеДляПечати = Неопределено;
УчетнаяПолитика = Неопределено;

СобратьДанныеДляПечати(Ссылка, ДанныеДляПечати, УчетнаяПолитика);

Если ТипЗнч(ДанныеДляПечати) = Тип("Соответствие") Тогда
Возврат Ложь;
ИначеЕсли ДанныеДляПечати = Неопределено Тогда
Возврат Ложь;
КонецЕсли;

РеквизитыСФ = ОбщегоНазначения.ПолучитьЗначенияРеквизитов(Ссылка ,
"Дата,ВидСчетаФактуры,Исправление,НомерИсправления ,ДоговорКонтрагента");
Дата = РеквизитыСФ.Дата;
ВидСчетаФактуры = РеквизитыСФ.ВидСчетаФактуры;
Исправление = РеквизитыСФ.Исправление;
НомерИсправления = РеквизитыСФ.НомерИсправления;
ДоговорКонтрагента = РеквизитыСФ.ДоговорКонтрагента;

СведенияОбПокупателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (ДанныеДляПечати.Покупатель, СсылкаНаОбъект.Дата);
СведенияОПоставщике = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (ДанныеДляПечати.Поставщик, СсылкаНаОбъект.Дата);

// Выводим шапку

ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
ОбластьМакета.Параметры.Заполнить(ДанныеДляПечати) ;

Если СсылкаНаОбъект.Исправление Тогда
ОбластьМакета.Параметры.НомерИсправления = "Исправление №" + Строка(СсылкаНаОбъект.НомерИсправления) + " от " + Формат(СсылкаНаОбъект.Дата, "ДФ='дд ММММ гггг'") + " г.";
Иначе
ОбластьМакета.Параметры.НомерИсправления = "Исправление № -- от --";
КонецЕсли;

ОбластьМакета.Параметры.ПредставлениеПоставщика = "Продавец: "
+ ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, "НаименованиеДляПечатныхФорм,");

ОбластьМакета.Параметры.АдресПоставщика = "Адрес: " + ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, "ЮридическийАдрес,");

Если НЕ (СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.Налоговы йАгент
И СсылкаНаОбъект.ДоговорКонтрагента.ВидАгентскогоДог овора = Перечисления.ВидыАгентскихДоговоров.Нерезидент) Тогда

КПП = ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, "КПП,", Ложь);
Если ЗначениеЗаполнено(КПП) Тогда
КПП = "/" + КПП;
КонецЕсли;
ОбластьМакета.Параметры.ИННпоставщика = "ИНН/КПП продавца: "
+ ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, "ИНН,", Ложь) + КПП;

Иначе
ОбластьМакета.Параметры.ИННпоставщика = "ИНН/КПП продавца: --"
КонецЕсли;

ЗаголовокДляПечати = ОбщегоНазначения.СформироватьЗаголовокДокумента(Да нныеДляПечати, "Счет-фактура");
ОбластьМакета.Параметры.Номер = ЗаголовокДляПечати;

Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда

ОбластьМакета.Параметры.ПредставлениеГрузоотправит еля = "Грузоотправитель и его адрес: --";
ОбластьМакета.Параметры.ПредставлениеГрузополучате ля = "Грузополучатель и его адрес: --";

Иначе

СведенияОГрузоотправителе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (
?(ДанныеДляПечати.Грузоотправитель = "он же", Неопределено, ДанныеДляПечати.Грузоотправитель), СсылкаНаОбъект.Дата);
СведенияОГрузополучателе = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице (
ДанныеДляПечати.Грузополучатель, СсылкаНаОбъект.Дата);


...


Иначе
Если ЗначениеЗаполнено(Строчка.СтранаПроисхождения) Тогда
ОбластьМакета.Параметры.ПредставлениеСтраны = СокрЛП(Строчка.СтранаПроисхождения.Наименование);
КонецЕсли;
КонецЕсли;

// Проставляем прочерки в незаполненные графы в соответствии с Постановлением
Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда

ОбластьМакета.Параметры.ЕдиницаИзмерения = "--";
ОбластьМакета.Параметры.ЕдиницаИзмеренияКод = "--";

ОбластьМакета.Параметры.Количество = "--";
ОбластьМакета.Параметры.Цена = "--";
ОбластьМакета.Параметры.Стоимость = "--";
ОбластьМакета.Параметры.Акциз = "--";

ОбластьМакета.Параметры.СтранаПроисхожденияКод = "--";
ОбластьМакета.Параметры.ПредставлениеСтраны = "--";
ОбластьМакета.Параметры.ПредставлениеГТД = "--";

Иначе

Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.ЕдиницаИ змерения) Тогда
ОбластьМакета.Параметры.ЕдиницаИзмерения = "--";
ОбластьМакета.Параметры.ЕдиницаИзмеренияКод = "--";
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.ЕдиницаИ змеренияКод) Тогда
ОбластьМакета.Параметры.ЕдиницаИзмеренияКод = "--";
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.Количест во) Тогда
ОбластьМакета.Параметры.Количество = "--";
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОбластьМакета.Параметры.Цена) Тогда
ОбластьМакета.Параметры.Цена = "--";
КонецЕсли;

ОбластьМакета.Параметры.СтранаПроисхожденияКод = "--";
ОбластьМакета.Параметры.ПредставлениеСтраны = "--";
ОбластьМакета.Параметры.ПредставлениеГТД = "--";

КонецЕсли;

// Проверим возможность вывода табличного документа
СтрокаСПодвалом = Новый Массив;
СтрокаСПодвалом.Добавить(ОбластьМакета);
Если НомерСтроки = КоличествоСтрок Тогда
// Если последняя строка, то должен поместится итог и подвал
СтрокаСПодвалом.Добавить(ОбластьМакетаИтого);
СтрокаСПодвалом.Добавить(ОбластьМакетаПодвал);
КонецЕсли;

Если НЕ ФормированиеПечатныхФорм.ПроверитьВыводТабличногоД окумента(ТабДокумент, СтрокаСПодвалом) Тогда

Если КоличествоСтрок > 0 Тогда
// Вывод разделителя и заголовка таблицы на новой странице
ТабДокумент.ВывестиГоризонтальныйРазделительСтрани ц();
ТабДокумент.Вывести(ОбластьМакетаЗаголовокТаблицы) ;
КонецЕсли;

КонецЕсли;

ТабДокумент.Вывести(ОбластьМакета);

ИтогоСтоимость = ИтогоСтоимость + Строчка.СуммаБезНДС;
ИтогоСуммаНДС = ИтогоСуммаНДС + Строчка.СуммаНДС;
ИтогоВсего = ИтогоВсего + Строчка.СуммаСНДС;

КонецЦикла;

Если ВыборкаСтрокТовары.Количество() > 0 Тогда
ТабДокумент.Область(ТабДокумент.ВысотаТаблицы,,Таб Документ.ВысотаТаблицы,).ВместеСоСледующим = Истина;
КонецЕсли;

// Выводим строку "Всего к оплате"

Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс Тогда
ОбластьМакетаИтого.Параметры.ИтогоСтоимость = "--";
Иначе
ОбластьМакетаИтого.Параметры.ИтогоСтоимость = ИтогоСтоимость;
КонецЕсли;
Если СчетФактураБезНДС Тогда
ОбластьМакетаИтого.Параметры.ИтогоСуммаНДС = "без НДС";
Иначе
ОбластьМакетаИтого.Параметры.ИтогоСуммаНДС = ИтогоСуммаНДС;
КонецЕсли;
ОбластьМакетаИтого.Параметры.ИтогоВсего = ИтогоВСего;

ТабДокумент.Вывести(ОбластьМакетаИтого);

// Выводим подвал

ОбластьМакетаПодвал.Параметры.Заполнить(ДанныеДляП ечати);

Если СсылкаНаОбъект.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.Налоговы йАгент Тогда
ОбластьМакетаПодвал.Параметры.Свидетельство = ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОбПокупателе, "Свидетельство,");
Иначе
ОбластьМакетаПодвал.Параметры.Свидетельство = ФормированиеПечатныхФорм.ОписаниеОрганизации(Сведе нияОПоставщике, "Свидетельство,");
КонецЕсли;

ТабДокумент.Вывести(ОбластьМакетаПодвал);

// Устанавливаем параметры печати и колонтитулы

ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
ТабДокумент.ПолеСверху = 13;
ТабДокумент.ПолеСлева = 0;
ТабДокумент.ПолеСнизу = 0;
ТабДокумент.ПолеСправа = 0;

Если ТипЗнч(СсылкаНаОбъект.ДокументОснование) <> Тип("ДокументСсылка.ОказаниеУслуг") Тогда
ТабДокумент.ВерхнийКолонтитул.Выводить = Истина;
ТабДокумент.ВерхнийКолонтитул.НачальнаяСтраница = 2;
ТабДокумент.ВерхнийКолонтитул.ВертикальноеПоложени е = ВертикальноеПоложение.Низ;
ТабДокумент.ВерхнийКолонтитул.ТекстСлева = ЗаголовокДляПечати;
ТабДокумент.ВерхнийКолонтитул.ТекстСправа = "Лист [&НомерСтраницы]";
КонецЕсли;

ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
Возврат ТабДокумент;

КонецФункции
Гость
8 - 05.07.2013 - 15:48
Т.е. из модуля формы вызывается Функция ПечатьСчетаФактуры1137
Гость
9 - 08.07.2013 - 14:54
Ура! Победил.

Параметры нужно было задавать в Печать(), откуда вызывается Форма.Открыть() из которой вызывается ПечатьСчетаФактуры1137(). Я почему-то решил, что модуль формы в первыю очередь сам запускается.

Короче, в печать работает и применение параметров и запоминание КлючПараметровПечати
Гость
10 - 08.07.2013 - 15:04
я тихо шизею


К списку вопросов






Copyright ©, Все права защищены