Имя: Пароль:
1C
1С v8
КД группы верхнего уровня слить в одну
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) Ну это бантики.