Обработка позволяет массово обновить данные карточки Контрагента по данным сервиса 1С:Контрагент (ИТС Проф или 1С:Контрагент должен быть подключен в информационной базе).
В исходную выборку попадают контрагенты, у которых пустой или неверный юр.адрес.
Но это вы можете сами подправить запрос по нужным условиям.
Не забывайте, что запросы в сервис считаются, обычный 1С:Контрагент имеет лимит на 7200 обращений в год. Но если у вас 1С:Контрагент безлимитный - тогда все ок.
Сами реквизиты обновляются по списку: Наименование (оно же "Краткое наименование" типа ПЯТЕРОЧКА ФИНАНС ООО), НаименованиеПолное (оно же Сокр.юридическое, типа ООО "ПЯТЕРОЧКА ФИНАНС"), КПП, Юр. адрес), но вы можете обновить и другие реквизиты, см скрин структуры.
Собственно единственная смысловая процедура - ниже, копируйте, саму обработку качать не обязательно. Остальное просто обёртка. Обработка строго (!) админская, подключение во внешние обработки не предусмотрено намеренно.
&НаСервере
Процедура ОбновитьНаСервере()
ТЗОбработки = Контрагенты.Выгрузить(Новый Структура("Пометка", Истина));
Время1 = ТекущаяДатаСеанса();
НачатьТранзакцию();
Сч = 0;
Для каждого СтрКонтрагент Из ТЗОбработки Цикл
обКонтрагент = СтрКонтрагент.Контрагент.ПолучитьОбъект();
РеквизитыЮридическогоЛица = РаботаСКонтрагентами.СведенияОЮридическомЛицеПоИНН(СтрКонтрагент.Контрагент.ИНН);
Если ВерсияКонфигурации = 1 Тогда
РеквизитыКонтрагента = ОбщегоНазначения.ОбщийМодуль("ПартнерыИКонтрагентыЛокализация").РезультатПреобразованияСведенийОЮрЛице(РеквизитыЮридическогоЛица);
Иначе
РеквизитыКонтрагента = РеквизитыЮридическогоЛица.ЕГРЮЛ;
КонецЕсли;
Если РеквизитыКонтрагента.Свойство("ЮридическийАдрес") И РеквизитыКонтрагента.ЮридическийАдрес <> Неопределено Тогда
Сч = Сч+1;
обКонтрагент.НаименованиеПолное = РеквизитыКонтрагента.НаименованиеСокращенное;
обКонтрагент.Наименование = РеквизитыКонтрагента.Наименование;
обКонтрагент.КПП = РеквизитыКонтрагента.КПП;
УстановитьАдресаКонтрагента(обКонтрагент, РеквизитыКонтрагента.ЮридическийАдрес);
обКонтрагент.Записать();
Если Сч%50=0 Тогда
ЗафиксироватьТранзакцию();
НачатьТранзакцию();
КонецЕсли;
ЗаполнитьЗначенияСвойств(СтрКонтрагент, обКонтрагент.Ссылка);
СтрКонтрагент.ЮрАдрес = РеквизитыКонтрагента.ЮридическийАдрес.Представление;
СтрКонтрагент.Пометка = Ложь;
КонецЕсли;
КонецЦикла;
ЗафиксироватьТранзакцию();
Время2 = ТекущаяДатаСеанса();
Сообщить(СтрШаблон("Обработка завершена за %1 сек, обработано %2 контрагентов", Строка(Время2-Время1), Строка(Сч)));
Контрагенты.Загрузить(ТЗОбработки);
КонецПроцедуры
Проверено на УТ 11.5.11.70, БП 3.0.152.28, но, понятно, работает с древних релизов. КА2 и ЕРП2 - аналогично.