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
| я тихо шизею | |
| Интернет-форум Краснодарского края и Краснодара |