Обработка заполняет адрес проживания физлица из адреса по прописке в конфигурации "Зарплата и кадры бюджетного учреждения, ред.1.0". Писалось на скорую руку, поэтому не было времени наводить красоту. Кому надо, пользуйтесь на здоровье.
Модуль формы обработки:
Процедура КнопкаВыполнитьНажатие(Кнопка)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КонтактнаяИнформация.Объект КАК Объект,
| КонтактнаяИнформация.Тип,
| КонтактнаяИнформация.Вид,
| КонтактнаяИнформация.Представление,
| КонтактнаяИнформация.Поле1,
| КонтактнаяИнформация.Поле2,
| КонтактнаяИнформация.Поле3,
| КонтактнаяИнформация.Поле4,
| КонтактнаяИнформация.Поле5,
| КонтактнаяИнформация.Поле6,
| КонтактнаяИнформация.Поле7,
| КонтактнаяИнформация.Поле8,
| КонтактнаяИнформация.Поле9,
| КонтактнаяИнформация.Поле10,
| КонтактнаяИнформация.Комментарий,
| КонтактнаяИнформация.ЗначениеПоУмолчанию,
| КонтактнаяИнформация.ТипДома,
| КонтактнаяИнформация.ТипКорпуса,
| КонтактнаяИнформация.ТипКвартиры,
| ВложенныйЗапрос.Объект КАК Объект1,
| ВложенныйЗапрос.Вид КАК Вид1
|ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| КонтактнаяИнформация.Объект КАК Объект,
| КонтактнаяИнформация.Вид КАК Вид
| ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
| ГДЕ
| КонтактнаяИнформация.Вид = &АдресПрожив) КАК ВложенныйЗапрос
| ПО КонтактнаяИнформация.Объект = ВложенныйЗапрос.Объект
|ГДЕ
| КонтактнаяИнформация.Тип = &Тип
| И КонтактнаяИнформация.Вид = &Вид
|
|УПОРЯДОЧИТЬ ПО
| КонтактнаяИнформация.Объект.Наименование";
Запрос.УстановитьПараметр("Тип",Перечисления.ТипыКонтактнойИнформации.Адрес);
Запрос.УстановитьПараметр("Вид",Справочники.ВидыКонтактнойИнформации.ЮрАдресФизЛица); //Адрес по прописке физ. лица
Запрос.УстановитьПараметр("АдресПрожив",Справочники.ВидыКонтактнойИнформации.ФактАдресФизЛица); //Адрес проживания физ. лица
Тз = Запрос.Выполнить().Выгрузить();
Тз.ВыбратьСтроку();
ПП = 0;
Для каждого Стр из Тз Цикл
Состояние(Стр.Объект);
Если ТипЗнч(Стр.Объект) = ТипЗнч(Справочники.ФизическиеЛица.ПустаяСсылка()) Тогда
Если Стр.Объект1 = Null Тогда
ПП = ПП + 1;
Сообщить(Строка(ПП) + ". " + Стр.Объект);
Запись = РегистрыСведений.КонтактнаяИнформация.СоздатьМенеджерЗаписи();
Запись.Объект = Стр.Объект;
Запись.Вид = Справочники.ВидыКонтактнойИнформации.ФактАдресФизЛица;
Запись.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
Запись.Поле1 = Стр.Поле1;
Запись.Поле2 = Стр.Поле2;
Запись.Поле4 = Стр.Поле4;
Запись.Поле6 = Стр.Поле6;
Запись.Поле7 = Стр.Поле7;
Запись.Поле9 = Стр.Поле9;
Запись.Представление = Стр.Представление;
Запись.Записать();
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры