Куда переехала ЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти в БП3?

Обработка загрузки в БП3 из XML работала долго и хорошо, пока в один прекрасный день ЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти перестало вызываться из модуля менеджера документа «Поступление товаров услуг» в БП3.

Сама процедура имеет вид:

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

У меня БП была версии 3.0.150.29 на платформе 8.3.23.2157. У клиента база на облаке.

Пришлось поэтому обновить свою БП, чтобы посмотреть, что поменялось.

Не найдя аналогов этой процедуры, не стал мудрствовать лукаво, и просто скопировал текст этой процедуры в модуль своей обработки.

//Осипов 2024-07-08 скопировал прошлую функцию... Потому что в БП ее убрали..
Процедура ЛокЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти(Объект, СтрокаТаблицы) Экспорт
	
	Если УчетнаяПолитика.ПрименяетсяУСНДоходыМинусРасходы(Объект.Организация, Объект.Дата) Тогда
		Если Объект.ВидОперации = Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ПокупкаКомиссия
			И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(
				Объект.ДоговорКонтрагента, "ВидДоговора") = Перечисления.ВидыДоговоровКонтрагентов.СКомитентом Тогда
			СтрокаТаблицы.ОтражениеВУСН = Перечисления.ОтражениеВУСН.НеПринимаются;
		ИначеЕсли Объект.ВидОперации = Перечисления.ВидыОперацийПоступлениеТоваровУслуг.ВПереработку Тогда
		Иначе
			СтрокаТаблицы.ОтражениеВУСН = Перечисления.ОтражениеВУСН.Принимаются;
		КонецЕсли;
	КонецЕсли;
	
КонецПроцедуры

Процедура ЛокЗаполнитьОтражениеВУСНВСтрокеТабличнойЧастиИзМенеджера(МенеджерДокумента, Объект, СтрокаТаблицы) Экспорт
	Попытка
		МенеджерДокумента.ЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти(Объект, СтрокаТаблицы);
	Исключение                                                                         
		ЛокЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти(Объект, СтрокаТаблицы);
	КонецПопытки;
КонецПроцедуры


...

		Для Каждого СтрТабл Из ТекОбъект.Товары Цикл  
			//Осипов 2024-07-08 скопировал прошлую функцию... Потому что в БП ее убрали..
			//ДокМенеджер.ЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти(ТекОбъект, СтрТабл);
			ЛокЗаполнитьОтражениеВУСНВСтрокеТабличнойЧастиИзМенеджера(ДокМенеджер, ТекОбъект, СтрТабл);
		КонецЦикла;
		Для Каждого СтрТабл Из ТекОбъект.Услуги Цикл
			//Осипов 2024-07-08 скопировал прошлую функцию... Потому что в БП ее убрали..
			//ДокМенеджер.ЗаполнитьОтражениеВУСНВСтрокеТабличнойЧасти(ТекОбъект, СтрТабл);
			ЛокЗаполнитьОтражениеВУСНВСтрокеТабличнойЧастиИзМенеджера(ДокМенеджер, ТекОбъект, СтрТабл);
		КонецЦикла;

Всё работает отлично!

Среда: 3.0.155.21 Объем: 1 час.

fixin

Программирую на 1С с 1999 года. В 1С просто Гений. В 2020 году ушел из офиса на вольные хлеба фриланса. Принимаю заказы.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *