КД: синхронизация или универсальный обмен данными?

1. user745651 28.12.17 09:04 Сейчас в теме +0.4 $m
Создаю правила обмена данными на основании типовых.
Добавил код поиск по полям и после загрузки создание записей в регистре сведений.

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

Кто нибудь сталкивался с похожим?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. plevakin 28.12.17 09:12 Сейчас в теме
Записи регистра зарегистрированы к обмену?
3. user745651 28.12.17 09:17 Сейчас в теме
Этот регистр не предусмотрен. Выгружаю программно. При загрузки объекта - записываю данные в таблицу значений, потом после загрузки данных создаю записи в регистр сведений
4. plevakin 28.12.17 09:22 Сейчас в теме
(3) Хочу прояснить ситуацию. В типовые правила добавлено ПКО РС1 - РС1? Под "синхронизация мой код игнорирует" понимается, что выгрузка через типовой плане обмена с измененными правилами не работает?
5. user745651 28.12.17 10:04 Сейчас в теме
Выгружаю должность из 1 программы в другую. вместе с ней должна формироваться запись в регистре (не пко, программная запись).
через УОД - записывается должность и создается запись в регистре сведений(Дополнительные сведения). А при синхронизации(успешно, без ошибок) должность записывается, а запись в регистре не создается.
6. triviumfan 93 28.12.17 23:12 Сейчас в теме
(5) Как именно происходит запись РС? Если после выгрузки должности в отдельный узел файла обмена, то попробуй добавить ПВД для этого регистра.
7. user745651 29.12.17 09:11 Сейчас в теме
В типовых правилах в структуре метаданных нет этого регистра.
Как записываю? Обработчик Конвертация_ПослеЗагрузкиДанных -в модуле пишу: ... СоздатьМенеджерЗаписи()...
8. triviumfan 93 07.01.18 02:17 Сейчас в теме +0.29 $m
Отладка в помощь, что там происходит после загрузки данных может ответить только она.
Ещё можно попробовать по-православному: ПКО для твоего регистра, и программно вызвать методом ВыгрузитьПоПравилу() (примеры тут);
Также помню, что обработка ОбменДаннымиXML (что использовалась в старой версии БСП) неадекватно работала с менеджером записи регистра, можно попробовать через набор записей (в типовых, кстати, именно так).
9. user745651 10.01.18 09:12 Сейчас в теме
(8)
Отладка в помощь

Отладку же можно вроде только подключить к обработке "универсальный обмен данными в формате xml". Она у меня и так отрабатывает как нужно. А к синхронизации я как подключу отладку?

С набором записи попробую.
выгрузить по правилу тоже попробую, но не совсем понимаю как она мне поможет? данные ведь выгружаются. только не записывается РС доп сведения при синхронизации
10. UtSpar 134 10.01.18 09:44 Сейчас в теме
(9) с синхронизацией через отладчик, ты же правила свои загрузил в макет?
11. user745651 10.01.18 11:15 Сейчас в теме
(10)
ты же правила свои загрузил в макет

да, загрузил правила конвертации
13. user745651 10.01.18 13:06 Сейчас в теме
(8)
ПКО для твоего регистра, и программно вызвать методом ВыгрузитьПоПравилу() (примеры тут)


Посмотрел, думаю могло бы помочь выгрузитьврегистр.
Только пока не совсем понял как. я выгружаю код справочника(строка), а хочу создать РС доп сведения(то есть объект, свойство(ПВХ) и строка)
Как он будет загружаться в приемнике?

сейчас я обработчике после загрузки данных пишу так:
...
Запрос = Новый Запрос(
"ВЫБРАТЬ первые 1
| ДополнительныеРеквизитыИСведения.Ссылка КАК Ссылка,
| ДополнительныеРеквизитыИСведения.Наименование КАК Наименование
|ИЗ
| ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения
|ГДЕ
| ДополнительныеРеквизитыИСведения.Заголовок = &Заголовок");
Запрос.УстановитьПараметр("Заголовок", Строка("Код_должности"));
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Выборка.Следующий();

НаборЗаписей = РегистрыСведений.ДополнительныеСведения.СоздатьНаборЗаписей(); //или менеджер записи. и так и так пробовал

Для Каждого Должность Из Параметры.ЗагруженныеДолжности Цикл

НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Объект = Должность.Ссылка;
НоваяЗапись.Свойство = Выборка.Ссылка;
НоваяЗапись.Значение = Должность.Код_должности;

КонецЦикла;
НаборЗаписей.Записать();
12. user745651 10.01.18 11:19 Сейчас в теме
Может ли это как быть связано с этим?

файл выгруженный универсальным обменом
<ФайлОбмена ВерсияФормата="2.0"
<ВерсияФормата>2.01</ВерсияФормата>

а синхронизацией
<ФайлОбмена ВерсияФормата="3.1"
<ВерсияФормата РежимСовместимости="РежимСовместимостиСБСП20">2.01</ВерсияФормата>
14. iandax 5 26.10.18 11:00 Сейчас в теме
Приветствую! Чем кончились эксперименты-то? Как на самом деле нужно создавать программным способом регистр сведений через синхронизацию?
Оставьте свое сообщение

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