logistbondarenko @ 26.07.24, 10:48
необходимо зарегистрироваться для просмотра ссылки
,
// Сформировать печатные формы объектов
//
// ВХОДЯЩИЕ:
// ИменаМакетов - Строка - Имена макетов, перечисленные через запятую
// МассивОбъектов - Массив - Массив ссылок на объекты которые нужно распечатать
//
// ИСХОДЯЩИЕ:
// КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы
// ПараметрыВывода - Структура - Параметры сформированных табличных документов
//
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "АктНаданняПослуг", НСтр("ru='Акт надання послуг';uk='Акт надання послуг'"),
ПечатьАктНаданняПослуг(МассивОбъектов, ОбъектыПечати, ПараметрыВывода));
КонецПроцедуры
// Функция формирует табличный документ с печатной формой акта об обказании услуг
//
// Возвращаемое значение:
// Табличный документ - печатная форма акта
//
Функция ПечатьАктНаданняПослуг(МассивОбъектов, ОбъектыПечати, ПараметрыВывода)
УстановитьПривилегированныйРежим(Истина);
ЗапросШапка = Новый Запрос;
ЗапросШапка.Текст =
"ВЫБРАТЬ
| Номер,
| Дата,
| ДоговорКонтрагента,
| ДоговорКонтрагента.Дата КАК ДоговорДата,
| ДоговорКонтрагента.Номер КАК ДоговорНомер,
| ДоговорКонтрагента.НаименованиеДляПечати КАК ДоговорНаименованиеДляПечати,
| Получил КАК ПредставительПокупателя,
| ПредставительОрганизации КАК ПредставительПоставщика,
| Контрагент КАК Покупатель,
| Контрагент.ЮридическоеФизическоеЛицо КАК ПокупательЮрФизЛицо,
| Организация КАК Поставщик,
| Организация,
| Сделка,
| СуммаДокумента,
| ВалютаДокумента,
| БанковскийСчетОрганизации,
| СуммаВключаетНДС,
| ВЫРАЗИТЬ(МестоСоставленияДокумента КАК СТРОКА(1000)) КАК МестоСоставленияДокумента
|ИЗ
| Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
|
|ГДЕ
| РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент";
ЗапросУслуги = Новый Запрос;
ЗапросУслуги.Текст = "
|ВЫБРАТЬ
| НомерСтроки КАК НомерСтрокиТЧ,
| Номенклатура КАК Номенклатура,
| Содержание КАК Товар,
| Номенклатура.Код КАК Код,
| Номенклатура.Артикул КАК Артикул,
| Количество,
| Номенклатура.БазоваяЕдиницаИзмерения.Представление КАК ЕдиницаИзмерения,
| Цена,
| Сумма,
| СуммаСкидки,
| СуммаБезСкидки,
| СтавкаНДС,
| СуммаНДС
|ИЗ
| Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслуг
|
|ГДЕ
| РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
|
|УПОРЯДОЧИТЬ ПО
| НомерСтрокиТЧ
|";
ЗапросТЧТовары = Новый Запрос;
ЗапросТЧТовары.Текст =
"ВЫБРАТЬ
| Номенклатура,
| Номенклатура.НаименованиеПолное КАК Товар,
| Номенклатура.Код КАК Код,
| Номенклатура.Артикул КАК Артикул,
| Количество,
| ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| Цена,
| СуммаБезСкидки,
| СуммаСкидки,
| Сумма,
| СуммаНДС,
| НомерСтроки,
| 1 КАК ID
|ИЗ
| (ВЫБРАТЬ
| Номенклатура КАК Номенклатура,
| ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| Цена КАК Цена,
| СтавкаНДС КАК СтавкаНДС,
| СУММА(Количество) КАК Количество,
| СУММА(Сумма) КАК Сумма,
| СУММА(СуммаБезСкидки)КАК СуммаБезСкидки,
| СУММА(СуммаСкидки) КАК СуммаСкидки,
| СУММА(СуммаНДС) КАК СуммаНДС,
| МИНИМУМ(НомерСтроки) КАК НомерСтроки
| ИЗ
| Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
| ГДЕ
| РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент
| СГРУППИРОВАТЬ ПО
| Номенклатура,
| ЕдиницаИзмерения,
| Цена,
| СтавкаНДС
| ) КАК ВложенныйЗапросПоТоварам ";
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.АвтоМасштаб = Истина;
Макет = ПолучитьМакет("Акт");
// печать производится на языке, указанном в настройках
КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;
Макет.КодЯзыкаМакета = КодЯзыкаПечать;
......
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабДокумент,НомерСтрокиНачало, ОбъектыПечати, Ссылка);
ТабДокумент.ПолеСверху = 3;
ТабДокумент.ПолеСнизу = 3;
ТабДокумент.ПолеСлева = 5;
ТабДокумент.ПолеСправа = 5;
ТабДокумент.ТолькоПросмотр = Истина;
Возврат ТабДокумент;
КонецФункции // ПечатьАктНаданняПослуг()
ось так вказував назву документу для зберігання