![]() |
|
Не применяется ориентация страницы | ☑ | ||
---|---|---|---|---|
0
tg30000
06.02.13
✎
06:38
|
Подскажите пожалуйста вроде сделал внешнюю печатную форму поступл. товаров и услуг для УПП , но не применяется ориентация страницы ландшафт.
Что неправильно делаю? Перем ТекущийДокумент; Перем Ссылка; // Функция должна возвращать табличный документ. Печать документа выполняется конфигурацией. // Если требуется отказ от печати вообще, функция должна возвращать Неопределено Функция Печать() Экспорт Если не ЗначениеЗаполнено(СсылкаНаОбъект) Тогда Возврат Неопределено КонецЕсли; Возврат ПечатьПТиУ_Электра(); КонецФункции // Функция формирует табличный документ унифицированной формы М-4 // // Параметры: // Нет. // // Возвращаемое значение: // Табличный документ по форме М-4 (приходный ордер). // Функция ПечатьПТиУ_Электра(); Макет = ПолучитьМакет("Макет"); ТабДокумент = Новый ТабличныйДокумент; // Зададим параметры печатной формы по умолчанию ТабДокумент.ПолеСверху = 0; ТабДокумент.ПолеСлева = 0; ТабДокумент.ПолеСнизу = 0; ТабДокумент.ПолеСправа = 0; ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; ТабДокумент.АвтоМасштаб=Истина; ОбластьМакета = Макет.ПолучитьОбласть("Шапка"); ОбластьМакета.Параметры.Заполнить(ОбластьМакета); ОбластьМакета.Параметры.ПредставлениеОрганизации = ЭтотОбъект.СсылкаНаОбъект.Организация; ОбластьМакета.Параметры.ОрганизацияПоОКПО = ЭтотОбъект.СсылкаНаОбъект.Организация.КодПоОКПО; НомерДокумента = ЭтотОбъект.СсылкаНаОбъект.Номер; НомерДокументаБезНулей =Число(НомерДокумента); ОбластьМакета.Параметры.НомерДокумента = НомерДокументаБезНулей; ОбластьМакета.Параметры.ПредставлениеПодразделения = ЭтотОбъект.СсылкаНаОбъект.СкладОрдер; ТабДокумент.Вывести(ОбластьМакета); // Выводим заголовок докмента ЗапросЗаголовокДокумента = Новый Запрос; ЗапросЗаголовокДокумента.Текст = "ВЫБРАТЬ | ПоступлениеТоваровУслуг.Номер КАК Номер, | ПоступлениеТоваровУслуг.Дата КАК ДатаСоставления, | ПоступлениеТоваровУслуг.НомерВходящегоДокумента КАК НомерСопроводительногоДокумента, | ПоступлениеТоваровУслуг.Организация, | ПоступлениеТоваровУслуг.Организация КАК ЮрФизЛицо, | ПоступлениеТоваровУслуг.Контрагент.Код КАК ПоставщикКод, | ПоступлениеТоваровУслуг.Контрагент КАК Поставщик, | ПоступлениеТоваровУслуг.ВалютаДокумента, | ПоступлениеТоваровУслуг.КурсВзаиморасчетов КАК Курс, | ПоступлениеТоваровУслуг.КратностьВзаиморасчетов КАК Кратность, | ПоступлениеТоваровУслуг.УчитыватьНДС, | ПоступлениеТоваровУслуг.СуммаВключаетНДС, | ПоступлениеТоваровУслуг.СчетУчетаРасчетовСКонтрагентом КАК СубСчет, | ПоступлениеТоваровУслуг.СкладОрдер |ИЗ | Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг |ГДЕ | ПоступлениеТоваровУслуг.Ссылка = &ТекущийДокумент"; ЗапросЗаголовокДокумента.УстановитьПараметр("ТекущийДокумент",СсылкаНаОбъект.Ссылка); РезультатЗапросЗаголовокДокумента = ЗапросЗаголовокДокумента.Выполнить(); Выборка = РезультатЗапросЗаголовокДокумента.Выбрать(); ЗаголовокДокумента = Макет.ПолучитьОбласть("ЗаголовокДокумента"); Пока Выборка.Следующий() Цикл ЗаголовокДокумента.Параметры.СкладНаименование = Выборка.СкладОрдер; ЗаголовокДокумента.Параметры.ДатаСоставления = Выборка.ДатаСоставления; ЗаголовокДокумента.Параметры.ПоставщикНаименование =Выборка.Поставщик; ЗаголовокДокумента.Параметры.ПоставщикКод =Выборка.Поставщик.код; ЗаголовокДокумента.Параметры.СубСчет =Выборка.СубСчет; ТабДокумент.Вывести(ЗаголовокДокумента); КонецЦикла; ЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы"); ТабДокумент.Вывести(ЗаголовокТаблицы); ЗапросСтрока = Новый Запрос; ЗапросСтрока.Текст = "ВЫБРАТЬ | ПоступлениеТоваровУслугТовары.Номенклатура, | ПоступлениеТоваровУслугТовары.СчетУчетаБУ, | ПоступлениеТоваровУслугТовары.Номенклатура.Код, | ПоступлениеТоваровУслугТовары.Количество, | ПоступлениеТоваровУслугТовары.Цена, | ПоступлениеТоваровУслугТовары.СуммаНДС, | ПоступлениеТоваровУслугТовары.ЕдиницаИзмерения.Код, | ПоступлениеТоваровУслугТовары.ЕдиницаИзмерения.Наименование, | ПоступлениеТоваровУслугТовары.Сумма |ИЗ | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары |ГДЕ | ПоступлениеТоваровУслугТовары.Ссылка = &ТекущийДокумент"; ЗапросСтрока.УстановитьПараметр("ТекущийДокумент",СсылкаНаОбъект.Ссылка); РезультатЗапросСтрока = ЗапросСтрока.Выполнить(); ВыборкаЗапросСтрока = РезультатЗапросСтрока.Выбрать(); Строка = Макет.ПолучитьОбласть("Строка"); //---------------------------------------------------------------------------------------------------- // Инициализация итогов в документе ИтогоКоличествоПринято = 0; ИтогоСуммаБезНДС = 0; ИтогоСуммаНДС = 0; ИтогоВсегоСНДС = 0; Ном = 0; Пока ВыборкаЗапросСтрока.Следующий() Цикл Строка.Параметры.ТоварНаименование = ВыборкаЗапросСтрока.Номенклатура; Строка.Параметры.СчетУчетаБУ = ВыборкаЗапросСтрока.СчетУчетаБУ; Строка.Параметры.ТоварКод = ВыборкаЗапросСтрока.НоменклатураКод; Строка.Параметры.ЕдиницаИзмеренияКод= ВыборкаЗапросСтрока.ЕдиницаИзмеренияКод; Строка.Параметры.ЕдиницаИзмеренияНаименование = ВыборкаЗапросСтрока.ЕдиницаИзмеренияНаименование; Строка.Параметры.КоличествоПоДокументу = ВыборкаЗапросСтрока.Количество; Строка.Параметры.КоличествоПринято = ВыборкаЗапросСтрока.Количество; Строка.Параметры.Цена = (ВыборкаЗапросСтрока.Сумма-ВыборкаЗапросСтрока.СуммаНДС)/ВыборкаЗапросСтрока.Количество; Строка.Параметры.СуммаБезНДС = ВыборкаЗапросСтрока.Сумма-ВыборкаЗапросСтрока.СуммаНДС; Строка.Параметры.СуммаНДС = ВыборкаЗапросСтрока.СуммаНДС; Строка.Параметры.ВсегоСНДС = ВыборкаЗапросСтрока.Сумма; ИтогоКоличествоПринято = ИтогоКоличествоПринято + ВыборкаЗапросСтрока.Количество; ИтогоСуммаБезНДС = ИтогоСуммаБезНДС + (ВыборкаЗапросСтрока.Сумма-ВыборкаЗапросСтрока.СуммаНДС); ИтогоСуммаНДС = ИтогоСуммаНДС + ВыборкаЗапросСтрока.СуммаНДС; ИтогоВсегоСНДС = ИтогоВсегоСНДС + ВыборкаЗапросСтрока.Сумма; ТабДокумент.Вывести(Строка); КонецЦикла; Итого=Макет.ПолучитьОбласть("Итого"); Итого.Параметры. ИтогоКоличествоПринято= ИтогоКоличествоПринято; Итого.Параметры. ИтогоСуммаБезНДС= ИтогоСуммаБезНДС; Итого.Параметры. ИтогоСуммаНДС= ИтогоСуммаНДС; Итого.Параметры. ИтогоВсегоСНДС= ИтогоВсегоСНДС; ТабДокумент.Вывести(Итого); //---------------------------------------------------------------------------------------------------- ЗапросСвойствДокумента = Новый Запрос; //Запрос получает данные по свойствам документа ЗапросСвойствДокумента.Текст="ВЫБРАТЬ | ЗначенияСвойствОбъектов.Объект, | ЗначенияСвойствОбъектов.Свойство, | ЗначенияСвойствОбъектов.Значение, | ПоступлениеТоваровУслуг.Ссылка, | СотрудникиОрганизаций.Наименование, | СотрудникиОрганизаций.Должность |ИЗ | Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов | ПО ПоступлениеТоваровУслуг.Ссылка = ЗначенияСвойствОбъектов.Объект, | Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций |ГДЕ | ПоступлениеТоваровУслуг.Ссылка = &ТекущийДокумент"; ЗапросСвойствДокумента.УстановитьПараметр("ТекущийДокумент",СсылкаНаОбъект.Ссылка); РезультатЗапросСвойствДокумента = ЗапросСвойствДокумента.Выполнить(); ВыборкаЗапросСтрока = РезультатЗапросСвойствДокумента.Выбрать(); Подвал= Макет.ПолучитьОбласть("Подвал"); Пока ВыборкаЗапросСтрока.Следующий() Цикл Если ВыборкаЗапросСтрока.Свойство.Наименование = "Принял" Тогда Пр = ВыборкаЗапросСтрока.Значение; Подвал.Параметры.Принял = ОбщегоНазначения.ИнициалыФизЛицаФамилия(Пр); Если ВыборкаЗапросСтрока.Наименование = ВыборкаЗапросСтрока.Значение.Наименование Тогда Подвал.Параметры.ДолжностьП = ВыборкаЗапросСтрока.Должность.Наименование; КонецЕсли КонецЕсли; Если ВыборкаЗапросСтрока.Свойство.Наименование = "Сдал" Тогда Пр = ВыборкаЗапросСтрока.Значение; Подвал.Параметры.Сдал = ОбщегоНазначения.ИнициалыФизЛицаФамилия(Пр); Если ВыборкаЗапросСтрока.Наименование = ВыборкаЗапросСтрока.Значение.Наименование Тогда Подвал.Параметры.ДолжностьС = ВыборкаЗапросСтрока.Должность.Наименование; КонецЕсли КонецЕсли; КонецЦикла; ТабДокумент.Вывести(Подвал); //ТабДокумент.Показать(); Возврат ТабДокумент; КонецФункции // |
|||
1
kosts
06.02.13
✎
06:52
|
По сабжу, но вижу проблемы.
Вот тут опасный момент, номер числовой? НомерДокумента = ЭтотОбъект.СсылкаНаОбъект.Номер; НомерДокументаБезНулей =Число(НомерДокумента); |
|||
2
tg30000
06.02.13
✎
06:55
|
(1) Да , только числовой.Всегда.
Подскажите почему ландшафт не применяет, выводит портрет и все... |
|||
3
echo77
06.02.13
✎
06:57
|
Зададай ТабДокумент.ИмяПараметровПечати и переверни в предприятии, если не получится
Со счет-фактурой такую фигню видел. Может это баг платформы? |
|||
4
tg30000
06.02.13
✎
06:58
|
(3) Спасибо, попробую.
|
|||
5
kosts
06.02.13
✎
06:58
|
В режиме отладки прогони, пошагово до самого показа, и смотри за изменением реквизита ОриентацияСтраницы.
А так же попробуй в конец процедуры поставить ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; |
|||
6
kosts
06.02.13
✎
06:59
|
Может из-за некорректных полей настройки сбрасываются, попробуй установить минимальные допустимые поля
|
|||
7
tg30000
06.02.13
✎
07:00
|
(5)(6) Спасибо большое, буду пробовать.
|
|||
8
tg30000
06.02.13
✎
07:57
|
Сделал так :
,,,, ТабДокумент.Вывести(Подвал); ТабДокумент.Показать(); ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; ТабДокумент.Защита=Истина; ТабДокумент.ОтображатьСетку=Ложь; //Возврат ТабДокумент; КонецФункции // по крайней мере выводится на печать и в том формате. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |