alexeyshi
@alexeyshi

Как удалить изменения из планов обмена?

Всем привет, такая проблема: не могу удалить изменения из планов обмена. Пишу свою интеграцию 1с->битрикс. Нашёл метод ПланыОбмена.УдалитьРегистрациюИзменений. Но вот почему-то метод отказывается удалять. Установлена авторегистрация изменений. Ниже код выполняется уже в конце обмена, когда 1с получает ответ от битрикса

//Выборка - Массив контрагентов состоящий из xmlID и bitrixID
                        Узел = ПланыОбмена.ОбменССайтом.ЭтотУзел();
			Для Каждого Элемент Из Выборка Цикл
				УИД = Новый УникальныйИдентификатор(Элемент["XmlID"]);
				Ссылка = Справочники.Контрагенты.ПолучитьСсылку(УИД);
				Объект = Ссылка.ПолучитьОбъект();
					Если ПустаяСтрока(Объект.id) ИЛИ Объект.id <> Элемент["bitrixID"] Тогда
						Объект.id = Элемент["bitrixID"];
						Объект.Записать();
						ПланыОбмена.УдалитьРегистрациюИзменений(Узел, Ссылка);
					КонецЕсли;
			КонецЦикла;
  • Вопрос задан
  • 13119 просмотров
Решения вопроса 1
Вы неправильно выбираете узел для обмена.
ЭтотУзел - возвращает ссылку на узел текущей информационной базы, а регистрация ведется в узлах олицетворяющих другие информационные базы.
Надо что то типа ПланыОбмена.ОбменССайтом.НайтиПоКоду(); и передать туда код узла обмена олицетворяющего сайт.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы