1. user595701_taraskovdanil 16.05.18 18:02 Сейчас в теме

Проблема в стандартном обмене СинхронизацияДанныхЧерезУниверсальныйФормат. Удаляются документы, элементы справочника. Как исправить?

Происходит обмен между УТ 11.4.1.248 и Бухгалтерия предприятия КОРП, редакция 3.0 (3.0.60.60).
Обмен происходит без ошибок в журнале регистрации есть записи по удалению выгруженного объекта.

В общем нашел где проиходит удаление документов и элементов справочника. Смысл такой - когда у объекта несколько правил конвертации объектов(ПКО). Программа обходит циклом список ПКО и если ПКО не исппользуется , то происходит удаление объекта.
По идее должен быть обход по второму ПКО, но не происходит.
Не пойму как должно это работать и как мне выгрузить документы в бухгалтерскую базу.

В общем модуле ОбменДаннымиXDTOСервер есть процедура ВыгрузкаОбъектаВыборки в ней есть код:

Для Каждого ТекущееПКО Из ИспользованиеПКО Цикл
Попытка
Если Не ТекущееПКО.Значение Тогда
// Если правил конвертации несколько, и некоторые из них не используются -
// необходимо выгрузить удаление объекта на случай если ранее он был выгружен по этим правилам.

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

Продолжить;
КонецЕсли;

// 1. Поиск правила конвертации.

ПравилоКонвертации = КомпонентыОбмена.ПравилаКонвертацииОбъектов.Найти(ТекущееПКО.Ключ, "ИмяПКО");

// 2. Конвертируем Данные в Структуру по правилам конвертации.
ДанныеXDTO = ДанныеXDTOИзДанныхИБ(КомпонентыОбмена, Объект, ПравилоКонвертации, Неопределено);

И т.д.

Так вот когда выполняется ВыгрузитьУдаление(КомпонентыОбмена, Объект.Ссылка, ПравилоКонвертации); Происходит удаление объекта

Не пойму это косяк 1С?
Или я что-то не так делаю?
Кто нибудь сталкивался?
И какие есть предложения по выходу из ситуации?
Ответы
Сортировка: Древо
2. buriZa 30 17.05.18 11:04 Сейчас в теме
(1)
// Отработка ПКО
НесколькоПКО = (ПравилоОбработки.ИспользуемыеПКО.Количество() > 1);
	
Для Каждого ТекущееПКО Из ИспользованиеПКО Цикл

Остановитесь на строке "Для Каждого ТекущееПКО Из ИспользованиеПКО Цикл" и посмотрите сколько у вас ПКО и какие они, без отладки не разобраться.
По-моему это фоновое задание, галочку в отладке не забудьте.
3. user595701_taraskovdanil 30.05.18 11:52 Сейчас в теме
Решил следуюшим образом: в общем модуле МенеджерОбменаЧерезУниверсальныйФормат для документов у которых два ПКО в ПОД(правилах обработки данных) есть код ПравилоОбработки.ОчисткаДанных = Ложь; Установил в ложь.
Документы стали выгружаться.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Салехард
зарплата от 80 000 руб. до 200 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 100 000 руб.
Полный день


Программист 1С
Санкт-Петербург
Полный день

Программист 1С
Санкт-Петербург
Полный день