|
КД группы верхнего уровня слить в одну |
☑ |
0
woland
11.08.15
✎
11:00
|
Переношу данные из 77 в 8.2
Справочник вида:
2009
Группа1
Группа2
2010
Группа1
Группа2
должен превратиться в справочник:
Выручка
Группа1
Группа2
а получается
Выручка
Группа1
Группа1
Группа2
Группа2
Поиск идет по полям "Наименование, Родитель, ЭтоГруппа". В ПКС Наименования пишу
Если ПустоеЗначение(Источник.Родитель) = 1 Тогда
Значение = "Выручка";
КонецЕсли;
Причем внутри групп ниже верхнего уровня все переносится нормально.
Подскажите что я делаю не так?
|
|
1
woland
11.08.15
✎
11:02
|
Не получилось изобразить правильно иерархию. Пробелы стерлись.
Группа1 и группа 2 находятся в группе 2009. А так же в группе 2010 есть группа1 и группа2.
|
|
2
Chikko
11.08.15
✎
11:02
|
Поиск идет по полям "Наименование, Родитель, ЭтоГруппа"
Родитель убери.
|
|
3
butterbean
11.08.15
✎
11:03
|
код покажи
|
|
4
woland
11.08.15
✎
11:04
|
(2) Если родителя убераю, все группы переносятся в верхний уровень.
|
|
5
woland
11.08.15
✎
11:04
|
(3) Код чего?
|
|
6
Chikko
11.08.15
✎
11:05
|
(4) должен превратиться в справочник:
Выручка
Группа1
Группа2
а это что?
|
|
7
woland
11.08.15
✎
11:05
|
(4) убираю* (из поиска убираю)
|
|
8
woland
11.08.15
✎
11:06
|
(6) Группа1 и Группа2 находятся в группе Выручка
|
|
9
Naumov
11.08.15
✎
11:07
|
(8) Сделай проще. верхний уровень не выгружай, а в событии после загрузки, если родитель пустой, то подставляй группу, которую найдешь по наименованию, коду, возьмешь из константы, в общем как угодно.
|
|
10
woland
11.08.15
✎
11:08
|
А получается, что группы задваиваются в группе "Выручка". Как буд-то поиск не работает.
|
|
11
woland
11.08.15
✎
11:08
|
(9) сейчас попробую
|
|
12
woland
11.08.15
✎
11:38
|
(9) Почему-то через обработчик "При загрузке" эти группы не проходят.
|
|
13
Naumov
11.08.15
✎
11:39
|
(12) Не при загрузке, а после загрузки.
|
|
14
woland
11.08.15
✎
11:39
|
(9) хотя в журнале регистрации их добавление есть
|
|
15
Naumov
11.08.15
✎
11:45
|
(14) так. еще раз идея:
в ПКО в событии
ПередВыгрузкой мы пишем:
Если не значениеЗаполнено(Источник.Родитель) тогда
отказ = истина;
конецЕсли;
Чтобы группа верхнего уровня просто не выгружалась вообще.
в событии После загрузки пишем что-то типа:
Если не ЗначениеЗаполнено(Объект.Родитель) тогда
ТопГруппа = Справочники.<мой справочник>.НайтиПоНаименованию("Выручка");
Объект.Родитель = ТопГруппа;
конецЕсли;
|
|
16
woland
11.08.15
✎
11:46
|
(15) Урааа, получилось.
Naumov огромный респект.
|
|
17
Chikko
11.08.15
✎
12:00
|
(15) получается элементы из корня тоже выгружены не будут. проверку на группу еще.
|
|
18
Naumov
11.08.15
✎
12:39
|
(17) Ну это бантики.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший