Ошибка {ВнешняяОбработка.ВПФ_СчетПокупателю.МодульОбъекта(74)}: Значение не является значением объектного типа (КодЯзыкаДляМногоязычныхПечатныхФорм) КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;
Делаю внешнюю печатную форму, выдает ошибку {ВнешняяОбработка.ВПФ_СчетПокупателю.МодульОбъекта(74)}: Значение не является значением объектного типа (КодЯзыкаДляМногоязычныхПечатныхФорм)
КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;
КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = Новый Структура;
МассивНазначений = Новый Массив;
МассивНазначений.Добавить("Документ.ЗаказКлиента"); //Указываем документ к которому делаем внешнюю печ. форму
ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); //может быть - ЗаполнениеОбъекта, ДополнительныйОтчет, СозданиеСвязанныхОбъектов...
ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
ПараметрыРегистрации.Вставить("Наименование", "Счет покупателю (спец цена)"); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
ПараметрыРегистрации.Вставить("Версия", "1.0");
ПараметрыРегистрации.Вставить("БезопасныйРежим", ЛОЖЬ);
ПараметрыРегистрации.Вставить("Информация", " Дополнительная печатная форма (Счет покупателю (спец цена))");//так будет выглядеть описание печ.формы для пользователя
ТаблицаКоманд = ПолучитьТаблицуКоманд();
ДобавитьКоманду(ТаблицаКоманд, "Счет покупателю (спец цена)", "СчетПокупателюСпецЦена", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
Возврат ПараметрыРегистрации;
КонецФункции
Функция ПолучитьТаблицуКоманд()
Команды = Новый ТаблицаЗначений;
Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Строка"));
Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
Возврат Команды;
КонецФункции
Функция ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление;
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;
КонецФункции
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетПокупателюСпецЦена") Тогда
СтруктураТипов = ОбщегоНазначенияУТ.СоответствиеМассивовПоТипамОбъектов(МассивОбъектов);
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
"СчетПокупателюСпецЦена",
"Счет покупателю (спец цена)",
ПечатьСчетаНаОплату_Счет(МассивОбъектов, ОбъектыПечати, Истина),
,
,
,
Истина // ЭтоМногоязычнаяПечатнаяФорма
);
КонецЕсли;
КонецПроцедуры
Функция ПечатьСчетаНаОплату_Счет(МассивОбъектов, ОбъектыПечати, ПараметрыВывода) Экспорт
Перем КомплектПечатиПоСсылке;
КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;
ТабличныйДокумент = Новый ТабличныйДокумент;
ТабличныйДокумент.АвтоМасштаб = Истина;
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_СЧЕТНАОПЛАТУ";
Макет = ПолучитьМакет("Макет");
Макет.КодЯзыка = КодЯзыкаПечать;
Макет.КодЯзыкаМакета = КодЯзыкаПечать;
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| etn_СчетНаОплатуТовары.Ссылка КАК Ссылка,
| etn_СчетНаОплатуТовары.Номенклатура,
| etn_СчетНаОплатуТовары.Количество,
| etn_СчетНаОплатуТовары.Цена,
| etn_СчетНаОплатуТовары.СтавкаНДС,
| etn_СчетНаОплатуТовары.СуммаНДС,
| etn_СчетНаОплатуТовары.СуммаСНДС,
| etn_СчетНаОплатуТовары.Сумма,
| etn_СчетНаОплатуТовары.Ссылка.СуммаДокумента,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Номер КАК Номер,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Дата КАК Дата,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Партнер КАК Партнер,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Контрагент КАК Контрагент,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Организация КАК Организация,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.БанковскийСчет КАК БанковскийСчет,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.БанковскийСчетКонтрагента КАК БанковскийСчетКонтрагента,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Договор КАК Договор,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Автор КАК Автор,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Валюта КАК Валюта,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Грузоотправитель КАК Грузоотправитель,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Грузополучатель КАК Грузополучатель,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.ГлавныйБухгалтер КАК ГлавныйБухгалтер,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.ДокументОснование КАК ДокументОснование,
| """" КАК ДолжностьРуководителя,
| """" КАК ДополнительнаяИнформация,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Контрагент.ЮрФизЛицо КАК КонтрагентЮрФизЛицо,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Менеджер.ФизическоеЛицо.Наименование КАК Менеджер,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Организация КАК ОрганизацияПоставщик,
| 100 КАК ПроцентОплаты,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.Руководитель КАК Руководитель,
| ИСТИНА КАК УчитыватьНДС,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.НазначениеПлатежа КАК НазначениеПлатежа,
| etn_СчетНаОплатуТовары.Ссылка.ДокументОснование.ЦенаВключаетНДС КАК ЦенаВключаетНДС,
| ЛОЖЬ КАК ЧастичнаяОплата,
| etn_СчетНаОплатуТовары.Номенклатура.Наименование КАК Наименование,
| etn_СчетНаОплатуТовары.Номенклатура.Артикул КАК Артикул,
| etn_СчетНаОплатуТовары.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| etn_СчетНаОплатуТовары.НомерСтроки,
| etn_СчетНаОплатуТовары.Упаковка,
| etn_СчетНаОплатуТовары.Ссылка.НомерПП,
| etn_СчетНаОплатуТовары.ЦенаБезРучнойСкидки,
| etn_СчетНаОплатуТовары.ЦенаРучнойСкидки,
| etn_СчетНаОплатуТовары.Номенклатура.НоменклатураГТД.КодУКТВЭД КАК КодУКТВЭД,
| etn_СчетНаОплатуТовары.Сумма + etn_СчетНаОплатуТовары.СуммаРучнойСкидки + etn_СчетНаОплатуТовары.СуммаАвтоматическойСкидки КАК СуммаБезСкидки,
| etn_СчетНаОплатуТовары.СуммаРучнойСкидки + etn_СчетНаОплатуТовары.СуммаАвтоматическойСкидки КАК СуммаСкидки,
| etn_СчетНаОплатуТовары.Номенклатура.АртикулПК КАК АртикулPQ
|ИЗ
| Документ.etn_СчетНаОплату.Товары КАК etn_СчетНаОплатуТовары
|ГДЕ
| etn_СчетНаОплатуТовары.Ссылка В(&Ссылка)
|ИТОГИ
| МАКСИМУМ(Номер),
| МАКСИМУМ(Дата),
| МИНИМУМ(Партнер),
| МАКСИМУМ(Контрагент),
| МАКСИМУМ(Организация),
| МАКСИМУМ(БанковскийСчет),
| МАКСИМУМ(БанковскийСчетКонтрагента),
| МАКСИМУМ(Договор),
| МАКСИМУМ(Автор),
| МАКСИМУМ(Валюта),
| МАКСИМУМ(Менеджер),
| МАКСИМУМ(УчитыватьНДС),
| МАКСИМУМ(ЦенаВключаетНДС)
|ПО
| Ссылка";
Запрос.УстановитьПараметр("Ссылка", МассивОбъектов);
Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока Выборка.Следующий() Цикл
Запрос2 = Новый Запрос;
Запрос2.Текст = "ВЫБРАТЬ
| etn_СчетНаОплатуТовары.Ссылка,
| etn_СчетНаОплатуТовары.НомерСтроки,
| etn_СчетНаОплатуТовары.Номенклатура,
| etn_СчетНаОплатуТовары.Характеристика,
| etn_СчетНаОплатуТовары.Упаковка,
| etn_СчетНаОплатуТовары.КоличествоУпаковок,
| etn_СчетНаОплатуТовары.Количество,
| etn_СчетНаОплатуТовары.ВидЦены,
| etn_СчетНаОплатуТовары.Цена,
| etn_СчетНаОплатуТовары.ПроцентРучнойСкидки,
| etn_СчетНаОплатуТовары.СуммаРучнойСкидки КАК СуммаСкидки,
| etn_СчетНаОплатуТовары.ПроцентАвтоматическойСкидки,
| etn_СчетНаОплатуТовары.СуммаАвтоматическойСкидки,
| etn_СчетНаОплатуТовары.СтавкаНДС,
| etn_СчетНаОплатуТовары.СуммаНДС,
| etn_СчетНаОплатуТовары.СуммаСНДС,
| etn_СчетНаОплатуТовары.Сумма,
| etn_СчетНаОплатуТовары.Активность,
| etn_СчетНаОплатуТовары.ТекстовоеОписание,
| etn_СчетНаОплатуТовары.КлючСвязи,
| etn_СчетНаОплатуТовары.НоменклатураНабора,
| etn_СчетНаОплатуТовары.ХарактеристикаНабора,
| etn_СчетНаОплатуТовары.ЦенаБезРучнойСкидки,
| etn_СчетНаОплатуТовары.ЦенаРучнойСкидки,
| ИСТИНА КАК УчитыватьНДС
|ИЗ
| Документ.etn_СчетНаОплату.Товары КАК etn_СчетНаОплатуТовары
|ГДЕ
| etn_СчетНаОплатуТовары.Ссылка = &Ссылка";
Запрос2.УстановитьПараметр("Ссылка", Выборка.Ссылка);
ТаблицаТовары = Запрос2.Выполнить().Выгрузить();
СведенияОПоставщике = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(Выборка.Организация, Выборка.Дата,,Выборка.БанковскийСчет);
СведенияОПокупателе = ФормированиеПечатныхФорм.СведенияОЮрФизЛице(Выборка.Контрагент, Выборка.Дата);
ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
//ТекстЗаголовка = ОбщегоНазначенияУТКлиентСервер.СформироватьЗаголовокДокумента(Выборка, НСтр("ru='Счет на оплату';uk='Рахунок на оплату'",КодЯзыкаПечать), КодЯзыкаПечать);
НомерНаПечать = ПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать(Выборка.Номер);
ТекстЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='%1 № %2 от %3';uk='%1 № %2 від %3'",КодЯзыкаПечать),
НСтр("ru='Счет на оплату';uk='Рахунок на оплату'",КодЯзыкаПечать),
НомерНаПечать + "/" + Выборка.НомерПП,
Формат(Выборка.Дата, "ДЛФ=DD;Л="+Локализация.ОпределитьКодЯзыкаДляФормат(КодЯзыкаПечать)));
СтруктураДанныхШапки = Новый Структура;
СтруктураДанныхШапки.Вставить("ТекстЗаголовка", ТекстЗаголовка);
ОбластьМакета.Параметры.Заполнить(СтруктураДанныхШапки);
ТабличныйДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
СтруктураДанныхПоставщик = Новый Структура;
СтруктураДанныхПоставщик.Вставить("ПредставлениеПоставщика", ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике, "ПолноеНаименование,",,КодЯзыкаПечать));
СтруктураДанныхПоставщик.Вставить("РеквизитыПоставщика", ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПоставщике, "НомерСчета,Банк,МФО,/,ЮридическийАдрес,Телефоны,/,КодПоЕДРПОУ,КодПоДРФО,ИНН,НомерСвидетельства,/,ИнформацияОСтатусеПлательщикаНалогов",,КодЯзыкаПечать));
//Оксана...
СтруктураДанныхПоставщик.Вставить("КодПоЕДРПОУ", СведенияОПоставщике.КодПоЕДРПОУ);
СтруктураДанныхПоставщик.Вставить("Телефон", СведенияОПоставщике.Телефоны);
СтруктураДанныхПоставщик.Вставить("РСчет", СведенияОПоставщике.НомерСчета);
СтруктураДанныхПоставщик.Вставить("Банк", СведенияОПоставщике.Банк);
СтруктураДанныхПоставщик.Вставить("МФО", СведенияОПоставщике.МФО);
СтруктураДанныхПоставщик.Вставить("ИНН", СведенияОПоставщике.ИНН);
СтруктураДанныхПоставщик.Вставить("НомерСвидетельства", СведенияОПоставщике.НомерСвидетельства);
СтруктураДанныхПоставщик.Вставить("Адрес", СведенияОПоставщике.ЮридическийАдрес);
//... Оксана
ОбластьМакета.Параметры.Заполнить(СтруктураДанныхПоставщик);
ТабличныйДокумент.Вывести(ОбластьМакета);
ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
СтруктураДанныхПокупатель = Новый Структура;
СтруктураДанныхПокупатель.Вставить("ПредставлениеПолучателя", ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "ПолноеНаименование,",,КодЯзыкаПечать));
СтруктураДанныхПокупатель.Вставить("РеквизитыПолучателя", ФормированиеПечатныхФорм.ОписаниеОрганизации(СведенияОПокупателе, "Телефоны,",,КодЯзыкаПечать));
ОбластьМакета.Параметры.Заполнить(СтруктураДанныхПокупатель);
ОбластьМакета.Параметры.Договор = Выборка.Договор.НаименованиеДляПечати; //Александра
ОбластьМакета.Параметры.ДатаДоговора = Формат(Выборка.Договор.Дата, "ДФ=dd.MM.yyyy"); //Александра
ТабличныйДокумент.Вывести(ОбластьМакета);
ИспользоватьРучныеСкидки = Истина; //ПолучитьФункциональнуюОпцию("ИспользоватьРучныеСкидкиВПродажах");
ИспользоватьАвтоматическиеСкидки = Ложь; //ПолучитьФункциональнуюОпцию("ИспользоватьАвтоматическиеСкидкиВПродажах");
СтруктураИмяДопКолонки = Новый Структура("ИмяКолонкиКодов", ФормированиеПечатныхФорм.ИмяДополнительнойКолонки());
ЗаголовокСкидки = ФормированиеПечатныхФорм.НужноВыводитьСкидки(ТаблицаТовары, ИспользоватьРучныеСкидки Или ИспользоватьАвтоматическиеСкидки, КодЯзыкаПечать);
ЕстьСкидки = ЗаголовокСкидки.ЕстьСкидки;
//ЕстьСкидкаНаЦену = ЕстьСкидкаНаЦену(Выборка.Ссылка);
ДанныеПечати = Выборка.Выбрать();
ЕстьСодержание = Ложь;
ПоказыватьНДС = Ложь; //Константы.ВыводитьДопКолонкиНДС.Получить();
ПервыйДокумент = Истина;
Если ПервыйДокумент Тогда
ПервыйДокумент = Ложь;
Иначе
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
МассивПроверкиВывода = Новый Массив;
Сумма = 0;
СуммаНДС = 0;
ВсегоСкидок = 0;
ВсегоБезСкидок = 0;
НомерСтроки = 0;
СоответствиеСтавокНДС = Новый Соответствие;
СуффиксОбласти = "";
// Таблица "Товары"
ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
ОбластьСтрокаТаблицы = Макет.ПолучитьОбласть("СтрокаТаблицы");
ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
ОбластьПодвалНДС = Макет.ПолучитьОбласть("ПодвалТаблицыНДС");
ПустыеДанные = НаборыСервер.ПустыеДанные();
ВыводШапки = 0;
ОбластьПодвалСНДС = Макет.ПолучитьОбласть("ПодвалТаблицыВсегоСНДС");
ЗаполнитьЗначенияСвойств(ОбластьШапкаТаблицы.Параметры, ФормированиеПечатныхФорм.СформироватьЗаголовкиДляСуммовыхПоказателей(Выборка, КодЯзыкаПечать));
//Если НЕ ЕстьСкидкаНаЦену Тогда
//
// Если ЕстьСкидки Тогда
// СтруктураЗаголовокСкидки = Новый Структура("Скидка, СуммаБезСкидки",
// ЗаголовокСкидки.Скидка,
// ЗаголовокСкидки.СуммаСкидки);
// ОбластьШапкаТаблицы.Параметры.Заполнить(СтруктураЗаголовокСкидки);
// КонецЕсли;
//КонецЕсли;
ПустыеДанные = НаборыСервер.ПустыеДанные();
ВыводШапки = 0;
//СуффиксОбластиПодвал = "СНДС";
//ОбластьПодвалСНДС = Макет.ПолучитьОбласть("ПодвалТаблицыВсего" + СуффиксОбластиПодвал);
ЗаполнитьЗначенияСвойств(ОбластьШапкаТаблицы.Параметры, ФормированиеПечатныхФорм.СформироватьЗаголовкиДляСуммовыхПоказателей(Выборка, КодЯзыкаПечать));
ОбластьШапкаТаблицы.Параметры.Заполнить(СтруктураИмяДопКолонки);
ОбластьСуммаПрописью = Макет.ПолучитьОбласть("СуммаПрописью");
Пока ДанныеПечати.Следующий() Цикл
//ОбластьСтрокаТаблицы = ОбластьСтрокаТаблицыСтандарт;
НомерСтроки = НомерСтроки + 1;
НомерСтрокиПечать = НомерСтроки;
Если НомерСтроки = 0 И ВыводШапки <> 2 Тогда
ВыводШапки = 1;
КонецЕсли;
Товар = "" + НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
ДанныеПечати.Номенклатура.НаименованиеПолное,
,
,
,
,
Ложь, КодЯзыкаПечать);
СтруктураДанныхСтроки = Новый Структура;
СтруктураДанныхСтроки.Вставить("Товар", Товар);
СтруктураДанныхСтроки.Вставить("НомерСтроки", НомерСтрокиПечать);
СтруктураДанныхСтроки.Вставить("Цена", Формат(ДанныеПечати.Цена, "ЧДЦ=2"));
СтруктураДанныхСтроки.Вставить("Сумма", Формат(ДанныеПечати.Сумма, "ЧДЦ=2"));
//СтруктураДанныхСтроки.Вставить("СуммаСкидки", Формат(ДанныеПечати.СуммаСкидки, "ЧДЦ=2"));
СтруктураДанныхСтроки.Вставить("СуммаБезСкидки", Формат(ДанныеПечати.СуммаБезСкидки, "ЧДЦ=2"));
СтруктураДанныхСтроки.Вставить("ЦенаРучнойСкидки", Формат(ДанныеПечати.ЦенаРучнойСкидки, "ЧДЦ=2"));
СтруктураДанныхСтроки.Вставить("ЦенаБезРучнойСкидки", Формат(ДанныеПечати.ЦенаБезРучнойСкидки, "ЧДЦ=2"));
ОбластьСтрокаТаблицы.Параметры.Заполнить(ДанныеПечати);
Если ЗначениеЗаполнено(СтруктураИмяДопКолонки.ИмяКолонкиКодов) Тогда
СтруктураДанныхСтроки.Вставить("Артикул", ДанныеПечати[СтруктураИмяДопКолонки.ИмяКолонкиКодов]);
КонецЕсли;
ОбластьСтрокаТаблицы.Параметры.Заполнить(СтруктураДанныхСтроки);
МассивПроверкиВывода.Очистить();
МассивПроверкиВывода.Добавить(ОбластьСтрокаТаблицы);
Если НомерСтроки = ДанныеПечати.Количество() Тогда
МассивПроверкиВывода.Добавить(ОбластьПодвалТаблицы);
МассивПроверкиВывода.Добавить(ОбластьПодвалНДС);
МассивПроверкиВывода.Добавить(ОбластьСуммаПрописью);
КонецЕсли;
Если ТабличныйДокумент.ПроверитьВывод(МассивПроверкиВывода) Тогда
Если (НомерСтроки = 1 И ВыводШапки = 0) ИЛИ (НомерСтроки = 0 И ВыводШапки = 1) Тогда
ВыводШапки = 2;
ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);
КонецЕсли;
Иначе
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
ТабличныйДокумент.Вывести(ОбластьШапкаТаблицы);
КонецЕсли;
ТабличныйДокумент.Вывести(ОбластьСтрокаТаблицы);
Сумма = Сумма + ДанныеПечати.Сумма;
СуммаНДС = СуммаНДС + ДанныеПечати.СуммаНДС;
СуммаНДСПоСтавке = СоответствиеСтавокНДС[ДанныеПечати.СтавкаНДС];
Если СуммаНДСПоСтавке = Неопределено Тогда
СуммаНДСПоСтавке = 0;
КонецЕсли;
СоответствиеСтавокНДС.Вставить(ДанныеПечати.СтавкаНДС, СуммаНДСПоСтавке + ДанныеПечати.СуммаНДС);
КонецЦикла; //ДанныеПечати.Следующий()
СтруктураДанныхВсегоСкидки = Новый Структура;
// Подвал таблицы "Товары"
СтруктураДанныхВсегоСкидки.Вставить("Всего", ФормированиеПечатныхФорм.ФорматСумм(Сумма));
ОбластьПодвалТаблицы.Параметры.Заполнить(СтруктураДанныхВсегоСкидки);
ТабличныйДокумент.Вывести(ОбластьПодвалТаблицы);
// Область "ПодвалТаблицыНДС"
Для Каждого ТекСтавкаНДС Из СоответствиеСтавокНДС Цикл
СтруктураДанныхПодвалНДС = Новый Структура;
СтруктураДанныхПодвалНДС.Вставить("НДС", ФормированиеПечатныхФорм.ТекстНДСПоСтавке(ТекСтавкаНДС.Ключ, Выборка.ЦенаВключаетНДС, КодЯзыкаПечать));
СтруктураДанныхПодвалНДС.Вставить("ВсегоНДС", Формат(ТекСтавкаНДС.Значение, "ЧДЦ=2"));
ОбластьПодвалНДС.Параметры.Заполнить(СтруктураДанныхПодвалНДС);
ТабличныйДокумент.Вывести(ОбластьПодвалНДС);
КонецЦикла;
СтруктураДанныхПодвалВсегоСНДС = Новый Структура;
СтруктураДанныхПодвалНДС.Вставить("ВсегоСНДС", Формат(Сумма + ?(Выборка.ЦенаВключаетНДС, 0, СуммаНДС), "ЧДЦ=2"));
ОбластьПодвалСНДС.Параметры.Заполнить(СтруктураДанныхПодвалНДС);
ТабличныйДокумент.Вывести(ОбластьПодвалСНДС);
// Вывести Сумму прописью
СуммаКПрописи = Сумма + ?(Выборка.ЦенаВключаетНДС, 0, СуммаНДС);
ИтоговаяСтрока = НСтр("ru='Всего наименований %Количество%, на сумму %Сумма%';uk='Всього найменувань %Количество%, на суму %Сумма%'",КодЯзыкаПечать);
ИтоговаяСтрока = СтрЗаменить(ИтоговаяСтрока, "%Количество%", НомерСтроки);
ИтоговаяСтрока = СтрЗаменить(ИтоговаяСтрока, "%Сумма%", ФормированиеПечатныхФорм.ФорматСумм(СуммаКПрописи, Выборка.Валюта));
СтруктураДанныхСуммаПрописью = Новый Структура;
СтруктураДанныхСуммаПрописью.Вставить("СуммаПрописью", РаботаСКурсамиВалют.СформироватьСуммуПрописью(СуммаКПрописи, Выборка.Валюта, Ложь, КодЯзыкаПечать));
СтруктураДанныхСуммаПрописью.Вставить("ИтоговаяСтрока", ИтоговаяСтрока);
ОбластьСуммаПрописью.Параметры.Заполнить(СтруктураДанныхСуммаПрописью);
ТабличныйДокумент.Вывести(ОбластьСуммаПрописью);
// Вывести подписи
Область = Макет.ПолучитьОбласть("ПодвалСчета");
СтруктураДанныхПодвал = Новый Структура;
СтруктураДанныхПодвал.Вставить("ФИОМенеджер", ФизическиеЛицаУТ.ФамилияИнициалыФизЛица(Выборка.Менеджер));
Область.Параметры.Заполнить(СтруктураДанныхПодвал);
//ФормированиеПечатныхФорм.ВывестиФаксимилеВТабличныйДокумент(Макет, Область, ДанныеПечати.Организация, ПараметрыПечати);
ТабличныйДокумент.Вывести(Область);
КонецЦикла;
Возврат ТабличныйДокумент;
КонецФункции
ПоказатьОтветы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот