Ошибка записи во внешний источник в транзакции

1. Sakuraso 12.04.22 09:54 Сейчас в теме
Всем добрый день.
Есть такая задача, нужно выгружать документы из ERP в таблицу во внешнем источнике данных (база данных Oracle).
Сделал это так: получаю изменения из плана обмена, после пишу во внешней источник в транзакции. Транзакцию открываю во внешнем источнике.
Так вот, проблема в том что когда пишу в транзакции, записывает только первую строку, на след. строки запись валиться в ошибку
"Ошибка внешней базы данных: ошибка при выполнении запроса".

Функция которая открывает транзакцию и дергает процедуры записи в таблицы.
Функция ВыполнитьВыгрузкуОбъектов(УзелОбмена, НастройкиОбмена, ТекстыОшибок) 

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

Показать


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

Показать


Может кто сталкивался с таким?
По теме из базы знаний
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение

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