Особенности 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.

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

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

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

58000 руб.

04.08.2015    190740    460    307    

460

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

50050 руб.

25.02.2015    189917    369    292    

426

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист 1С:Предприятие 8 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. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27633 руб.

12.06.2017    162274    980    324    

483

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

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

58000 руб.

15.04.2019    85475    229    180    

166

SALE! 10%

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

Переносите справочную информацию, остатки и документы из УПП 1.3 в Бухгалтерию 3.0 с помощью готовых правил. Переносится более 50 видов документов. Простой интерфейс и понятные настройки.

42000 37800 руб.

15.12.2021    35029    261    64    

199

Перенос данных 1C Программист 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Перенос данных из УПП 1.3 в УНФ | из КА 1.1 в УНФ | из УТ 10.3 в УНФ | Перенос разработан в формате КД 2 (правила конвертации объектов) | Выгружаются все возможные виды документов, начальных остатков и вся нормативно-справочная информация | Есть фильтр по организациям при выгрузке данных | Есть несколько алгоритмов выгрузки начальных остатков товаров на выбор | Можно проверить перед покупкой на своем сервере!

58000 руб.

17.10.2019    45163    60    117    

62

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

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

50600 руб.

21.05.2019    59028    81    134    

73

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 10 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

85400 руб.

05.10.2022    13964    16    8    

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

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

КонецФункции
Показать
4. echo77 1941 01.06.21 12:52 Сейчас в теме
(3) Эта процедура из обработки КонвертацияОбъектовИнформационныхБаз или же ОбменДаннымиXML ?
Обработки похожи
6. reloc 17 01.06.21 13:18 Сейчас в теме
(4) Да, ошибся, извиняюсь, это из ОбменДаннымиXML. В КонвертацияОбъектовИнформационныхБаз все также "Неопределено" возвращает.
Student1C; echo77; +2 Ответить
5. Dmitryiv 168 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
Системный кэш КД, тот что в таблице выгруженныеОбъекты, недоступен в обработчиках ПКС.
Для отправки сообщения требуется регистрация/авторизация