Доработка универсального обмена КД3 через расширение

1. just_junior 19.11.20 15:05 Сейчас в теме
Всем доброго дня!

Возникла необходимость доработать универсальный обмен БП 3.0 - УТ 11.4, решил делать при помощи расширения, так как конфигурация новая, снимать с поддержки не хотелось бы. Ограничиваю выгрузку по складу, дописываю ограничение в ПОД - При обработке. Собственно проблема возникла в следующем, там где код в "При обработке" был и соответственно процедура уже была в общем модуле создана, всё отрабатывает хорошо, но там где в "При обработке" пусто, процедуры не было и я создавал её следующим образом.

&ИзменениеИКонтроль("ДобавитьПОД_Документ_РеализацияТоваровУслуг")
Процедура ИзмОбм_ДобавитьПОД_Документ_РеализацияТоваровУслуг(ПравилаОбработкиДанных)
	ПравилоОбработки                         = ПравилаОбработкиДанных.Добавить();
	ПравилоОбработки.Имя                     = "Документ_РеализацияТоваровУслуг";
	ПравилоОбработки.ОбъектВыборкиМетаданные = Метаданные.Документы.РеализацияТоваровУслуг;
	#Вставка
	ПравилоОбработки.ПриОбработке            = "ПОД_Документ_РеализацияТоваровУслуг_ПриОбработке";
	#КонецВставки
	ПравилоОбработки.ОчисткаДанных           = Ложь;
	ПравилоОбработки.ИспользуемыеПКО.Добавить("Документ_РеализацияТоваровУслуг_Отправка");
КонецПроцедуры

Процедура ПОД_Документ_РеализацияТоваровУслуг_ПриОбработке(ДанныеИБ, ИспользованиеПКО, КомпонентыОбмена)
	Если ДанныеИБ.Склад <> Справочники.Склады.ПолучитьСсылку(Новый УникальныйИдентификатор("ce09b4d6-631e-11ea-8eec-00d8615223ae")) Тогда
		ИспользованиеПКО.Документ_РеализацияТоваровУслуг_Отправка = Ложь;
	КонецЕсли;
КонецПроцедуры
Показать


Но это не отрабатывает и выгружается всё. Если ли возможность без снятия с поддержки, всё таки доработать как-то обмен?

УТ 11.4.11.67
Платформа 8.3.17.1549
КД 3.0.5.3
По теме из базы знаний
Найденные решения
3. user633533_encantado 11 19.11.20 15:36 Сейчас в теме
(1) Вам вашу процедуру еще нужно в модуле "ВыполнитьПроцедуруМодуляМенеджера" указать
just_junior; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. user633533_encantado 11 19.11.20 15:36 Сейчас в теме
(1) Вам вашу процедуру еще нужно в модуле "ВыполнитьПроцедуруМодуляМенеджера" указать
just_junior; +1 Ответить
5. just_junior 19.11.20 15:52 Сейчас в теме
(3) Спасибо, не увидел, что и здесь нужно дописывать код. И да всё взлетело и на "ИзменениеИКонтроль", после того как я дописал новую процедуру в "ВыполнитьПроцедуруМодуляМенеджера"
8. MaxS 2850 25.11.20 08:34 Сейчас в теме
(1) Если выгружается 100500 документов, придётся каждый раз искать искать склад, а то вдруг он пропал? )
Может быть параметр добавить в конвертацию?
Процедура ПОД_Документ_РеализацияТоваровУслуг_ПриОбработке(ДанныеИБ, ИспользованиеПКО, КомпонентыОбмена)
	Если КомпонентыОбмена.ПараметрыКонвертации.Свойство("СкладОтбор") Тогда
		СкладОтбор = КомпонентыОбмена.ПараметрыКонвертации.СкладОтбор;
	Иначе
		СкладОтбор = Справочники.Склады.ПолучитьСсылку(Новый УникальныйИдентификатор("ce09b4d6-631e-11ea-8eec-00d8615223ae"));
		КомпонентыОбмена.ПараметрыКонвертации.Вставить("СкладОтбор", СкладОтбор);
	КонецЕсли;	
		
    Если НЕ ДанныеИБ.Склад=СкладОтбор Тогда
        ИспользованиеПКО.Документ_РеализацияТоваровУслуг_Отправка = Ложь;
    КонецЕсли;
КонецПроцедуры
Показать
just_junior; +1 Ответить
9. just_junior 25.11.20 09:17 Сейчас в теме
(8) Спасибо за дополнение, попробую )
2. user633533_encantado 11 19.11.20 15:14 Сейчас в теме
Вообще должно работать. А если не "ИзменениеИКонтроль", "Вместо" - работает ?
4. oleg-x 26 19.11.20 15:50 Сейчас в теме
(1) Обычно правят правила регистрации и сами правила обмена, а не сам механизм обмена.
И делается это в КД2 или КД3 в зависимости от того что надо править.
6. just_junior 19.11.20 15:55 Сейчас в теме
(4) Не совсем вас понял. Чтобы внести правки по универсальному обмену обмену (кд3), необходимо в общем модуле "МенеджерОбменаЧерезУниверсальныйФормат" внести правки, которые сформирует как раз конфигурация КД3
7. user633533_encantado 11 19.11.20 17:50 Сейчас в теме
(4) КД3 - правила обмена это модуль.
Оставьте свое сообщение

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