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