|
Печатная форма 8,2 | ☑ | ||
---|---|---|---|---|
0
KonstantinK90
22.12.15
✎
08:05
|
Люди добрые подскажите в чем дело не могу настроить печатную форму что бы если не влазиет на страницу переносил на следующую. Вот ниже код
ТабДокумент = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Макет"); // Зададим параметры макета ТабДокумент.ПолеСверху = 0; ТабДокумент.ПолеСлева = 5; ТабДокумент.ПолеСнизу = 0; ТабДокумент.ПолеСправа = 5; ТабДокумент.РазмерКолонтитулаСверху = 0; ТабДокумент.РазмерКолонтитулаСнизу = 0; ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; //ТабДокумент.МасштабПечати = 85; ТабДокумент.АвтоМасштаб = Истина; // //Заголовок ссылка ОбластьЗаголовок = Макет.ПолучитьОбласть("Шапка"); ОбластьЗаголовок.Параметры.НомерСчетаФактуры = НомерСчетаФактуры; ОбластьЗаголовок.Параметры.ДатаСчетаФактуры = ДатаСчетаФактуры; ОбластьЗаголовок.Параметры.НомерИсправления = "-"; ОбластьЗаголовок.Параметры.ДатаИсправления = "-"; ОбластьЗаголовок.Параметры.ПредставлениеПоставщика = Организация.НаименованиеПолное; ОбластьЗаголовок.Параметры.АдресПоставщика = Организация.ЮридическийАдрес; ОбластьЗаголовок.Параметры.ИННПоставщика = Организация.ИНН + "/" + Организация.КПП; ОбластьЗаголовок.Параметры.ПредставлениеГрузоотправителя = Организация.НаименованиеПолное + ", " + Организация.ЮридическийАдрес; ОбластьЗаголовок.Параметры.ПредставлениеГрузополучателя = ?(Не ЗначениеЗаполнено(Грузополучатель), Контрагент.НаименованиеПолное + Контрагент.ФактическийАдрес,Грузополучатель.НаименованиеПолное + Грузополучатель.ФактическийАдрес); ОбластьЗаголовок.Параметры.ПредставлениеПокупателя = Контрагент.НаименованиеПолное; ОбластьЗаголовок.Параметры.АдресПокупателя = Контрагент.ЮридическийАдрес; Если ЗначениеЗаполнено(Контрагент.ИНН) И ЗначениеЗаполнено(Контрагент.КПП) Тогда ОбластьЗаголовок.Параметры.ИННПокупателя = Контрагент.ИНН + "/" + Контрагент.КПП; Иначе ОбластьЗаголовок.Параметры.ИННПокупателя = "-" + "/" + "-"; КонецЕсли; ОбластьЗаголовок.Параметры.Валюта = ВалютаДокумента.НаименованиеПолное + ", " + ВалютаДокумента.Код; ОбластьЗаголовок.Параметры.НомерДок = Номер; ТабДокумент.Вывести(ОбластьЗаголовок); // Создаем массив для проверки вывода МассивВыводимыхОбластей = Новый Массив; ОбластьШапкаТаб = Макет.ПолучитьОбласть("ЗаголовокТаблицы"); ОбластьИтого = Макет.ПолучитьОбласть("Итого"); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ТабДокумент.Вывести(ОбластьШапкаТаб); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); НомерСтраницы = 1; КоличествоСтрок = Товары.Количество(); Ном = 0; Для Каждого Стр Из Товары Цикл Ном = Ном +1; ОбластьСтрока.Параметры.НомерСтроки = Ном; ОбластьСтрока.Параметры.ТоварКод = Стр.Номенклатура.ОЕ; ОбластьСтрока.Параметры.ТоварНаименование = стр.Номенклатура.Наименование; ОбластьСтрока.Параметры.ЕдиницаИзмеренияКод = Стр.Номенклатура.Единица.Код; ОбластьСтрока.Параметры.ЕдиницаИзмерения = Стр.Номенклатура.Единица; ОбластьСтрока.Параметры.Количество = Стр.Количество; ОбластьСтрока.Параметры.Цена = Стр.Цена; ОбластьСтрока.Параметры.Стоимость = Стр.Сумма - Стр.СуммаНДС; ОбластьСтрока.Параметры.Акциз = "Без акциза"; ОбластьСтрока.Параметры.СтавкаНДС = Стр.СтавкаНДС; ОбластьСтрока.Параметры.СуммаНДС = Стр.СуммаНДС; ОбластьСтрока.Параметры.Всего = Стр.Сумма; //Пойдем в партии и найдем страну происхождения НайтиПартию = ПоискПартии(Дата,Склад,Ссылка,Стр.Номенклатура); ОбластьСтрока.Параметры.СтранаПроисхожденияКод = ?(НайтиПартию = Неопределено, "",НайтиПартию.НомерГТД); ОбластьСтрока.Параметры.ПредставлениеСтраны = ?(НайтиПартию = Неопределено, "",НайтиПартию.Страна); ОбластьСтрока.Параметры.ПредставлениеГТД = ""; Если Ном = 1 Тогда // Процедура считает сколько страниц будет СклонениеПоПадежамЛиста = получитьЛист(НомерСтраницы); ОбластьПодвал.Параметры.КоличествоЛистов = "Документ составлен на " + НомерСтраницы + " " + СклонениеПоПадежамЛиста; //ТабДокумент.Вывести(ОбластьЗаголовокТаблицы); Иначе МассивВыводимыхОбластей.Очистить(); МассивВыводимыхОбластей.Добавить(ОбластьСтрока); МассивВыводимыхОбластей.Добавить(ОбластьИтого); Если Ном = КоличествоСтрок Тогда МассивВыводимыхОбластей.Добавить(ОбластьПодвал); КонецЕсли; Если Ном <> 1 И НЕ ТабДокумент.ПроверитьВывод(МассивВыводимыхОбластей) Тогда НомерСтраницы = НомерСтраницы + 1; ТабДокумент.ВывестиВертикальныйРазделительСтраниц(); ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц(); //ТабДокумент.АвтоМасштаб = Истина; СклонениеПоПадежамЛиста = получитьЛист(НомерСтраницы); ОбластьПодвал.Параметры.КоличествоЛистов = "Документ составлен на " + НомерСтраницы + " " + СклонениеПоПадежамЛиста; ТабДокумент.Вывести(ОбластьШапкаТаб); КонецЕсли; КонецЕсли; ТабДокумент.Вывести(ОбластьСтрока); КонецЦикла; ОбластьИтого = Макет.ПолучитьОбласть("Итого"); ОбластьИтого.Параметры.ИтогоСтоимость =Товары.Итог("Сумма") - Товары.Итог("СуммаНДС") ; ОбластьИтого.Параметры.ИтогоСуммаНДС =Товары.Итог("СуммаНДС"); ОбластьИтого.Параметры.ИтогоВсего =СуммаДокумента; ТабДокумент.Вывести(ОбластьИтого); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьПодвал.Параметры.КоличествоЛистов = "Документ составлен на " + НомерСтраницы + " " + СклонениеПоПадежамЛиста; ОбластьПодвал.Параметры.Основание = "Договор №" + ДоговорКонтрагента.Номер + " от " + Формат(ДоговорКонтрагента.Дата,"ДФ=dd.MM.yyyy"); ОбластьПодвал.Параметры.ДолжностьКладовщика = Контрагент.СотрудникДолжность; ОбластьПодвал.Параметры.ФИОРуководителя = Менеджер.Наименование + ". Согласно приказа " + Формат(Менеджер.Свойство2,"ДФ=dd.MM.yyyy"); ОбластьПодвал.Параметры.ДатаОтгрузкиПередачи = Формат(Дата,"ДЛФ=DD"); ОбластьПодвал.Параметры.ПредставлениеОрганизации = Организация.НаименованиеПолное + ", ИНН/КПП " + Организация.ИНН + "/" + Организация.КПП; ОбластьПодвал.Параметры.ПредставлениеКонтрагента = Контрагент.НаименованиеПолное + ", ИНН/КПП " + Контрагент.ИНН + "/" + Контрагент.КПП; ТабДокумент.Вывести(ОбластьПодвал); ТабДокумент.Показать(); |
|||
1
KonstantinK90
22.12.15
✎
08:06
|
подвал пару строк не влазиет на 1 стр! Делаю в цикле проверить вывод в нем косяк думаю а понять в чем именно не могу!
|
|||
2
KonstantinK90
22.12.15
✎
08:08
|
посмотрите массив выводимых областей может там че накосячил
|
|||
3
KonstantinK90
22.12.15
✎
08:19
|
Есть какие мысли?
|
|||
4
KonstantinK90
22.12.15
✎
08:30
|
????
|
|||
5
KonstantinK90
22.12.15
✎
08:31
|
может есть какой то другой способ сделать правильный вывод
|
|||
6
Мимохожий Однако
22.12.15
✎
08:42
|
из СП:
Пример: Т.Добавить(ШапкаДокумента); Т.Добавить(СтрокаДокумента); Т.Добавить(ПодвалДокумента); Если Не ТабДок.ПроверитьВывод(Т) Тогда Сообщить("Документ не умещается на страницу!"); КонецЕсли; |
|||
7
KonstantinK90
22.12.15
✎
08:52
|
спасибо сейчас по пробую
|
|||
8
фобка
22.12.15
✎
08:54
|
Масштаб 100% ставь и макет под него подгоняй
|
|||
9
KonstantinK90
22.12.15
✎
08:57
|
нет точно нужно было проверить на вывод поставить шапку документа
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |