|
Конвертация данных плоский справочник в группы | ☑ | ||
---|---|---|---|---|
0
beaver1971
07.07.15
✎
06:45
|
Конвертация из 7.7 в 8.2
Есть справочник, плоский, без групп... нужно получить в итоге справочник, в котором каждая запись источника преобразуется в группу. В ПКО указано Наименование (перед выгрузкой: Значение = "ГРУППА" + Значение;) и ЭтоГруппа (перед выгрузкой: Значение = 1;). В настройках ПКО включена автоматическая генерация КОДов. Выгрузка происходит, записи создаются, но не группы ((( Подозреваю, что дело в сущей ерунде, но не могу понять - где рыть.... |
|||
1
beaver1971
07.07.15
✎
06:47
|
+ (0) Записи с пустыми значениями получаются....
|
|||
2
Альбатрос
07.07.15
✎
06:47
|
Сделай произвольным алгоритмом + выгрузитьПоПравилу()
|
|||
3
Garykom
гуру
07.07.15
✎
06:48
|
слов нет... интересно как скоро дойдем до того что если нету т/б и бумагомнущей машинки, хотя есть пачка а4 то пользование санузлами невозможно...
|
|||
4
beaver1971
07.07.15
✎
06:50
|
(2) так всё можно сделать произвольными )))) хотелось бы разобраться, тем более в этот справочник потом еще наталкивать инфу буду... Да и ситуаций у меня таких много возникает...
|
|||
5
Альбатрос
07.07.15
✎
07:00
|
(4) Ну так нам отсюда не видать, что у тебя там в ПКС творится
|
|||
6
beaver1971
07.07.15
✎
07:17
|
(5) В ПКО Наименование и ЭтоГруппа, в ПКС_Наименование
Значение = "Группа " + Значение; в ПКС_ЭтоГруппа Значение = 1; Вот только странно, написал в ПКС_Наименование Значение = "Группа " + Значение; Сообщить(Значение); в результате при выгрузке выдает "Группа " и всё ((( |
|||
7
Альбатрос
07.07.15
✎
07:35
|
(6) Сделай скрин развернутый ПКО и ПКС
|
|||
8
zak555
07.07.15
✎
07:45
|
В пкс этогруппа пишем значение = истина
|
|||
9
beaver1971
07.07.15
✎
07:49
|
(8) а в 7.7 как это отработает?
|
|||
10
beaver1971
07.07.15
✎
07:51
|
||||
11
Альбатрос
07.07.15
✎
07:56
|
(10) в обоих ПКС убирай источник, и замени на вот это:
Значение = "Группа " + Источник.Наименование; |
|||
12
beaver1971
07.07.15
✎
08:14
|
(11) Источник.Наименование уже пробовал...
Ошибка исполнения обработчика: ПКС_ПередВыгрузкой_СтатьиЗатратГруппа_Наименование_Свойство1 - Значение не представляет агрегатный объект (Наименование) Но Сообщить(Значение); выдает нужный результат. Но в результате в приемнике не группы... записей на одну больше, чем было. первая запись вообще с пустым названием, в остальных - угловые скобочки (((((( |
|||
13
Tina1977
07.07.15
✎
08:56
|
Проверила.
ПКО "ЭлементыВГруппы". Поля поиска = {Наименование,ЭтоГруппа}. 1.ПКС "Наименование" Источник=Наименование; Приемник = Наименование. Событие "ПередВыгрузкой": Значение = "Группа "+Источник.Наименование; 2.ПКС "ЭтоГруппа" Источник=ЭтоГруппа; Приемник = ЭтоГруппа. Событие "ПередВыгрузкой": Значение = 1; РАБОТАЕТ! |
|||
14
vicof
07.07.15
✎
09:00
|
Значение = "группа "+ источник.наименование
|
|||
15
beaver1971
07.07.15
✎
13:46
|
Заработалооооооооооо....
Где-то что-то понажимал. Удалил ранее созданные, создал заново - заработало..... Как теперь записи источника затолкать в соответствующие группы? Создаем ПКО для приемника с ПКС Наименование и Родитель с получением внешних данных, в существующем ПКО ПриВыгрузке создаем ТаблицаЗначений, в Наименование передаем Источник.Наименование, в Родитель - Источник? Я правильно мыслю или велосипед изобретаю? |
|||
16
Tina1977
07.07.15
✎
14:22
|
Я правильно понимаю, что у тебя один и тот же элемент справочника в приемнике должен стать и группой и элементом этой группы?
|
|||
17
beaver1971
07.07.15
✎
14:31
|
(16) не совсем
Есть Справочник, в нем в некоторых элементах есть тире, в некоторых есть слово "затраты", всё, что после тире и после слово "затраты" убивается, из получившегося создаются группы. Вот в эти группы и нужно "распихать" справочник... Группы создаются "на ура", без дубликатов.... ((( |
|||
18
Tina1977
07.07.15
✎
16:30
|
Создаешь два правила для этого справочника.
Одно для создания групп, другое для элементов. В ПКО, которое для элементов, в ПКС "Родитель" указываешь правило для групп. |
|||
19
beaver1971
07.07.15
✎
18:04
|
(18) и откуда взять ссылку на Родитель? Наименование Родитель я вычисляю, это не проблема. У значения Родитель, полученного от Источника нет значения (исходный справочник плоский, без групп), вернее - оно пустое. Если просто присваиваю в ПКС Родитель
Значение = "Точное название группы"; То, в результате, все значения попадают в одну группу, без названия. Почему не срабатывает поиск по имени - не пойму.... |
|||
20
Poluk
07.07.15
✎
18:34
|
Попробуй родителя определять после загрузки объекта...
|
|||
21
beaver1971
07.07.15
✎
19:20
|
(20) ну так понятно, процедуру не пойму...
Возможно только НайтиПоНаименованию, других параметров то не будет. В принципе, можно передать через "Выражение=", но, по описанию, работает только между восьмерками, а у меня из семерки передача (((( |
|||
22
Tina1977
08.07.15
✎
11:47
|
(19) Событие "ПередВыгрузкой" для "Родитель":
Значение = Источник; ПС:(или Источник.Ссылка) - не помню как правильнее... |
|||
23
Tina1977
08.07.15
✎
11:48
|
+(22): для семерки первый вариант.
|
|||
24
beaver1971
08.07.15
✎
12:59
|
решено так
ПКО Группы Источник: Справочник7 Приемник: Справочник8 ПКО_Группы_ПередВыгрузкойОбъекта: СЗ = СоздатьОбъект("ТаблицаЗначений"); СЗ.НоваяКолонка("Наименование",,,,,); СЗ.НоваяКолонка("Родитель",,,,,); СЗ.НоваяСтрока(); СЗ.Наименование = Источник.Наименование; СЗ.Родитель = Источник; ВыгрузитьПоПравилу(СЗ,,,,"Значения"); ПКС Наименование ПередВыгрузкой: Тут код, который обрезает значения до нужных названий групп ПКС ЭтоГруппа ПередВыгрузкой: Значение = 1; Поиск по наименованию и Группе ПКО Значения Источник: Неопределен Приемник: Справочник8 ПКС Наименование Значение = Источник.Наименование; ПКС Родитель Значение = Источник.Родитель; Поиск по Наименованию и Родителю. У обоих ПКС "Получить из входящих данных", Коды в обоих ПКО автоматические. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |