Если необходимо конвертировать значения справочника в значения регистра или выгрузить сопутствующую информацию (например, для справочника Физические лица перенести паспортные данные физлиц и их ФИО с историей).
Примеры кода:
// Выгрузка присоединенных файлов физлиц
Запрос = Новый Запрос("
|ВЫБРАТЬ
| ФизическиеЛицаПрисоединенныеФайлы.Ссылка
|ИЗ
| Справочник.ФизическиеЛицаПрисоединенныеФайлы КАК ФизическиеЛицаПрисоединенныеФайлы
|ГДЕ
| ФизическиеЛицаПрисоединенныеФайлы.ВладелецФайла = &ВладелецФайла
| И ФизическиеЛицаПрисоединенныеФайлы.ПометкаУдаления = ЛОЖЬ
|
|УПОРЯДОЧИТЬ ПО
| ФизическиеЛицаПрисоединенныеФайлы.ВладелецФайла"
);
Запрос.УстановитьПараметр("ВладелецФайла", Источник.Ссылка);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ВыгрузитьПоПравилу(Выборка.Ссылка,,,,"ХранилищеДополнительнойИнформации");
КонецЦикла;
// Выгрузка паспортных данных
Запрос = Новый Запрос("
|ВЫБРАТЬ
| ДокументыФизическихЛиц.Период,
| ДокументыФизическихЛиц.Физлицо,
| ДокументыФизическихЛиц.ВидДокумента,
| ДокументыФизическихЛиц.Серия,
| ДокументыФизическихЛиц.Номер,
| ДокументыФизическихЛиц.ДатаВыдачи,
| ДокументыФизическихЛиц.СрокДействия,
| ДокументыФизическихЛиц.КемВыдан,
| ДокументыФизическихЛиц.КодПодразделения,
| ДокументыФизическихЛиц.ЯвляетсяДокументомУдостоверяющимЛичность,
| ДокументыФизическихЛиц.Представление
|ИЗ
| РегистрСведений.ДокументыФизическихЛиц КАК ДокументыФизическихЛиц
|ГДЕ
| ДокументыФизическихЛиц.Физлицо = &Физлицо"
);
Запрос.УстановитьПараметр("ФизЛицо", Источник.Ссылка);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
// ВыгрузитьПоПравилу(Выборка,,,,"ПаспортныеДанныеФизЛиц");
Отбор = Новый ТаблицаЗначений;
Отбор.Колонки.Добавить("Имя");
Отбор.Колонки.Добавить("Значение");
Отбор.Колонки.Добавить("Использование");
СтрокаОтбора = Отбор.Добавить();
СтрокаОтбора.Имя = "ФизЛицо";
СтрокаОтбора.Значение = Выборка.ФизическоеЛицо;
СтрокаОтбора.Использование = Истина;
СтрокаОтбора = Отбор.Добавить();
СтрокаОтбора.Имя = "ВидДокумента";
СтрокаОтбора.Значение = Выборка.ВидДокумента;
СтрокаОтбора.Использование = Истина;
Строки = Новый ТаблицаЗначений;
Строки.Колонки.Добавить("Период");
Строки.Колонки.Добавить("Физлицо");
Строки.Колонки.Добавить("ВидДокумента");
Строки.Колонки.Добавить("Серия");
Строки.Колонки.Добавить("Номер");
Строки.Колонки.Добавить("ДатаВыдачи");
Строки.Колонки.Добавить("СрокДействия");
Строки.Колонки.Добавить("КемВыдан");
Строки.Колонки.Добавить("КодПодразделения");
Строки.Колонки.Добавить("ЯвляетсяДокументомУдостоверяющимЛичность");
Строки.Колонки.Добавить("Представление");
Строка = Строки.Добавить();
ЗаполнитьЗначенияСвойств(Строка, Выборка);
НаборЗаписей = Новый Структура("Отбор, Строки");
НаборЗаписей.Отбор = Отбор;
НаборЗаписей.Строки = Строки;
ВыгрузитьРегистр(НаборЗаписей, , , , "ПаспортныеДанныеФизЛиц");
КонецЦикла;
// Выгрузка ФИО физических лиц
Запрос = Новый Запрос("
|ВЫБРАТЬ
| ФИОФизЛиц.Период,
| ФИОФизЛиц.ФизическоеЛицо,
| ФИОФизЛиц.Фамилия,
| ФИОФизЛиц.Имя,
| ФИОФизЛиц.Отчество
|ИЗ
| РегистрСведений.ФИОФизическихЛиц КАК ФИОФизЛиц
|ГДЕ
| ФИОФизЛиц.ФизическоеЛицо = &ФизЛицо"
);
Запрос.УстановитьПараметр("ФизЛицо", Источник.Ссылка);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
// ВыгрузитьПоПравилу(Выборка,,,,"ФИОФизЛиц");
Отбор = Новый ТаблицаЗначений;
Отбор.Колонки.Добавить("Имя");
Отбор.Колонки.Добавить("Значение");
Отбор.Колонки.Добавить("Использование");
СтрокаОтбора = Отбор.Добавить();
СтрокаОтбора.Имя = "ФизическоеЛицо";
СтрокаОтбора.Значение = Выборка.ФизическоеЛицо;
СтрокаОтбора.Использование = Истина;
Строки = Новый ТаблицаЗначений;
Строки.Колонки.Добавить("ФизическоеЛицо");
Строки.Колонки.Добавить("Имя");
Строки.Колонки.Добавить("Отчество");
Строки.Колонки.Добавить("Фамилия");
Строки.Колонки.Добавить("Период");
Строка = Строки.Добавить();
ЗаполнитьЗначенияСвойств(Строка, Выборка);
НаборЗаписей = Новый Структура("Отбор, Строки");
НаборЗаписей.Отбор = Отбор;
НаборЗаписей.Строки = Строки;
ВыгрузитьРегистр(НаборЗаписей, , , , "ФИОФизЛиц");
КонецЦикла;
А также можете посмотреть пример конвертации данных из справочника в регистр:
Отбор = Новый ТаблицаЗначений;
Отбор.Колонки.Добавить("Имя");
Отбор.Колонки.Добавить("Значение");
Отбор.Колонки.Добавить("Использование");
СтрокаОтбора = Отбор.Добавить();
СтрокаОтбора.Имя = "СтруктурнаяЕдиница";
СтрокаОтбора.Значение = Объект.Владелец;
СтрокаОтбора.Использование = Истина;
СтрокаОтбора = Отбор.Добавить();
СтрокаОтбора.Имя = "ОтветственноеЛицо";
СтрокаОтбора.Значение = Объект.ОтветственноеЛицо;
СтрокаОтбора.Использование = Истина;
Строки = Новый ТаблицаЗначений;
Строки.Колонки.Добавить("Активность");
Строки.Колонки.Добавить("Ссылка");
Строки.Колонки.Добавить("Период");
Строки.Колонки.Добавить("СтруктурнаяЕдиница");
Строки.Колонки.Добавить("ОтветственноеЛицо");
Строки.Колонки.Добавить("Должность");
Строки.Колонки.Добавить("ФизическоеЛицо");
Строка = Строки.Добавить();
ЗаполнитьЗначенияСвойств(Строка, Объект);
Строка.Период = Объект.ДатаНачала;
Строка.СтруктурнаяЕдиница = Объект.Владелец;
Строка.Активность = Истина;
НаборЗаписей = Новый Структура("Отбор, Строки");
НаборЗаписей.Отбор = Отбор;
НаборЗаписей.Строки = Строки;
ВыгрузитьРегистр(НаборЗаписей, , , , "ОтветственныеЛицаОрганизаций");
В последнем примере в конфигурации-источнике данные - это справочник. А в приемнике - регистр сведений. Правила - из ПВД, "Перед выгрузкой".
А в первом примере указаны правила из ПКО, "После конвертации". Это сделано для того, чтобы для тех физлиц, которые только что выгружены, была перенесена доп. информация.