Перенос контактной информации (конвертация данных УТ10.3 -> БП30)

1. user659168_xec8787 3 05.09.17 15:15 Сейчас в теме
День добрый! Подскажите пожалуйста методический момент.
В не типовой УТ10.3 в справочнике "ВидыКонтактнойИнформации" есть предопределенные элементы, А также есть куча пользовательских элементов. В типовой БП3.0 в этом справочнике только предопределенные элементы.
Задача - в правилах обмена (КД2.1) описать, что-то типа "если пользовательский элемент такой-то, то это такой предопределенный элемент из справочника в БП".
Выкрутился след. образом:
1. создал ряд предопределенных элементов в справочнике "ВидыКонтактнойИнформации", взял их из БП3.0.
2. в ПКО для спр. "ВидыКонтактнойИнформации" в обработчике "ПередВыгрузкой" написал условие:
//изменяем элемент источника на предопределенный элемент из исходной БД
Если Источник.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты И Источник.ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.КонтактныеЛица Тогда
	Источник = Справочники.ВидыКонтактнойИнформации.EmailКонтактныеЛица;	
ИначеЕсли Источник.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон И Источник.ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.КонтактныеЛица Тогда
	Источник = Справочники.ВидыКонтактнойИнформации.ТелефонРабочийКонтактныеЛица;
КонецЕсли;

3. Т.е. опираюсь при переносе только на "Тип" и "Вид" контактной информации, независимо от того, что там пользователь написал.

Вопрос: как сделать перенос, БЕЗ добавления предопределенных элементов в спр. "ВидыКонтактИнфы" УТ10.3 ???
Затык в том, что не понимаю, как состыковаться с предопределенными элементами справочника?

П.С. КонвертацияДанных 2.1.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. spe1c 5 05.09.17 17:17 Сейчас в теме
Включите синхронизацию по коду справочника и в ПКС перед выгрузкой пишите Если иточник.код = "..." то значение = <нужный код из БП>. Попробуйте так состыковать.
3. user659168_xec8787 3 06.09.17 12:14 Сейчас в теме
(2)
Включите синхронизацию по коду справочника и в ПКС

День добрый, большое спасибо за отклик! Ваш алгоритм понял: состыковка по коду и его подмена в случае необходимости.
НО, блин для БП в спр. "ВидыКонтактнойИнформации" длинна реквизита "Код" = 0. Т.е. данный реквизит не используется, и вносить его не охота, т.к. БП типовая.
4. parubetssm 06.09.17 16:08 Сейчас в теме
На мой взгляд конвертация перечисления делается просто: в ПКО надо во вкладке "конвертация значений" перечислить нужное соответствие между значениями перечисления базы источника и базы приемника. И все. Во вкладке настройки ПКО надо снять все галки.
В списке ПКО у перечисления будет пиктограмма "минус". Никакого кода не надо
Это по перечислениям...
5. parubetssm 06.09.17 16:13 Сейчас в теме
По справочнику. Думаю, что в первом ответе мысли автор выразил неправильно: надо снять синхронизацию не по коду, а по внутреннему идентификатору. А именно сделать то же, что и с перечислениями. Соответствие между значениями предопределенных реквизитов надо так же произвестии во вкладке "конвертация значений", а не конвертация свойств (вроде так называется). + во вкладке "Настройки" ПКО справочника "Виды..." надо снять все галки (убрать поиск по уникальному идентификатору). В итоге в списке ПКО в качестве пиктограмки для данного справочника так же будет "минус". Никакого кода не надо. Никакого соответствия между свойствами так же не надо указывать. Все будет так же как с перечислениями (если отсутствуют не предопределенные элементы, а они обычно отсутствуют)

Сам поначалу мучался, пока не дошел методом тыка
6. parubetssm 06.09.17 16:18 Сейчас в теме
Если в справочнике есть непредопределенные элементы, то можно сделать, например, 2 правила конвертации для данного справочника: одно для предопределенных, другое - не для предопределенных объектов. И в зависимости от значения свойства (имеющего тип "Справочник.ВидКонтактнойИнф-ции"), можно запускать выгрузку свойства либо по одному правилу, либо по другому...
Оставьте свое сообщение

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