Особенности online-обмена между старыми и новыми типовыми

01.06.21

Интеграция - Перенос данных 1C

Столкнулся с неприятной особенностью потери части данных при обмене УСО (УПП) - ДО.

О чем речь?

Онлайн-обмен в направлении Старая типовая -> Новая типовая. Под старыми типовыми я понимаю конфигурации УПП 1.3, КА 1.1, УТ 10.3. Под новыми типовыми подразумеваются современные конфигурации на управляемых формах, созданные на базе БСП

Вопрос что такое Онлайн-обмен задавался здесь. Если в двух словах, то с использованием правил Конвертации данных 2 можно обмениваться используя обработку Универсальный обмен данными в формате XML (УОД) и можно эти же правила использовать при обмене с использованием механизмов конфигурации и планов обмена.

 
Как выглядит  УОД и Онлайн-обмен

Собственно проблема возникла при обмене между УСО (конфигурация на базе УПП) и ДО 2.1.26.2

Что-то подобное было ранее: infostart.ru/1c/articles/1120243/

 

Суть проблемы

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

 


рис.3. Свойство НПП в файле выгрузки

 

При загрузке такого файла в ДО код модуля обработки КонвертацияОбъектовИнформационныхБаз в т.ч. выполняет вызовы:
ПрочитатьСвойстваПоискаИзФайла()
   ПрочитатьСвойство()
      НайтиОбъектПоНомеру()

Код функции в ДО сегодня выглядит так:

 

рис.4. Код функции НайтиОбъектПоНомеру в 1С:Документооборот 2.1

 

Соответственно по номеру НПП ничего не находится для последующих договоров с таким же контрагентом.
В УСО эта же функция в обработке ОбменДаннымиXML выглядит следующим образом:

 


рис.5. Код функции НайтиОбъектПоНомеру в 1С:УСО

 

Выгрузка справочника ДоговорыКонтрагентов из ДО выглядит иначе. Выгрузка каждого Договора контрагента сопровождается выгрузкой свойств поиска Контрагента:

 


рис.6. Выгрузка из 1С:Документооборот 2.1 содержит свойства поиска для каждого элемента

 

В итоге мы получаем, что механизм выгрузки полей поиска несколько поменялся в современных типовых.

 

Варианты решения

Вариант 1. Доработка правил обмена

Добавляем еще одни правила обмена, которые будут использоваться только для поиска Контрагента, ставим в этих правилах флаг Не запоминать выгруженные объекты.

 

 


рис.7. Настройка ПКО Контрагенты (поиск)

 

В этом случае информация для поиска контрагента будет выгружаться всегда:

 


рис.8. Данные для поиска контрагента в файле выгрузки из УСО

 

Вариант 2. Доработка обработки КонвертацияОбъектовИнформационныхБаз

Придется доработать функцию НайтиОбъектПоНомеру и ряд других, в т.ч. ввести глобальную переменную ЗагруженныеОбъекты.

 

Все описанное в статье происходило на платформе 8.3.17.2171, ДО 2.1.26.2.

См. также

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    145791    849    299    

439

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.21.x).

35000 руб.

23.07.2020    56258    257    73    

212

SALE! 10%

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 50200 руб.

04.08.2015    170774    360    283    

391

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

55778 50200 руб.

15.04.2019    74317    199    156    

137

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    38371    108    70    

102

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.244.x) и БП 3.0 (3.0.172.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    26160    187    56    

143

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Платформа 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16260 руб.

18.02.2016    189223    616    534    

537

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:ERP Управление предприятием 2.5 и 1С:Комплексную автоматизацию 2.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.244.x), ERP 2.5 (2.5.21.x), КА 2.5 (2.5.21.x).

35000 руб.

24.06.2020    64940    81    28    

94
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. RustIG 1845 01.06.21 09:27 Сейчас в теме
(0) понятно, что не во время такое обнаруживается, понятно, что без предупреждения, и время на подобные задачи нельзя планировать и выделять заранее.... анализ проблемы и разбор решений наверное много времени занял....
ошибка наверное не частная, а общая.... что говорят разработчики типовых решений?
наверное уже связались с ними...неужели сейчас каждому внедренцу-консультанту надо будет ставить костыли в типовые конфиги?
2. echo77 1921 01.06.21 09:42 Сейчас в теме
(1) Времени ушло полно. С разработчиками не связывался
3. reloc 17 01.06.21 12:50 Сейчас в теме
Проблема все таки касается не всех "Новых" конфигураций, так как в Бухгалтерии 3.0.91.36 процедура заполнена корректно.
Функция НайтиОбъектПоНомеру(НПП, РежимПоискаОсновногоОбъекта = Ложь)

	Если НПП = 0 Тогда
		Возврат Неопределено;
	КонецЕсли;
	
	СтруктураРезультата = ЗагруженныеОбъекты[НПП];
	
	Если СтруктураРезультата = Неопределено Тогда
		Возврат Неопределено;
	КонецЕсли;
	
	Если РежимПоискаОсновногоОбъекта И СтруктураРезультата.СсылкаФиктивная Тогда
		Возврат Неопределено;
	Иначе
		Возврат СтруктураРезультата.СсылкаНаОбъект;
	КонецЕсли; 

КонецФункции
Показать
4. echo77 1921 01.06.21 12:52 Сейчас в теме
(3) Эта процедура из обработки КонвертацияОбъектовИнформационныхБаз или же ОбменДаннымиXML ?
Обработки похожи
6. reloc 17 01.06.21 13:18 Сейчас в теме
(4) Да, ошибся, извиняюсь, это из ОбменДаннымиXML. В КонвертацияОбъектовИнформационныхБаз все также "Неопределено" возвращает.
Student1C; echo77; +2 Ответить
5. Dmitryiv 162 01.06.21 12:58 Сейчас в теме
В обработчике "ПередВыгрузкой" можно установить флаг ВыгружатьОбъект=Истина. И тогда всегда будет выгружаться весь объект, а не только ссылка на него. И не надо городить огород с дополнительными правилами.
7. dnikolaev 168 01.06.21 19:49 Сейчас в теме
(5) Да, а я делал так: в обработчике "ПередВыгрузкой" ТолькоПолучитьУзелСсылки = Ложь; тоже помогало
8. aleksey.kubovtsov 119 22.01.22 13:06 Сейчас в теме
УТ 10 лохматого года
БП 30 актуального релиза
УТ 10 лохматого года
БП 30 актуального релиза

Был произведен переход БП 20 на БП 30

Грузим один документ , все хорошо

Грузим массив, НПП , все приплыли
Стоял признак в правилах обмена Не замещать объект созданные в инф...
Решение
Помогло
https://infostart.ru/1c/articles/1448782/
Убрать признак в моей ситуации проблему не решило.
Действительно в конфигурации "НайтиОбъектПоНомеру" обработки КонвертацияОбъектовИнформационныхБаз возвращает "Неопределено"
Сделал альтернативный поиск, не запоминать выгруженные и прочее завершало сеанс ут 10 старого релиза, что там в ней не так было, копать не стали
9. Pavel_Vladivostok 58 27.04.22 07:09 Сейчас в теме
Тоже напоролся на эти грабли, потратил некоторое время на поиск решения, в моем случае в правилах подключен свой кэш выгруженных и все ссылки в выгружаемых объектах выгружаются по одному разу при каждой выгрузке, а при загрузке, если выгрузка была по ссылке, объект у получателя не замещается, только создаются новые, таким образом, если выгружается какой-нибудь объект со ссылочными реквизитами, у него гарантированно будут заполнены все ссылочные данные.
Чтобы решить проблему описанную автором, пришлось в каждом ссылочном ПКО ставить галочку "Использовать быстрый поиск объекта при выгрузке и загрузке". В этом случае для каждой ссылки в реквизитах, выгружается полноценное описание полей поиска этой ссылки,
Благодаря кэшу все ссылки гарантированно выгружаются, а для всех обработчиков ПриВыгрузкеПКС подключен алгоритм в котором указано "ВыгружатьОбъект=Ложь;"

PS
Системный кэш КД, тот что в таблице выгруженныеОбъекты, недоступен в обработчиках ПКС.
Оставьте свое сообщение