![]() |
|
При формировании печатной формы появляется хвост, а шапка таблицы показывается на третьем | ☑ | ||
---|---|---|---|---|
0
alexodel
22.07.19
✎
17:38
|
Доброго дня!!! Проблема в том что пишу в ВПФ на УНФ ке... Табличная часть формируется нормально, а я хотел шапку при каждом листе было, и задал шапку на каждом листе, но почему то на второй странице, хвост от первой страницы и шапка переходит на третью страницу что интересно, может Ребят я не так делаю....
помогите юниору.... Вылажу код: #Область ПрограммныйИнтерфейс Перем ДатаИНомерДокументаДляРаспечатки Экспорт; Перем Автор Экспорт ; Перем Пользователь Экспорт ; Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("1.6.10.174"); ПараметрыРегистрации.БезопасныйРежим = Ложь; ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма(); ПараметрыРегистрации.Версия = "030719-19"; ПараметрыРегистрации.Назначение.Добавить("Документ.СдельныйНаряд"); НоваяКоманда = ПараметрыРегистрации.Команды.Добавить(); НоваяКоманда.Представление = НСтр("ru = 'Сдельный наряд по пошиву'"); НоваяКоманда.Идентификатор = "СдельныйНарядПоПошиву"; НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода(); НоваяКоманда.ПоказыватьОповещение = Истина; НоваяКоманда.Модификатор = "ПечатьMXL"; Возврат ПараметрыРегистрации; КонецФункции Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт //Адрес = "R:\Backup1C\Обработка_печати_этикеток\СДЕЛЬНЫЙ_НАРЯД_ПО_ПОШИВУ_SA.epf"; //обр = ВнешниеОбработки.Создать(Адрес,БезопасныйРежим()); ///(Адрес, БезопасныйРежим()); //обр.Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); //Возврат; // УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СдельныйНарядПоПошиву", "Сдельный наряд по пошиву", СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати)); //МассивОбъектов[0] КонецПроцедуры Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Перем ПервыйДокумент, НомерСтрокиНачало, Ошибки; ТЗ = Новый ТаблицаЗначений; ТЗ.Колонки.Добавить("НомерСтроки"); ТЗ.Колонки.Добавить("ИзделиеОперацияНазвание"); ТЗ.Колонки.Добавить("ИзделиеНоменклатура"); ТЗ.Колонки.Добавить("СпецификацияНазвание"); ТЗ.Колонки.Добавить("МатериалКоличествоНаОдноИзделие"); ТЗ.Колонки.Добавить("Расценка"); ТЗ.Колонки.Добавить("МатериалЕдиницаИзмерения"); ТЗ.Колонки.Добавить("МатериалНоменклатура"); ТЗ.Колонки.Добавить("МатериалКоличествоНаПланИзделий"); ТЗ.Колонки.Добавить("Стоимость"); ТЗ.Колонки.Добавить("Количество"); ТЗ.Колонки.Добавить("МатериалИтого"); ТЗ.Колонки.Добавить("ИзделиеСсылка"); ТЗ.Колонки.Добавить("ИзделиеНазвание"); ТЗ.Колонки.Добавить("ИзделиеОперацияСсылка"); ТЗ.Колонки.Добавить("ИзделиеОперацияКоличество"); ТЗ.Колонки.Добавить("СпецификацияСсылка"); ТЗ.Колонки.Добавить("СпецификацияКомментарий"); // Нужно удалить ТЗ.Колонки.Добавить("МатериалКатегорияНоменклатуры"); ТЗ.Колонки.Добавить("МатериалСсылка"); ТЗ.Колонки.Добавить("МатериалНазвание"); ТЗ.Колонки.Добавить("АртикулНоменклатуры"); Массив = Новый Массив(6); ТабличныйДокумент = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Макет"); ДанныеПечати = Новый Структура; Для каждого ТекущийДокумент Из МассивОбъектов Цикл Запрос = Новый Запрос(); Запрос.УстановитьПараметр("Организация", УправлениеНебольшойФирмойСервер.ПолучитьОрганизацию(ТекущийДокумент.Организация)); Запрос.УстановитьПараметр("ТекущийДокумент",ТекущийДокумент); Запрос.Текст = "ВЫБРАТЬ | СдельныйНаряд.Ссылка КАК Ссылка, | СдельныйНаряд.Проведен КАК Проведен, | СдельныйНаряд.Организация КАК Организация, | СдельныйНаряд.Номер КАК СдельныйНарядНомер, | СдельныйНаряд.Дата КАК СдельныйНарядДата, | СдельныйНаряд.СтруктурнаяЕдиница КАК СтруктурнаяЕдиница, | СдельныйНаряд.Исполнитель КАК СдельныйНарядИсполнитель, | СдельныйНаряд.СуммаДокумента КАК СуммаДокумента, | СдельныйНаряд.Автор КАК СдельныйНарядАвтор, | СдельныйНаряд.ИсполнительПредставление КАК ИсполнительПредставление, | СдельныйНаряд.ДатаЗакрытия КАК СдельныйНарядДатаЗакрытия, | СдельныйНаряд.Закрыт КАК Закрыт, | СдельныйНаряд.ДокументОснование КАК ДокументОснование, | СдельныйНаряд.ДокументОснование.Номер КАК ПроизводствоНомер, | СдельныйНаряд.ДокументОснование.Дата КАК ПроизводствоДата, | СдельныйНаряд.СтруктурнаяЕдиницаПредставление КАК СтруктурнаяЕдиницаПредставление, | СдельныйНаряд.ЗаказНаПроизводство КАК ЗаказНаПроизводство, | СдельныйНаряд.Операции.( | Ссылка КАК Ссылка, | НомерСтроки КАК НомерСтроки, | Период КАК Период, | ЗаказПокупателя КАК ЗаказПокупателя, | Номенклатура КАК Номенклатура, | Характеристика КАК Характеристика, | Операция КАК Операция, | ЕдиницаИзмерения КАК ЕдиницаИзмерения, | КоличествоПлан КАК КоличествоПлан, | КоличествоФакт КАК Количество, | НормаВремени КАК НормаВремени, | Расценка КАК Расценка, | Нормочасы КАК Нормочасы, | Стоимость КАК Стоимость, | Партия КАК Партия, | Спецификация КАК Спецификация, | СтруктурнаяЕдиница КАК СтруктурнаяЕдиница, | Исполнитель КАК Исполнитель, | КлючСвязи КАК КлючСвязи, | ЗаказНаПроизводство КАК ЗаказНаПроизводство, | Этап КАК Этап, | ПодразделениеЗавершающегоЭтапа КАК ПодразделениеЗавершающегоЭтапа | ) КАК Операции, | СдельныйНаряд.СоставБригады.( | Ссылка КАК Ссылка, | НомерСтроки КАК НомерСтроки, | Сотрудник КАК Сотрудник, | КТУ КАК КТУ, | СтруктурнаяЕдиница КАК СтруктурнаяЕдиница, | КлючСвязи КАК КлючСвязи | ) КАК СоставБригады, | СдельныйНаряд.ЗаказНаПроизводство.Номер КАК ЗаказНаПроизводствоНомер, | СдельныйНаряд.ЗаказНаПроизводство.Дата КАК ЗаказНаПроизводствоДата, | СдельныйНаряд.ЗаказНаПроизводство.Финиш КАК ЗаказНаПроизводствоДатаФиниш, | СдельныйНаряд.ЗаказНаПроизводство.ДокументОснование.Номер КАК ЗаказПокупателяНомер6, | СдельныйНаряд.ЗаказНаПроизводство.ДокументОснование.Дата КАК ЗаказПокупателяДата6, | СдельныйНаряд.ЗаказНаПроизводство.ДокументОснование.ДатаОтгрузки КАК ЗаказПокупателяДатаОтгрузки6, | СдельныйНаряд.ЗаказНаПроизводство.ДокументОснование.Контрагент КАК ЗаказПокупателяКонтрагент6 |ИЗ | Документ.СдельныйНаряд КАК СдельныйНаряд |ГДЕ | СдельныйНаряд.Ссылка = &ТекущийДокумент | |УПОРЯДОЧИТЬ ПО | Ссылка, | НомерСтроки"; Продукция = Запрос.Выполнить().Выбрать(); КонецЦикла; // Пока Продукция.Следующий() Цикл ОбластьМакетаЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакетаШапкаПродукция = Макет.ПолучитьОбласть("ШапкаПродукция"); Автор = Продукция.СдельныйНарядАвтор; ТаблицаПродукция = Продукция.Операции.Выгрузить();//ВЫГРУЖАЕМ ТАБЛИЧНУЮ ЧАСТЬ ПараметрыНоменклатуры = Новый Структура; НомерДокумента = Продукция.СдельныйНарядНомер; СдельныйНарядНомер=Продукция.СдельныйНарядНомер; СдельныйНарядДата=Продукция.СдельныйНарядДата; ДатаДокумента = Формат(Продукция.СдельныйНарядДата, "ДЛФ=DD"); ДанныеПечати.Вставить("СдельныйНарядНомерИДата", СтрШаблон(НСтр("ru ='№ %1 от %2'"), Продукция.СдельныйНарядНомер, ДатаДокумента)); ДатаИНомерДокументаДляРаспечатки = "Сдельный наряд по пошиву №" + Продукция.СдельныйНарядНомер + " от "+ ДатаДокумента; ПроизводствоНомер = Продукция.ПроизводствоНомер; ПроизводствоДата = Формат(Продукция.ПроизводствоДата, "ДЛФ=DD"); ДанныеПечати.Вставить("ИзПроизводстваНомерИДата", СтрШаблон(НСтр("ru ='№ %1 от %2'"), ПроизводствоНомер, ПроизводствоДата)); ЗаказНаПроизводствоНомер=Продукция.ЗаказНаПроизводствоНомер; ЗаказНаПроизводствоДата=Формат(Продукция.ЗаказНаПроизводствоДата, "ДЛФ=DD"); ЗаказНаПроизводствоДатаФиниш= Формат(Продукция.ЗаказНаПроизводствоДатаФиниш, "ДЛФ=DD"); ДанныеПечати.Вставить("ЗаказПроизводстваНомерИДата", СтрШаблон(НСтр("ru ='№ %1 от %2, дата финиша: %3'"), ЗаказНаПроизводствоНомер, ЗаказНаПроизводствоДата, ЗаказНаПроизводствоДатаФиниш)); ЗаказПокупателяНомер = Продукция.ЗаказПокупателяНомер6; ЗаказПокупателяДата = Формат(Продукция.ЗаказПокупателяДата6, "ДЛФ=DD"); ЗаказПокупателяДатаОтгрузки = Формат(Продукция.ЗаказПокупателяДатаОтгрузки6, "ДЛФ=DD"); ДанныеПечати.Вставить("ЗаказПокупателяНомерИДата", СтрШаблон(НСтр("ru ='№ %1 от %2, дата отгрузки: %3'"), ЗаказПокупателяНомер, ЗаказПокупателяДата, ЗаказПокупателяДатаОтгрузки)); НаименованиеПокупателя = Продукция.ЗаказПокупателяКонтрагент6; ДанныеПечати.Вставить("НаименованиеПокупателя", НаименованиеПокупателя); Подразделение = Продукция.СтруктурнаяЕдиница; ДанныеПечати.Вставить("Подразделение", Подразделение); СдельныйНарядИсполнитель = Продукция.СдельныйНарядИсполнитель; ДанныеПечати.Вставить("Смена", СдельныйНарядИсполнитель); СдельныйНарядДатаЗакрытия=Продукция.СдельныйНарядДатаЗакрытия; ДатаЗакрытия=Формат(СдельныйНарядДатаЗакрытия,"ДЛФ=DD"); ДанныеПечати.Вставить("ДатаЗакрытие", ДатаЗакрытия); ЕстьГалочкаНаЗакрытие=Продукция.Закрыт; Если ЕстьГалочкаНаЗакрытие = Истина Тогда ЕстьГалочкаНаЗакрытие = "ЗАКРЫТО" Иначе ЕстьГалочкаНаЗакрытие = "НЕ ЗАКРЫТО" КонецЕсли; ДанныеПечати.Вставить("ЗакрытДаИлиНет", ЕстьГалочкаНаЗакрытие); ОбластьМакетаЗаголовок.Параметры.Заполнить(ДанныеПечати); СтрокаПродукция = Макет.ПолучитьОбласть("СтрокаПродукция"); ОбластьПодвала = Макет.ПолучитьОбласть("Подвал"); ОбластьМакетаЛинияЗакрытие = Макет.ПолучитьОбласть("ЛинияЗакрытие"); ОбластьМакетаИтого = Макет.ПолучитьОбласть("ИтогСтраницы"); //------------------------------------------ СтрокаСПодвалом = Новый Массив; // создадим массив для проверки вывода СтрокаСПодвалом.Добавить(ОбластьМакетаШапкаПродукция); СтрокаСПодвалом.Добавить(СтрокаПродукция); //СтрокаСПодвалом.Добавить(ОбластьПодвала); ИтогПоСтранице = 0; //------------------------------------------ ТабличныйДокумент.Вывести(ОбластьМакетаЗаголовок); ТабличныйДокумент.Вывести(ОбластьМакетаШапкаПродукция); //ДанныеПечати.Вставить("ИтогоФактическаяСтоимость", Продукция.СуммаДокумента);// ИтогоПланИтогоДенег = 0; ИтогоФактИтогоДенег = 0; Для каждого СтрокаТабличнойЧастиПродукция Из ТаблицаПродукция Цикл ДанныеПечати.Очистить(); //СтрокаПродукция = Макет.ПолучитьОбласть("СтрокаПродукция"); ДанныеПечати.Вставить("НомерСтроки", СтрокаТабличнойЧастиПродукция.НомерСтроки); ДанныеПечати.Вставить("ОперацияНазвание", СтрокаТабличнойЧастиПродукция.Операция); ДанныеПечати.Вставить("ИзделиеПредставлениеНоменклатуры", СтрокаТабличнойЧастиПродукция.Номенклатура); ДанныеПечати.Вставить("СпецификацияНазвание", СтрокаТабличнойЧастиПродукция.Спецификация); ДанныеПечати.Вставить("РасценкаРаботы", (СтрокаТабличнойЧастиПродукция.Расценка)); // +"₽" ДанныеПечати.Вставить("ОперацийКоличествоПлан", СтрокаТабличнойЧастиПродукция.КоличествоПлан); ПланИтогоДенег = (СтрокаТабличнойЧастиПродукция.КоличествоПлан*СтрокаТабличнойЧастиПродукция.Расценка); ИтогоПланИтогоДенег = ИтогоПланИтогоДенег + ПланИтогоДенег; ДанныеПечати.Вставить("ПлановаяСтоимость", ПланИтогоДенег); ДанныеПечати.Вставить("ОперацийКоличествоФакт", СтрокаТабличнойЧастиПродукция.Количество); ПодгибкаНиз = ПолучитьЗначенияИзСпецификации(СтрокаТабличнойЧастиПродукция.Спецификация); ПодгибкаБок = ПолучитьЗначенияИзСпецификацииПодгибка(СтрокаТабличнойЧастиПродукция.Спецификация); ОписаниеПошива = ПолучитьЗначенияИзСпецификацииОписание(СтрокаТабличнойЧастиПродукция.Спецификация); ОписаниеКроя = ПолучитьЗначенияИзСпецификацииОписания(СтрокаТабличнойЧастиПродукция.Спецификация); //Если ЗначениеЗаполнено(ПодгибкаНиз) Тогда ПослеПроверкиПодгибкаНиз = ПодгибкаНиз Иначе ПослеПроверкиПодгибкаНиз = " "; КонецЕсли; //Если ЗначениеЗаполнено(ПодгибкаБок) Тогда ПослеПроверкиПодгибкаБок = ПодгибкаБок Иначе ПослеПроверкиПодгибкаБок = " "; КонецЕсли; Если ЗначениеЗаполнено(ОписаниеПошива) Тогда ПослеПроверкиОписаниеПошива = ОписаниеПошива Иначе ПослеПроверкиОписаниеПошива = " "; КонецЕсли; //Если ЗначениеЗаполнено(ОписаниеКроя) Тогда ПослеПроверкиОписаниеКроя = ОписаниеКроя Иначе ПослеПроверкиОписаниеКроя = " "; КонецЕсли; //Ответ = ЗначениеЗаполнено(ПодгибкаНиз); //Сообщить("Ответ " +ПослеПроверкиПодгибкаНиз); //Сообщить("ПодгибкаНиз "+ТипЗнч(ПослеПроверкиПодгибкаНиз)); //Сообщить("ПодгибкаБок "+ТипЗнч(ПодгибкаБок)); //Сообщить("ОписаниеПошива "+ТипЗнч(ОписаниеПошива )); //Сообщить("ОписаниеКроя "+ТипЗнч(ОписаниеКроя )); //ВОписаниеПошива = ПослеПроверкиПодгибкаНиз +" "+ ПослеПроверкиПодгибкаБок +" "+ ПослеПроверкиОписаниеПошива +" "+ ПослеПроверкиОписаниеКроя; ВОписаниеПошива = ПослеПроверкиОписаниеПошива; ДанныеПечати.Вставить("ОписаниеПошива", ВОписаниеПошива); ИтогоФактИтогоДенег = ИтогоФактИтогоДенег + СтрокаТабличнойЧастиПродукция.Стоимость; ДанныеПечати.Вставить("ФактическаяСтоимость", СтрокаТабличнойЧастиПродукция.Стоимость); СтрокаПродукция.Параметры.Заполнить(ДанныеПечати); //ТабличныйДокумент.Вывести(СтрокаПродукция); ЗапросСпецификация = Новый Запрос; ЗапросСпецификация .УстановитьПараметр("Спецификация", СтрокаТабличнойЧастиПродукция.Спецификация); ЗапросСпецификация.Текст= "ВЫБРАТЬ | СпецификацииСостав.Ссылка КАК Ссылка, | СпецификацииСостав.НомерСтроки КАК НомерСтроки, | СпецификацииСостав.ТипСтрокиСостава КАК ТипСтрокиСостава, | СпецификацииСостав.Номенклатура КАК Номенклатура, | СпецификацииСостав.Характеристика КАК Характеристика, | СпецификацииСостав.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | СпецификацииСостав.Спецификация КАК Спецификация, | СпецификацииСостав.Количество КАК Количество, | СпецификацииСостав.КоличествоПродукции КАК КоличествоПродукции, | СпецификацииСостав.ДоляСтоимости КАК ДоляСтоимости, | СпецификацииСостав.Этап КАК Этап, | СпецификацииСостав.Номенклатура.Наименование КАК ПредставлениеНоменклатуры, | СпецификацииСостав.Номенклатура.Артикул КАК Артикул, | СпецификацииСостав.Номенклатура.КатегорияНоменклатуры КАК НоменклатураКатегорияНоменклатуры |ИЗ | Справочник.Спецификации.Состав КАК СпецификацииСостав |ГДЕ | СпецификацииСостав.Ссылка = &Спецификация"; Спецификация = ЗапросСпецификация.Выполнить().Выбрать(); ТЗ.Очистить(); Пока Спецификация.Следующий() Цикл НоваяСтрока = ТЗ.Добавить(); НоваяСтрока.НомерСтроки = Спецификация.НомерСтроки; НоваяСтрока.ИзделиеОперацияНазвание = СтрокаТабличнойЧастиПродукция.Операция; НоваяСтрока.ИзделиеНоменклатура = СтрокаТабличнойЧастиПродукция.Номенклатура; НоваяСтрока.СпецификацияНазвание = СтрокаТабличнойЧастиПродукция.Спецификация; МатериалКоличествоНаОдноИзделие = Спецификация.КоличествоПродукции*Спецификация.Количество; НоваяСтрока.МатериалКоличествоНаОдноИзделие = МатериалКоличествоНаОдноИзделие; НоваяСтрока.МатериалЕдиницаИзмерения = Спецификация.ЕдиницаИзмерения; НоваяСтрока.МатериалНоменклатура = Спецификация.Номенклатура; НоваяСтрока.МатериалКоличествоНаПланИзделий = СтрокаТабличнойЧастиПродукция.КоличествоПлан*МатериалКоличествоНаОдноИзделие; НоваяСтрока.Стоимость = СтрокаТабличнойЧастиПродукция.Стоимость ; НоваяСтрока.МатериалИтого = 1; НоваяСтрока.ИзделиеСсылка = ""; НоваяСтрока.ИзделиеНазвание = ""; НоваяСтрока.ИзделиеОперацияСсылка = "-/-/-"; НоваяСтрока.ИзделиеОперацияКоличество = СтрокаТабличнойЧастиПродукция.КоличествоПлан ; НоваяСтрока.СпецификацияСсылка = Спецификация.Ссылка; НоваяСтрока.СпецификацияКомментарий = СтрокаТабличнойЧастиПродукция.Спецификация.Комментарий; НоваяСтрока.МатериалКатегорияНоменклатуры=Спецификация.НоменклатураКатегорияНоменклатуры; НоваяСтрока.МатериалСсылка = "------------"; НоваяСтрока.МатериалНазвание = Спецификация.ПредставлениеНоменклатуры; НоваяСтрока.АртикулНоменклатуры = Спецификация.Артикул; КонецЦикла; ДанныеПечати.Вставить("ИмяКтоПечатал", "Админ"); ОбластьМакетаИтого.Параметры.Заполнить(ДанныеПечати); //----------------------------- Если Не ТабличныйДокумент.ПроверитьВывод(СтрокаСПодвалом) Тогда ТабличныйДокумент.Вывести(ОбластьМакетаЛинияЗакрытие); // выведем итог по странице //В Ы В О Д ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц(); // начнем новую страницу //В Ы В О Д ТабличныйДокумент.Вывести(ОбластьМакетаШапкаПродукция); // выведем шапку страницы //В Ы В О Д ИтогПоСтранице = 0; // сбросим текущую сумму по странице КонецЕсли; ТабличныйДокумент.Вывести(СтрокаПродукция); //В Ы В О Д //----------------------------- // 1. объеденить нужно все материалы ТЗМатериалы = Новый ТаблицаЗначений; ТЗМатериалы = ТЗ.Скопировать(); //ТЗМатериалы.Свернуть("МатериалНоменклатура, АртикулНоменклатуры", "МатериалКоличествоНаПланИзделий"); //МатериалКоличествоНаОдноИзделие ТЗМатериалы.Свернуть("МатериалНоменклатура, МатериалКоличествоНаОдноИзделие, МатериалЕдиницаИзмерения", "МатериалКоличествоНаПланИзделий"); //МатериалКоличествоНаОдноИзделие Если Не ТЗМатериалы.Количество() = 0 Тогда Для Каждого Колонка из ТЗМатериалы цикл ДанныеПечати.Очистить(); //ДанныеПечати.Вставить("НомерСтрокиВСпецификации", Спецификация.НомерСтроки); ДанныеПечати.Вставить("МатериалВСпецификацииПредставлениеНоменклатуры", Колонка.МатериалНоменклатура); ДанныеПечати.Вставить("КоличествоМатериаловНаОдноИзделие", Колонка.МатериалКоличествоНаОдноИзделие); ДанныеПечати.Вставить("ЕдиницаИзмеренияМатириалов", Колонка.МатериалЕдиницаИзмерения); ДанныеПечати.Вставить("КоличествоМатериалов", Колонка.МатериалКоличествоНаПланИзделий); КоличествоМатериаловСУчетомКоличестваОпераций=(Спецификация.КоличествоПродукции*Спецификация.Количество)*СтрокаТабличнойЧастиПродукция.КоличествоПлан;//Спецификация.ИзделиеОперацияКоличество;// Здесь!!! ОбластьПодвала.Параметры.Заполнить(ДанныеПечати); Если НЕ Лев(Колонка.МатериалНоменклатура,3)<>"104" тогда Продолжить; //Прервать; КонецЕсли; ТабличныйДокумент.Вывести(ОбластьПодвала); //В Ы В О Д КонецЦикла; КонецЕсли; // //----------------------------- // //Если Не ТабличныйДокумент.ПроверитьВывод(СтрокаСПодвалом) Тогда // // ТабличныйДокумент.Вывести(ОбластьМакетаЛинияЗакрытие); // выведем итог по странице //В Ы В О Д // ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц(); // начнем новую страницу //В Ы В О Д // ТабличныйДокумент.Вывести(ОбластьМакетаШапкаПродукция); // выведем шапку страницы //В Ы В О Д // ИтогПоСтранице = 0; // сбросим текущую сумму по странице // //КонецЕсли; // //ТабличныйДокумент.Вывести(СтрокаПродукция); //В Ы В О Д // ////----------------------------- ////----------------------------- //Если Не ТабличныйДокумент.ПроверитьВывод(СтрокаСПодвалом) Тогда // // ТабличныйДокумент.Вывести(ОбластьМакетаЛинияЗакрытие); // выведем итог по странице //В Ы В О Д // ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц(); // начнем новую страницу //В Ы В О Д // ТабличныйДокумент.Вывести(ОбластьМакетаШапкаПродукция); // выведем шапку страницы //В Ы В О Д // ИтогПоСтранице = 0; // сбросим текущую сумму по странице // //КонецЕсли; // //ТабличныйДокумент.Вывести(СтрокаПродукция); //В Ы В О Д ////----------------------------- ИтогПоСтранице = ИтогПоСтранице КонецЦикла; ИтогПоСтранице = ИтогПоСтранице ; ТабличныйДокумент.Вывести(ОбластьМакетаЛинияЗакрытие); КонецЦикла; ДанныеПечати.Вставить("ИтогоПлановаяСтоимость", ИтогоПланИтогоДенег); ДанныеПечати.Вставить("ИтогоФактическаяСтоимость", ИтогоФактИтогоДенег); НДФЛ13 = Окр((ИтогоФактИтогоДенег * 13/100),2); ДанныеПечати.Вставить("НДФЛ13", НДФЛ13); НДФЛ30 = Окр((ИтогоФактИтогоДенег * 30/100),2); ДанныеПечати.Вставить("НДФЛ30", НДФЛ30); ПФР = Окр((ИтогоФактИтогоДенег * 22/100),2); ДанныеПечати.Вставить("ПФР", ПФР); ФСС = Окр((ИтогоФактИтогоДенег * 2.9/100),2); ДанныеПечати.Вставить("ФСС", ФСС); ФОМС = Окр((ИтогоФактИтогоДенег * 5.1/100),2); ДанныеПечати.Вставить("ФОМС", ФОМС); ОбластьМакетаИтого.Параметры.Заполнить(ДанныеПечати); ТабличныйДокумент.Вывести(ОбластьМакетаИтого);// //В Ы В О Д Пользователь = ПараметрыСеанса.ТекущийПользователь; //ТабличныйДокумент.Вывести(ОбластьМакетаПодписи); ТабличныйДокумент.АвтоМасштаб = Истина; //Таб.ОриентацияСтраницы = ОриентацияСтраницы.Портрет; ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; //ТабличныйДокумент.АвтоМасштаб = Истина; //КлючПараметровПечати //ТабличныйДокумент.МасштабПечати = 100; ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_СДЕЛЬНЫЙ_НАРЯД_ПО_ПОШИВУ"; //ТабличныйДокумент.КлючПараметровПечати = "МойУникальныйКлюч"; НастроитьКолонтитулы(ТабличныйДокумент); Возврат ТабличныйДокумент; КонецФункции Процедура НастроитьКолонтитулы(ПечатнаяФорма) // Верхний колонтитул. ПечатнаяФорма.ВерхнийКолонтитул.Выводить = Истина; ПечатнаяФорма.ВерхнийКолонтитул.НачальнаяСтраница = 1; //ПечатнаяФорма.ВерхнийКолонтитул.ТекстВЦентре = "Распечатано [&Дата][&Время]";//"Этот отчёт сделан нами для тестов"; ПечатнаяФорма.ВерхнийКолонтитул.ВертикальноеПоложение = ВертикальноеПоложение.Центр; ПечатнаяФорма.ВерхнийКолонтитул.ТекстСлева = ДатаИНомерДокументаДляРаспечатки+" "+Автор;//"Этот отчёт сделан нами для тестов"; ПечатнаяФорма.ВерхнийКолонтитул.ТекстСправа = " Страница [&НомерСтраницы] из [&СтраницВсего]"; //ПечатнаяФорма.ВерхнийКолонтитул.ВертикальноеПоложение = ВертикальноеПоложение.Справа; //ПечатнаяФорма.НижнийКолонтитул.ТекстВЦентре = "[&Дата][&Время]"; // Нижний колонтитул. ПечатнаяФорма.НижнийКолонтитул.Выводить = Истина;//Ложь; //ПечатнаяФорма.НижнийКолонтитул.ТекстСправа = ДокументДляПечати;//"[&НомерСтраницы] из [&СтраницВсего]"; ПечатнаяФорма.НижнийКолонтитул.ТекстСлева = Пользователь;//"[&НомерСтраницы] из [&СтраницВсего]"; //ПечатнаяФорма.НижнийКолонтитул.ТекстВЦентре = "[&Дата][&Время]"; ПечатнаяФорма.НижнийКолонтитул.ТекстВЦентре = "Время распечатки [&Дата] "+"[&Время]";//"Этот отчёт сделан нами для тестов"; // Использованные выше конструкции [&НомерСтраницы] и т.п. предопределены // платформой. КонецПроцедуры Функция ПолучитьЗначенияИзСпецификации(Обращение) Для каждого СтрДР из Обращение.ДополнительныеРеквизиты Цикл Если стрДР.Свойство.Имя = "ПодгибкаНиз_ead77bdb53194b5db451d696e10c21c6" Тогда Реквизит = СтрДР.Значение; КонецЕсли; КонецЦикла; Возврат Реквизит; КонецФункции Функция ПолучитьЗначенияИзСпецификацииПодгибка(Бок) Для каждого СтрДР из Бок.ДополнительныеРеквизиты Цикл Если стрДР.Свойство.Имя = "ПодгибкаБок_7f2bafc0e9b9469db4497cc0d050abe3" Тогда Реквизит = СтрДР.Значение; КонецЕсли; КонецЦикла; Возврат Реквизит; КонецФункции Функция ПолучитьЗначенияИзСпецификацииОписание(Пошива) Для каждого СтрДР из Пошива.ДополнительныеРеквизиты Цикл Если стрДР.Свойство.Имя = "ОписаниеПошива_eb5863024b2d4accadce9d66b7fc5c96" Тогда Реквизит = СтрДР.Значение; КонецЕсли; КонецЦикла; Возврат Реквизит; КонецФункции Функция ПолучитьЗначенияИзСпецификацииОписания(Кроя) Для каждого СтрДР из Кроя.ДополнительныеРеквизиты Цикл Если стрДР.Свойство.Имя = "ОписаниеКроя_75ae7670755c4ab18fdd715312cff837" Тогда Реквизит = СтрДР.Значение; КонецЕсли; КонецЦикла; Возврат Реквизит; КонецФункции #КонецОбласти |
|||
1
dka80
22.07.19
✎
17:53
|
Много букв. Не осилил
|
|||
2
Ёпрст
гуру
22.07.19
✎
17:55
|
(0) И ?
у вас же закоменчена проверка на то, что влезает на страницу через проверить вывод |
|||
3
alexodel
22.07.19
✎
18:03
|
(2) а где заканчивается может подскажите, как быть... просто другие ВПФ ки выводят правильно... этот почему то не работает или я не ту деталь показываю... ???
|
|||
4
mikecool
22.07.19
✎
18:05
|
(0) открыть макет, найти справа вертикальный пунктир, удалить все пустое от правого края макета до пунктира
профит |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |