Не меняются проводки документа после обмена данными

1. muzzombie 01.03.24 11:33 Сейчас в теме
Здравствуйте!
Есть две базы с односторонней выгрузкой данных в БП 3.0.142.56, платформа 1С 8.3.24.1368. Правила обмена написаны в КД 2. Обмен осуществляется через общий каталог. В правилах обмена для базы-приемника, в ПКО документа "Отчет о розничных продажах", в раздел "После загрузки" написан такой код:


Попытка
	Объект.Записать(РежимЗаписиДокумента.Проведение);  
Исключение  
	Объект.Проведен = Ложь;
КонецПопытки;  

Если Объект.Проведен Тогда
	
	Набор = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
	Набор.Отбор.Регистратор.Установить(Объект.Ссылка);
	Набор.Прочитать();

Счет43   = ПланыСчетов.Хозрасчетный.ГотоваяПродукция;  
Счет4101 = ПланыСчетов.Хозрасчетный.ТоварыНаСкладах;  
Счет900201 = ПланыСчетов.Хозрасчетный.СебестоимостьПродажНеЕНВД;

	
	Запрос = Новый Запрос();  
	
	НужноЗаписать = Ложь;
	
	Для каждого Стр из Набор Цикл
		
		Если Стр.СчетДт = Счет900201 Тогда
			Если Стр.СчетКт = Счет43 Или Стр.СчетКт = Счет4101 Тогда
								
				Запрос.Текст = "ВЫБРАТЬ
				|	ЕСТЬNULL(ХозрасчетныйОстатки.СуммаОстатокДт, 0) КАК Сумма
				|ИЗ
				|	РегистрБухгалтерии.Хозрасчетный.Остатки(&Период, Счет = &Счет, , Субконто1 = &Номенклатура) КАК ХозрасчетныйОстатки";
				
				Запрос.УстановитьПараметр("Период", 	  НачалоДня(Объект.Дата));
				Запрос.УстановитьПараметр("Счет",	      Стр.СчетКт);
				Запрос.УстановитьПараметр("Номенклатура", Стр.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура]); 
				
				Результат = Запрос.Выполнить().Выбрать();
				
				Если Результат.Следующий() Тогда 
					Если Не Стр.КоличествоКт = 0 Тогда
						Стр.Сумма = Результат.Сумма/Стр.КоличествоКт; 	
					Иначе
						Стр.Сумма = 0;
					КонецЕсли;
				Иначе
					Стр.Сумма = 0
				КонецЕсли;
				
				НужноЗаписать = Истина;
				
			КонецЕсли;
			
		КонецЕсли;
		
		
	КонецЦикла;
	
	Если НужноЗаписать Тогда
		
		Набор.Записать();
		
	КонецЕсли;
	
КонецЕсли;  
Показать


Программа успешно проходит весь этот код, меняет проводки, однако по результату обмена все равно проводки возвращаются в свое исходное состояние. В чем может быть причина? Если запустить этот же код из внешней обработки, она успешно меняет проводки документа, которые НЕ возвращаются потом в свое исходное состояние. Пробовал полностью закомментировать раздел "После загрузки данных" в настройках конвертации - не помогло.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
6. muzzombie 04.03.24 11:15 Сейчас в теме
Разобрался, в чем причина. В табчасти "Товары" в документе "Отчет о розничных продажах" есть колонка "Себестоимость". Она заполнялась изначальными неправильными суммами из базы-источника и при проведении подставлялись именно эти суммы в проводки.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. starjevschik 01.03.24 12:05 Сейчас в теме
Так потом загрузка записывает и проводит документ и он свои проводки делает как должен.
Вообще идея менять проводки вне обработки проведения сомнительна. При каждом перепроведении будут проблемы.
3. muzzombie 01.03.24 12:26 Сейчас в теме
(2) А как тогда добиться поставленной цели?
4. starjevschik 01.03.24 13:29 Сейчас в теме
(3) переписать процедуру ОбработкаПроведения()
5. muzzombie 01.03.24 18:15 Сейчас в теме
(4) Дело в том, что когда в базе-приемнике вручную перепроводишь документ "Отчет о розничных продажах", проводки все уже изначально ставятся правильные. А вот если документ загрузился и провелся, то в проводке не та сумма сидит.
6. muzzombie 04.03.24 11:15 Сейчас в теме
Разобрался, в чем причина. В табчасти "Товары" в документе "Отчет о розничных продажах" есть колонка "Себестоимость". Она заполнялась изначальными неправильными суммами из базы-источника и при проведении подставлялись именно эти суммы в проводки.
Оставьте свое сообщение

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