|
Параметры печати | ☑ | ||
---|---|---|---|---|
0
Kucha88
08.04.13
✎
08:54
|
Всем доброго дня, возник вопрос как сделать ВПФ макета на одной странице по ширине листа, пробовал выставлял параметры в коде. ничего не получается, нужна ваша помощь, вот код:
Функция ПечатьПриказНакладная() ПараметрыПечати = СформироватьДанныеДляПечати(СсылкаНаОбъект); ТабДокумент = Новый ТабличныйДокумент; // Зададим параметры печатной формы по умолчанию ТабДокумент.РазмерКолонтитулаСверху = 0; ТабДокумент.РазмерКолонтитулаСнизу = 0; ТабДокумент.АвтоМасштаб = Истина; ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет; Макет = ПолучитьМакет("ПриказНакладная"); ОбластьМакета = Макет.ПолучитьОбласть("Шапка"); ОбластьМакета.Параметры.Заполнить(ПараметрыПечати); ТабДокумент.Вывести(ОбластьМакета); НомерСтраницы = 1; Товары = ПараметрыПечати.Товары; КоличествоСтрок = Товары.Количество(); // инициализация итогов по странице ИтогоКоличествоНаСтранице = 0; ИтогоСуммаНаСтранице = 0; ИтогоНДСНаСтранице = 0; ИтогоСуммаСНДСНаСтранице = 0; // инициализация итогов по документу ИтогоКоличество = 0; ИтогоСуммаСНДС = 0; ИтогоСумма = 0; ИтогоНДС = 0; НомерСтроки = 0; // Создаем массив для проверки вывода МассивВыводимыхОбластей = Новый Массив; // Выводим многострочную часть докмента ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаб"); ОбластьМакета = Макет.ПолучитьОбласть("Строка"); ОбластьПодвала = Макет.ПолучитьОбласть("Подвал"); ОбластьМакетаВсего = Макет.ПолучитьОбласть("Итого"); Для Каждого ВыборкаСтрок Из Товары Цикл НомерСтроки = НомерСтроки + 1; ОбластьМакета.Параметры.Заполнить(ВыборкаСтрок); ОбластьМакета.Параметры.НомерСтроки = Товары.Индекс(ВыборкаСтрок) + 1; Если НаЭкспорт Тогда ОбластьМакета.Параметры.ТоварНаименование = СокрЛП(ВыборкаСтрок.ТоварНаименование) + ПредставлениеСерий(ВыборкаСтрок) + ?(ВыборкаСтрок.Метка = 2, " (возвратная тара)", ""); Иначе ОбластьМакета.Параметры.ТоварНаименование = СокрЛП(ВыборкаСтрок.ТоварНаименование) + ПредставлениеСерий(ВыборкаСтрок) + ?(ВыборкаСтрок.Метка = 2, " (возвратная тара)", "") + ?(ЗначениеЗаполнено(ВыборкаСтрок.Номенклатура.Артикул), " арт."+СокрЛП(ВыборкаСтрок.Номенклатура.Артикул), ""); КонецЕсли; Количество = ВыборкаСтрок.Количество; СуммаСНДС = Окр((ВыборкаСтрок.Сумма + ?(ПараметрыПечати.Шапка.СуммаВключаетНДС, 0, ВыборкаСтрок.СуммаНДС)), 2); СуммаНДС = Окр(ВыборкаСтрок.СуммаНДС, 2); СуммаБезНДС = СуммаСНДС - СуммаНДС; ОбластьМакета.Параметры.СуммаСНДС = СуммаСНДС; ОбластьМакета.Параметры.СуммаНДС = СуммаНДС; ОбластьМакета.Параметры.СуммаБезНДС = СуммаБезНДС; Если ПараметрыПечати.Шапка.СуммаВключаетНДС Или ВыборкаСтрок.ЕстьСкидкиПоСтроке Тогда ОбластьМакета.Параметры.Цена = ?(Количество = 0, 0, СуммаБезНДС / Количество); Иначе ОбластьМакета.Параметры.Цена = ВыборкаСтрок.Цена; КонецЕсли; Если НомерСтроки = 1 Тогда // первая срока ЗаголовокТаблицы.Параметры.НомерСтраницы = "Страница " + НомерСтраницы; ТабДокумент.Вывести(ЗаголовокТаблицы); Иначе МассивВыводимыхОбластей.Очистить(); МассивВыводимыхОбластей.Добавить(ОбластьМакета); Если НомерСтроки = КоличествоСтрок Тогда МассивВыводимыхОбластей.Добавить(ОбластьПодвала); КонецЕсли; Если НомерСтроки <> 1 И НЕ ПроверитьВыводТабличногоДокумента(ТабДокумент, МассивВыводимыхОбластей) Тогда НомерСтраницы = НомерСтраницы + 1; ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц(); ЗаголовокТаблицы.Параметры.НомерСтраницы = "Приказ-накладная № "+ПараметрыПечати.НомерДокумента +" от "+Формат(ПараметрыПечати.ДатаДокумента,"ДФ=dd.MM.yyyy")+" Страница " + НомерСтраницы; ТабДокумент.Вывести(ЗаголовокТаблицы); КонецЕсли; КонецЕсли; ТабДокумент.Вывести(ОбластьМакета); ИтогоКоличество = ИтогоКоличество + Количество; ИтогоСумма = ИтогоСумма + СуммаБезНДС; ИтогоНДС = ИтогоНДС + СуммаНДС; ИтогоСуммаСНДС = ИтогоСуммаСНДС + СуммаСНДС; КонецЦикла; ОбластьМакетаВсего.Параметры.ИтогКоличество = ИтогоКоличество; ОбластьМакетаВсего.Параметры.ИтогСуммы = ИтогоСумма; ОбластьМакетаВсего.Параметры.ИтогНДС = ИтогоНДС; ОбластьМакетаВсего.Параметры.ИтогСуммыСНДС = ИтогоСуммаСНДС; ТабДокумент.Вывести(ОбластьМакетаВсего); ОбластьМакета = Макет.ПолучитьОбласть("Подвал"); ОбластьМакета.Параметры.Заполнить(ПараметрыПечати); ОбластьМакета.Параметры.ИтоговаяСтрока = "Всего наименований "+Товары.Количество()+", на сумму "+Формат(ИтогоСуммаСНДС, "ЧДЦ=2; ЧРД=.; ЧРГ='"); ОбластьМакета.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(ИтогоСуммаСНДС, мВалютаРегламентированногоУчета); ТабДокумент.Вывести(ОбластьМакета); Возврат ТабДокумент; КонецФункции Функция Печать() Экспорт ТабличныйДокумент = ПечатьПриказНакладная(); Возврат ТабличныйДокумент; КонецФункции // Печать() |
|||
1
Kucha88
08.04.13
✎
13:31
|
и что никто мне не скажет в чем проблема, что я не так делаю?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |