Подскажите как программно заполнить ставку ндс с последующей обработкой

1. 1Eset 3 13.10.21 16:03 Сейчас в теме
Добрый день!

Бухгалтерия предприятия, редакция 3.0 (3.0.98.11)

Делаю обработки загрузки платежек.
В своей обработке присваиваю НДС.
После чего в платежке она присваивается, но не идёт дальнейшее изменение реквизитов (изменение суммы НДС и назначения платежа).

Я так предполагаю нужно пользоваться каким-то методом ОбработкаРеквизитов или что-то наподобие.

код создание платежки, что нужно сделать, чтобы при изменении реквизита НДС, начали менять остальные поля.


Для каждого Стр Из Объект.Загрузка  Цикл	
		СозданиеДокументов 													= Документы.ПлатежноеПоручение.СоздатьДокумент();
		СозданиеДокументов.Дата 											= ТекущаяДата();
		СозданиеДокументов.Организация 								= Справочники.Организации.НайтиПоНаименованию(Объект.Организация);
		СозданиеДокументов.СчетОрганизации 	 					= Справочники.БанковскиеСчета.НайтиПоНаименованию(СозданиеДокументов.Организация.ОсновнойБанковскийСчет);
		СозданиеДокументов.Контрагент 									= Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", Стр.ИНН);
		СозданиеДокументов.СчетКонтрагента 							= Справочники.БанковскиеСчета.НайтиПоНаименованию(Стр.БанковскийСчёт);
		СозданиеДокументов.ОчередностьПлатежа  					= 5;
		СозданиеДокументов.ДокументОснование						= Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(Стр.ДоговорОснование);
		СозданиеДокументов.СуммаДокумента 							= Стр.Сумма;
		СозданиеДокументов.ВидОперации 								= ПредопределенноеЗначение("Перечисление.ВидыОперацийСписаниеДенежныхСредств.ОплатаПоставщику");
		СозданиеДокументов.ВидПлатежа   								= "Электронно";


		СозданиеДокументов.СтавкаНДС									= ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20");


		СозданиеДокументов.СтатьяДвиженияДенежныхСредств	= Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоНаименованию(Стр.ДДС);
		СозданиеДокументов.НазначениеПлатежа 					= Стр.НазначПлатеж 
																						+ СозданиеДокументов.СуммаДокумента
																						+ СозданиеДокументов.СтавкаНДС;
																		
		Если УчетДенежныхСредствБП = Неопределено Тогда
		Иначе
 		РеквизитыПлательщикаПолучателя = УчетДенежныхСредствБП.СформироватьАвтоЗначенияРеквизитовПлательщикаПолучателя(
	   	СозданиеДокументов.Организация,
	   	СозданиеДокументов.СчетОрганизации,
	   	СозданиеДокументов.Контрагент,
	   	СозданиеДокументов.СчетКонтрагента);
	   	ЗаполнитьЗначенияСвойств(СозданиеДокументов, РеквизитыПлательщикаПолучателя,
	   	"ИННПлательщика, ИННПолучателя, КПППлательщика, КПППолучателя, ТекстПлательщика, ТекстПолучателя");
		  //ПересчитатьСуммуНДС(СозданиеДокументов.СуммаДокумента, СозданиеДокументов.СтавкаНДС);
		СозданиеДокументов.Записать();
		
 	КонецЕсли;
	КонецЦикла; 
	Сообщить("Платежные поручения созданы");
	
КонецПроцедуры
Показать
По теме из базы знаний
Найденные решения
5. 1Eset 3 14.10.21 11:19 Сейчас в теме
Помогло следующее.

СозданиеДокументов.СтавкаНДС = Перечисления.СтавкиНДС.СтавкаНДС(Перечисления.ВидыСтавокНДС.Общая, СозданиеДокументов.Дата);
СозданиеДокументов.СуммаНДС = ПересчитатьСуммуНДС(СозданиеДокументов.СуммаДокумента, СозданиеДокументов.СтавкаНДС);


&НаКлиентеНаСервереБезКонтекста
Функция ПересчитатьСуммуНДС(СуммаДокумента, СтавкаНДС)
	
	ПроцентНДС = УчетНДСВызовСервераПовтИсп.ПолучитьСтавкуНДС(СтавкаНДС);
	СуммаНДС   = Окр(СуммаДокумента * ПроцентНДС / (100 + ПроцентНДС), 2);
	
	Возврат СуммаНДС;
	
КонецФункции
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. d.batovskiy 13.10.21 16:59 Сейчас в теме
(1)Посмотрите в самом документе платежке, какие процедуры выполняются при изменении ставки НДС и в своей обработке сделайте тоже самое.
3. RustamZz 14.10.21 08:56 Сейчас в теме
(1)
Перечисления.СтавкиНДС.СтавкаНДС(Перечисления.ВидыСтавокНДС.Общая, Дата)
4. 1Eset 3 14.10.21 10:16 Сейчас в теме
Добрый день! Сумма НДС так и не изменилась.
5. 1Eset 3 14.10.21 11:19 Сейчас в теме
Помогло следующее.

СозданиеДокументов.СтавкаНДС = Перечисления.СтавкиНДС.СтавкаНДС(Перечисления.ВидыСтавокНДС.Общая, СозданиеДокументов.Дата);
СозданиеДокументов.СуммаНДС = ПересчитатьСуммуНДС(СозданиеДокументов.СуммаДокумента, СозданиеДокументов.СтавкаНДС);


&НаКлиентеНаСервереБезКонтекста
Функция ПересчитатьСуммуНДС(СуммаДокумента, СтавкаНДС)
	
	ПроцентНДС = УчетНДСВызовСервераПовтИсп.ПолучитьСтавкуНДС(СтавкаНДС);
	СуммаНДС   = Окр(СуммаДокумента * ПроцентНДС / (100 + ПроцентНДС), 2);
	
	Возврат СуммаНДС;
	
КонецФункции
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот