В начало

Перенос иерархического справочника в неиерархический

 

            В исходной базе есть иерархический справочник «ДолжностиСИерархией», который нужно перенести в неиерархический справочник «Должности» в БАЗУ-ПРИЕМНИК, но при этом максимально сохранить, содержащуюся в нём информацию, в частности о группах, как ни странно. Для этого будем писать группу в скобочках после должности. На выходе должен получиться одноуровневый/плоский справочник без каких-либо групп.

Рис. Справочник «Должности» в БАЗЕ-ИСТОЧНИКЕ

 

            Переходим в конфигурацию «Конвертация данных», создаем новое ПКО «ДолжностиИерНеиер». Единственное что, так это надо удвоить размер поля «Наименование» в справочнике «Должности», что БАЗЕ-ПРИЕМНИКЕ, т.к. мы будем в скобочках писать после должности отдел, в котором эта самая должность находится.

Рис. ПКО «ДолжностиИерНеиер»

 

            В этом ПКО, переходим в обработчик «Перед выгрузкой»  и прописываем отбой, на тот случай, если вместо элемента справочника «ДолжностиСИерархией» попадётся группа.

Рис. ПКО «ДолжностиИерНеиер», обработчик событий «Перед выгрузкой»

 

            Также добавляем код в ПКС «Наименование», как показано ниже.

Рис. ПКС «Наименование», обработчик «Перед выгрузкой»

 

            Далее создаём ПВД «ДолжностиИерНеиер», которая приведена на рисунке ниже.

Рис. ПВД «ДолжностиИерНеиер»

 

            Затем сохраняем правила обмена в файл.

            Открываем БАЗУ-ИСТОЧНИК, выгружаем данные в другой файл.

            Идём в БАЗУ-ПРИЕМНИК и загружаем данные из БАЗЫ-ИСТОЧНИКА.

            И наконец, проверяем результат, а именно смотрим неиерархический справочник «Должности».

Рис. Фрагмент неиерархического справочника «Должности»

в БАЗЕ-ПРИЕМНИКЕ

 

 

            Отдельно болтающихся групп вроде не видно, в скобочках в наименовании должности указана группа из которой была перенесена должность. Группы – это отделы организации.

            Таким образом, мы перенесли иерархический справочник «ДолжностиСИерархией» из БАЗЫ-ИСТОЧНИКА в неиерархический справочник «Должности», находящийся в БАЗЕ-ПРИЕМНИКЕ.