Конвертация данных. Выгрузка контактной информации из регистра сведений в табличную часть

11.12.17

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Довольно часто встречается задача выгрузить при помощи «Конвертация данных, редакция 2.1» контактной информации контрагента из «Управление торговлей", редакция 10.3» в «Бухгалтерия предприятия, редакция 3.0». Сложность заключается в том, что в УТ контактная информация хранится в регистре сведений, а в БП - в табличной части справочника «Контрагенты». Предлагаю мое, достаточно простое, решение данной задачи.

Довольно часто встречается задача выгрузить при помощи «Конвертация данных, редакция 2.1» контактной информации контрагента из «Управление торговлей", редакция 10.3» в «Бухгалтерия предприятия, редакция 3.0». Сложность заключается в том, что в УТ контактная информация хранится в регистре сведений, а в БП - в табличной части справочника «Контрагенты».

Предлагаю мое, достаточно простое, решение данной задачи.

 

1. В правило конвертации объектов (ПКО) «Контрагенты» добавляем конвертацию свойств (ПКС) табличной части «КонтактнаяИнформация», причем не указываем источник и ставим галку «получать из входящих данных». Добавляем все, необходимые реквизиты табличной части.

1

 

2. Открываем ПКО «Контрагенты» и добавляем ниже следующий код в обработчик «Перед выгрузкой».

2


 

//Выгружаем контактную информацию контрагента

ВходящиеДанные = Новый Структура("КонтактнаяИнформация");
ВходящиеДанные.КонтактнаяИнформация = Новый ТаблицаЗначений;
ВходящиеДанные.КонтактнаяИнформация.Колонки.Добавить("Представление");
ВходящиеДанные.КонтактнаяИнформация.Колонки.Добавить("Вид");
ВходящиеДанные.КонтактнаяИнформация.Колонки.Добавить("Тип");

Запрос = Новый Запрос;
Запрос.Текст =
    "ВЫБРАТЬ
    |    КонтактнаяИнформация.Представление,
    |    КонтактнаяИнформация.Вид,
    |    КонтактнаяИнформация.Тип
    |ИЗ
    |    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
    |ГДЕ
    |    КонтактнаяИнформация.Объект = &ТекущийКонтрагент";

Запрос.УстановитьПараметр("ТекущийКонтрагент", Источник);
Выборка = Запрос.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл
    НовСтрока = ВходящиеДанные.КонтактнаяИнформация.Добавить();
    ЗаполнитьЗначенияСвойств(НовСтрока, Выборка);
КонецЦикла;

Суть в том, что мы программно создаем табличную часть «Контактная информация» и подставляем ее для выгружаемого объекта в качестве входящих данных.

Следует обратить внимание, что инициализация параметра «ВходящиеДанные», и передача в него таблицы значений со всеми необходимыми колонками, обязательна для каждого объекта. В противном случае, будет возникать ошибка типа «Ошибка получения свойства подчиненного объекта из входящих данных».

конвертация данных контактная информация

См. также

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 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. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 22572 руб.

12.06.2017    134924    722    291    

388

SALE! 20%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

Обмен между базами 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 | В продаже с 2019г. | Воспользовались более 176 предприятий! | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой, обращайтесь!

34650 27720 руб.

15.04.2019    68414    178    138    

111

SALE! 20%

Перенос данных из ERP 2 / КА 2 в ЗУП 3. Переносятся остатки, документы и справочники

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

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

43450 34760 руб.

03.12.2020    34168    80    58    

78

SALE! 10%

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

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

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

28000 25200 руб.

23.07.2020    46286    196    64    

158

Перенос данных из Парус 10 в ЗГУ ред.3

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

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

60000 руб.

05.10.2022    9206    9    8    

10

SALE! 10%

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

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

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

28000 25200 руб.

15.12.2021    20235    132    38    

90

SALE! 10%

Перенос данных из БП 3.0 в УНФ 3.0 / УНФ 1.6. Переносятся остатки, документы и справочная информация

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

В продаже с 2018г. | Воспользовались более 41 предприятия! | Правила конвертации (КД 2) для переноса данных из БП 3 в УНФ | Переносятся все виды документов, начальные остатки и вся возможная справочная информация | Есть фильтр по организациям | Оперативно обновляем на новые релизы | Оказываем техподдержку | В комплект файлов входит инструкция, авторская версия обработки "Универсальный обмен...", актуальные правила переноса данных и архив старых версий переноса | Учет в БП 3 должен быть корректным, некорректные данные не переносятся | Можно бесплатно проверить на вашем сервере до покупки!

50722 45650 руб.

10.07.2018    67440    41    122    

46

Загрузка номенклатуры c картинками (несколько потоков одновременно) и сопутствующими данными в базу и любые документы из yml, xls, xlsx, xlsm, ods, ots, csv для УТ 10.3, УТ 11 (все), БП 3, КА 2, ERP 2, УНФ 1.6/3.0, Розница 2

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

Эволюция не стоит на месте - новая удобная версия функциональной обработки для Вашего бизнеса! Что же Вы получаете? Удобный и интуитивно понятный интерфейс с 3-мя этапами работы. 2 режима - автоматический и ручной. Чтение XLSX, XLSM, CSV, XML/YML форматов без офиса, на любом сервере! Визуальное связывание колонок файла и реквизитов простым перетаскиванием колонок. Создание или обновление номенклатуры с иерархией, характеристик, доп. реквизитов, упаковок, загрузка практически неограниченного количества картинок на одну номенклатуру (с возможностью загрузки в несколько потоков одновременно), с хранением в томах или в базе. Загрузка номенклатуры поставщиков или поиск по их данным номенклатуры. Загрузка доп. реквизитов в характеристики. Загрузка штрихкодов с генерацией новых. Создание элементов справочников и ПВХ "на лету" для выбранных реквизитов. (Обновление от 11.12.2023, версия 9.5 - 9.9)

13200 руб.

20.11.2015    150705    367    375    

501
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. peterxx 21 11.12.17 21:26 Сейчас в теме
Метод прекрасный. У него есть только один недостаток, он мало пригоден для переноса контактной информации. Поле приемника "ЗначенияПолей", в котором фактически и содержится контактная информация в виде текста XML, и с которым работают конфигурации на БСП, таким способом не заполнить. Нужны пляски с бубном, точнее, в источнике нужно разделять КИ на элементы, а в приемнике - формировать из них строку в формате XML. Задача, кстати, не совсем тривиальная.
2. Nicholas 887 12.12.17 10:02 Сейчас в теме
(1) Да, согласен. Но пока нет такой задачи. В рамках текущей задачи мне было достоточно перенести "адрес в свободной форме". Если бы в УТ адреса заполнялись из КЛАДР, а в телефонах указывались "код страны" и "код города", то можно было заморочится.
8. Mbisha 05.05.18 22:18 Сейчас в теме
(2)Пытаюсь таким же образом перенести контактную информацию Физических лиц, возникла проблема с переносом элементов справочника ВидыКонтактнойИнормации. В обеих базах они являются предопределенными. Сопоставляю их на закладке КонвертацияЗначений. При загрузке в строке ТЧ КонтактнаяИнформация поле Вид принимает значение <Объект не найден> и адрес не отображается на форме. Какой момент я упустила?
3. A_Max 19 12.12.17 15:38 Сейчас в теме
Вариант покороче. В ПКО группы "КонтактнаяИнформация" "Перед обработкой"

Запрос = Новый Запрос;
Запрос.Текст = "Выбрать .......";
КоллекцияОбъектов = Запрос.Выполнить().Выгрузить();
4. kasper076 101 12.12.17 17:26 Сейчас в теме
Запрос в ПКО не оч красиво.
5. Nicholas 887 13.12.17 05:00 Сейчас в теме
(4) А почему не красиво? Мне этот вариант нравится. Получается наоборот более логично. Контактная информация и сбор этой информации - все в одном месте. Если понадобиться изменить или даже удалить эту табличную часть из обмена, то не нужно искать в других местах.
6. kasper076 101 13.12.17 08:12 Сейчас в теме
(5) Запрос в цикле это зло. В ПВД нужно все реализовывать.
simy4; unichkin; viking7; Ali1976; +4 Ответить
7. A_Max 19 27.12.17 11:47 Сейчас в теме
(6) Вынести в ПВД - конечно вообще самый правильный способ. Я предложил упрощение которое сразу станет понятно для человека и реализуемо на раз-два.
9. neomike 12.03.19 17:41 Сейчас в теме
а есть у кого-нибудь примерчик с ПВД?!
10. Eremkin 02.12.19 20:31 Сейчас в теме
Не благодари =)
Прикрепленные файлы:
11. user1758004 29.03.22 17:22 Сейчас в теме
(6)
Запрос в цикле это зло. В ПВД нужно все реализовывать.

А что здесь не красивого? - по мне так, для тех у кого опыта в конвертации не так много и при небольших выборках данных самое оно. ) И с передачей GUID не надо заморачиваться )
12. Diego_Iv 34 13.02.24 09:07 Сейчас в теме
Добрый день.
Немного дополню, вдруг кому пригодится.
Точно по такому же принципу нужно делать перенос адресов организаций: из регистра в табличную часть.
Столкнулся с тем, что при переносе адресов индивидуального предпринимателя - адреса не переносились (затирались точнее) . Причина в разном значении "Видов контактной информации" и в том, что в старых конфигурациях (УТ, КА, УПП) это адреса для физического лица, а не адрес организации.

В правиле конвертации (ПередОбработкой) использовал такой код:

Если Источник.ЭтоГруппа Тогда
	Отказ = Истина;
КонецЕсли;	

Если ЗначениеЗаполнено(Источник.ИндивидуальныйПредприниматель) Тогда
	Запрос = Новый Запрос("ВЫБРАТЬ
|	ВЫБОР
|		КОГДА КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресФизЛица)
|			ТОГДА ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресОрганизации)
|		КОГДА КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица)
|			ТОГДА ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресОрганизации)
|		КОГДА КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ИнформАдресФизЛица)
|			ТОГДА ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресОрганизацииПочтовый)
|		ИНАЧЕ КонтактнаяИнформация.Вид
|	КОНЕЦ КАК Вид,
|	ВЫБОР
|		КОГДА КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресФизЛица)
|			ТОГДА ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресОрганизации)
|		КОГДА КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица)
|			ТОГДА ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресОрганизации)
|		КОГДА КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ИнформАдресФизЛица)
|			ТОГДА ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.АдресОрганизацииПочтовый)
|		ИНАЧЕ КонтактнаяИнформация.Вид
|	КОНЕЦ КАК ВидДляСписка,
|	КонтактнаяИнформация.Поле4 КАК Город,
|	КонтактнаяИнформация.Поле3 КАК НомерТелефона,
|	КонтактнаяИнформация.Представление,
|	КонтактнаяИнформация.Поле2 КАК Регион,
|	КонтактнаяИнформация.Тип,
|	КонтактнаяИнформация.Вид.Предопределенный
|ИЗ
|	РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
|ГДЕ
|	КонтактнаяИнформация.Объект = &Объект");
Запрос.УстановитьПараметр("Объект", Источник.ИндивидуальныйПредприниматель);	
Иначе
Запрос = Новый Запрос(" 
    |ВЫБРАТЬ
    |    КонтактнаяИнформация.Вид,  
	|    КонтактнаяИнформация.Вид КАК ВидДляСписка,
	|    КонтактнаяИнформация.Поле4 КАК Город,
	|    КонтактнаяИнформация.Поле3 КАК НомерТелефона,
	|    КонтактнаяИнформация.Представление,
	|    КонтактнаяИнформация.Поле2 КАК Регион,
	|    КонтактнаяИнформация.Тип
    |ИЗ
    |    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
    |ГДЕ
    |    КонтактнаяИнформация.Объект = &Объект");
Запрос.УстановитьПараметр("Объект", Источник.Ссылка);
КонецЕсли;
    
КоллекцияОбъектов  = Запрос.Выполнить().Выгрузить();
Показать
Оставьте свое сообщение