БУ ›
Универсальный передаточный документ (УПД), Универсальный корректировочный документ (УКД), счет-фактура и корректировочный счет-фактура для УТ 10.3 все версии в одном (1137, 625, 981, 534) без прослеживания ›
#61
30.11.22 12:06
Процедура ПерезаполнитьСуммыПоУЕвРублях в УПД кривая, кратность не поддерживает, и много там других ошибок по ней с документами в валюте.
Лучше заменить на
Процедура ПерезаполнитьСуммыПоУЕвРублях(ДанныеДляПечати, ТекущееОснование)
ДокументОбъект = ТекущееОснование.ПолучитьОбъект();
ЕстьДокументыРасчетов = ДокументОбъект.Метаданные().ТабличныеЧасти.Найти("ДокументыРасчетовСКонтрагентом") <> Неопределено;
Запрос = Новый Запрос();
УниверсальныеМеханизмы.ОпределитьКурсыДокументаДляПечати(ДокументОбъект, Запрос);
Курс = Запрос.Параметры.Курс;
Кратность = Запрос.Параметры.Кратность;
Для Каждого СтрокаСчетаФактуры Из ДанныеДляПечати.ТабличнаяЧасть Цикл
СтрокаСчетаФактуры.Сумма = СтрокаСчетаФактуры.Сумма * Курс / Кратность;
СтрокаСчетаФактуры.СуммаНДС = СтрокаСчетаФактуры.СуммаНДС * Курс / Кратность;
КонецЦикла;
ПараметрыПересчета = УчетНДС.СтруктураПараметровДляПересчетаСуммВРубли();
ПараметрыПересчета.СуммаАвансаВалИт = Запрос.Параметры.СуммаАвансаВал;
ПараметрыПересчета.СуммаАвансаРубИт = Запрос.Параметры.СуммаАвансаРуб;
ПараметрыПересчета.СуммаРеализацииВалИт = УчетНДС.ПолучитьСуммуДокументаСНДС(ДокументОбъект);
ПараметрыПересчета.ВалютаВзаиморасчетов = ТекущееОснование.ВалютаДокумента;
ПараметрыПересчета.КурсРеализации = ЗаполнениеДокументов.КурсДокумента(ДокументОбъект, мВалютаРегламентированногоУчета);
ПараметрыПересчета.КратностьРеализации = ЗаполнениеДокументов.КратностьДокумента(ДокументОбъект, мВалютаРегламентированногоУчета);
ПараметрыПересчета.СуммаВключаетНДС = ТекущееОснование.СуммаВключаетНДС;
ПараметрыПересчета.ДатаПересчета = ТекущееОснование.Дата;
УчетНДС.ПерезаполнитьСуммыПоУЕвРублях(ДанныеДляПечати.ТабличнаяЧасть, ПараметрыПересчета);
ДанныеДляПечати.ТабличнаяЧасть.ЗаполнитьЗначения(0, "Цена");
КонецПроцедуры