Изменение родителя в справочнике - странная проблема

1. GlebHappy 117 27.06.16 05:48 Сейчас в теме
Всем доброго утра)

Наткнулся на странную проблему.
Имеется задача: выгрузить иерархический справочник из одной базы в другую, притом чтобы иерархия из базы-источника в базе-приемнике попала в определенную группу.
Для примера:
Вот как это выглядит в базе-источнике:

А вот что нужно получить в базе-приемнике:


Чтобы добиться этого замечательного результата, я сделал следующее:
1. Добавил в правила параметр ГруппаКонтрагентов, с типом СправочникСсылка.Контрагенты; естественно, предварительно данную пустую группу в базе-источнике я создал
2. Для правила конвертации справочника Контрагенты я правило конвертации свойства Родитель оформил вот так:


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

Пробуем выгрузить данными правилами из базы-источника, смотрим файл выгрузки, вроде как всё правильно:
	<Объект Нпп="3" Тип="СправочникСсылка.Контрагенты" ИмяПравила="Контрагенты">
		<Ссылка Нпп="3">
			<Свойство Имя="{УникальныйИдентификатор}" Тип="Строка">
				<Значение>97b9d466-3bc3-11e6-b6aa-000c29c56c01</Значение>
			</Свойство>
		</Ссылка>
		<Свойство Имя="Наименование" Тип="Строка">
			<Значение>Контрагенты ВСОШ</Значение>
		</Свойство>
		<Свойство Имя="Родитель" Тип="СправочникСсылка.Контрагенты">
			<Пусто/>
		</Свойство>
		<Свойство Имя="ЭтоГруппа" Тип="Булево">
			<Значение>true</Значение>
		</Свойство>
		...
		<Свойство Имя="ПометкаУдаления" Тип="Булево">
			<Значение>false</Значение>
		</Свойство>
		<ТабличнаяЧасть Имя="КППИстория"/>
	</Объект>
	<Объект Нпп="2" Тип="СправочникСсылка.Контрагенты" ИмяПравила="Контрагенты">
		<Ссылка Нпп="2">
			<Свойство Имя="{УникальныйИдентификатор}" Тип="Строка">
				<Значение>8a88de7d-3c09-11e6-b6aa-000c29c56c01</Значение>
			</Свойство>
		</Ссылка>
		<Свойство Имя="Наименование" Тип="Строка">
			<Значение>Сотрудники</Значение>
		</Свойство>
		<Свойство Имя="Родитель" Тип="СправочникСсылка.Контрагенты">
			<Ссылка Нпп="3">
				<Свойство Имя="{УникальныйИдентификатор}" Тип="Строка">
					<Значение>97b9d466-3bc3-11e6-b6aa-000c29c56c01</Значение>
				</Свойство>
			</Ссылка>
		</Свойство>
		<Свойство Имя="ЭтоГруппа" Тип="Булево">
			<Значение>true</Значение>
		</Свойство>
		...
		<Свойство Имя="ПометкаУдаления" Тип="Булево">
			<Значение>false</Значение>
		</Свойство>
		<ТабличнаяЧасть Имя="КППИстория"/>
	</Объект>
	<Объект Нпп="1" Тип="СправочникСсылка.Контрагенты" ИмяПравила="Контрагенты">
		<Ссылка Нпп="1">
			<Свойство Имя="{УникальныйИдентификатор}" Тип="Строка">
				<Значение>9a00f792-3c09-11e6-b6aa-000c29c56c01</Значение>
			</Свойство>
		</Ссылка>
		<Свойство Имя="Наименование" Тип="Строка">
			<Значение>Рачинская Ирина Владимировна</Значение>
		</Свойство>
		<Свойство Имя="Родитель" Тип="СправочникСсылка.Контрагенты">
			<Ссылка Нпп="2">
				<Свойство Имя="{УникальныйИдентификатор}" Тип="Строка">
					<Значение>8a88de7d-3c09-11e6-b6aa-000c29c56c01</Значение>
				</Свойство>
			</Ссылка>
		</Свойство>
		<Свойство Имя="ЭтоГруппа" Тип="Булево">
			<Значение>false</Значение>
		</Свойство>
		...
		<Свойство Имя="ПометкаУдаления" Тип="Булево">
			<Значение>false</Значение>
		</Свойство>
		<ТабличнаяЧасть Имя="КППИстория"/>
		...
	</Объект>
Показать


Все выгрузилось вроде как я и планировал, и наша группа из параметра встала на вершине иерархии.
Для справки прикладываю во вложении сами правила и файл с выгрузкой.

Загрузка происходит без проблем.
Но обнаруживается неприятный момент - наша самая верхняя группа, которая выгрузилась благодаря обработчику, по какой-то причине загрузилась с признаком ЭтаГруппа = Ложь, при этом в справочнике автоматически скрылась вся иерархия, для которой эта группа является родителем:


Люди добрые, где я накосячил?) Почему вторая группа из файла грузится как группа, ведь в файле обмена они одинаковые как яйца)
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. karpik666 3940 27.06.16 06:46 Сейчас в теме
(1) GlebHappy, у вас правилах обмена должна стоять галка в колонке "поля поиска" для поля "этоГруппа", вроде из-за этого обычно такая ситуация происходит.
config; GlebHappy; +2 Ответить
3. GlebHappy 117 27.06.16 07:09 Сейчас в теме
(2) karpik666, спасибо за наводку, сейчас проверю) не так часто с КД сталкиваюсь)
4. GlebHappy 117 27.06.16 07:18 Сейчас в теме
(2) karpik666, ГЕНИАЛЬНО!!!! Сработало! Мой день спасен!)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот