|
КД Дублируются группы справочников
| ☑ |
0
Dasty
19.09.11
✎
09:02
|
Есть задачка перенести справочники из базы в базу с сохранением иерархии, но с добавлением верхнего родителя "Перенесено из...".
В ПКС Родитель --> Родитель пишу
[code]
Если ЗначениеЗаполнено(Источник.Родитель) Тогда
ИмяПКО = "Номенклатура";
Иначе
Выражение = "Справочники.Номенклатура.НайтиПоНаименованию(""" + Параметры.ИмяВерхнейГруппыСправочников + """)";
КонецЕсли;
[/code]
Поиск стоит не по GUID, а по "Наименование" и "ЭтоГруппа".
Элементы переносятся нормально, а группы при каждом переносе дублируются :(
Подскажите, где ошибка и как победить?
|
|
1
ЧеловекДуши
19.09.11
✎
09:07
|
Искать группы по наименованию и лучше без учета регистра ;)
|
|
2
Dasty
19.09.11
✎
09:11
|
Переносить без поиска "ЭтоГруппа" пробовал - результат тот-же. Регистр роли не играет - переносится/дублируется один в один.
|
|
3
Dasty
19.09.11
✎
09:33
|
UP
|
|
4
SuperMario
19.09.11
✎
09:45
|
Хе. Вчера буквально такую задачу делал.
1. Создал параметр НоменклатураКорень.
2. В обработчике "Перед загрузкой данных"
Параметры.НоменклатураКорень = Справочники.Номенклатура.НайтиПоНаименованию ("##Сп##" , Истина);
Если Параметры.НоменклатураКорень.Пустая () Тогда
КорневаяГруппа = Справочники.Номенклатура.СоздатьГруппу();
КорневаяГруппа.Наименование = "##Сп##";
КорневаяГруппа.Записать();
Параметры.НоменклатураКорень = КорневаяГруппа.Ссылка;
КонецЕсли;
3. В обработчике ПКО номенклатуры "После загрузки"
Если Объект.Уровень() = 0 тогда // все объекты из корня загоним в папку по организациям
Объект.Родитель = Параметры.НоменклатураКорень.Ссылка;
КонецЕсли;
И не в коем не включай поиск в приемнике по родителю = задвоит.
|
|
5
SuperMario
19.09.11
✎
09:55
|
(0) Ээээ. Не совсем то посоветовал. У меня при загрузке в приемник номенклатура падает в одну группу ##Сп## плоским списком.
При выгрузке Отказ = Источник.ЭтоГруппа;
И свойство "Родитель" у номенклатуры я не выгружаю.
:((
|
|