Имя: Пароль:
1C
1С v8
Конвертация данных. В справочнике базы приемника создавать группы справочника.
,
0 Andrey2C
 
26.02.15
16:33
Задача заключается в следующем. Мне необходимо перекинуть сотрудников из 1С ЗУП в 1С Торговля. Но при получении данных в конфигурации приемника Торговля эти сотрудники должны быть раскиданы по папкам. Если папка уже существует, то закидываем в нее. Если нет создаем новую. Наименование папок это наименования справочника Подразделения организации в базе источника. Версии обеих баз 8.2
Пишу примерно так:

СписокДолжностей = Новый СписокЗначений;
      
       //Управляющий магазином
       Должность = Справочники.ДолжностиОрганизаций.НайтиПоКоду("000000017");
       СписокДолжностей.Добавить(Должность);
       //Заместитель УМ
       Должность = Справочники.ДолжностиОрганизаций.НайтиПоКоду("000000007");
       СписокДолжностей.Добавить(Должность);
       //Продавец универсал
       Должность = Справочники.ДолжностиОрганизаций.НайтиПоКоду("000000038");
       СписокДолжностей.Добавить(Должность);
       //Оператор зала
       Должность = Справочники.ДолжностиОрганизаций.НайтиПоКоду("000000030");
       СписокДолжностей.Добавить(Должность);
       //Товаровед
       Должность = Справочники.ДолжностиОрганизаций.НайтиПоКоду("000000029");
       СписокДолжностей.Добавить(Должность);

Запросы.ЗапросКРегиструСотрудникиОрганизаций.УстановитьПараметр("Сотрудник",Источник.Ссылка);
Запросы.ЗапросКРегиструСотрудникиОрганизаций.УстановитьПараметр("ДатаОкончания",Дата(1,1,1));
Запросы.ЗапросКРегиструСотрудникиОрганизаций.УстановитьПараметр("Должность", СписокДолжностей);
РезультатЗапроса = Запросы.ЗапросКРегиструСотрудникиОрганизаций.Выполнить();
Отбор = РезультатЗапроса.Выгрузить();

             

    Пока Отбор.Следующий() Цикл
    
       табНомер = Отбор.Работник.Код;
       сотрудник = Отбор.Работник.Наименование;
       должность = Отбор.Должность;
       подразделениеГруппа = Отбор.Подразделение.Наименование;
    

    КонецЦикла;
       ВходящиеДанные = СоздатьОбъект("СписокЗначений");
      
            //ВОТ ТУТ НУЖНО ПО ПАПКАМ И РАЗБИТЬ!!!
       ВходящиеДанные.Установить("Должность",должность);
       ВходящиеДанные.Установить("ТабельныйНомер",табНомер);
       ВходящиеДанные.Установить("Наименование",сотрудник);

Помогите, пожалуйста. Как создавать группы и закидывать в них элементы я знаю. А вот как это сделать в базе приемника? Заранее благодарен!
1 kosts
 
26.02.15
16:36
Можно создать новое правило и сопоставить в источнике это справочник подразделения, а в получателе спр сотрудники. Детально настроить, что бы создавалась папка
2 Andrey2C
 
26.02.15
16:44
(1) Ну хорошо допустим папка создалась. Как она поймет какую запись в какую папку пихать то? Мне нужно так: если в ЗУПе человек работает в подразделении 1 то он должен в базе приемнике попасть в папку 1 ну и т.д.
3 welwel
 
26.02.15
16:45
Отдельное Пко для Родитель сделайте
4 Andrey2C
 
26.02.15
16:56
(3) Так я для того и спрашиваю, чтобы разобраться как это сделать! Если можно подробнее опишите пожалуйста.
5 Andrey2C
 
26.02.15
17:08
Подскажите хотя бы какие то примеры или толковую книгу по конвертации где есть подобные примеры.
6 Йохохо
 
26.02.15
17:16
(4) делаешь новое ПКО Номенклатура_Родитель и назначаешь его ПКС Родитель в ПКО Номенклатура
7 Andrey2C
 
26.02.15
17:21
(6) Номенклатура? Я ничего не понял(
8 Йохохо
 
26.02.15
17:25
сотрудники, руки пишут
9 Andrey2C
 
26.02.15
17:30
(8) Куда там чего создавать и каво куда пихать? Я запутался в хлам. У меня 2 справочника. 1. СотрудникиОрганизации ЗУП 2. ФизическиеЛица в Торговле.
10 Alex S D
 
26.02.15
17:37
создать ПКО Для реквизита "Родитель".
Источник - ФизЛицо, приемник  - ФизЛицо
в созданном ПКО будет всего 2 ПКС

Наименование - получать из входящих данных
и прописать в ЭтоГруппа Значение = Истина;

Поиск по ЭтоГруппа и Наименование

Приоритет ПКО поставить ниже чем у ПКО Физлиц чтобы не хватало его по умолчанию
11 Andrey2C
 
02.03.15
10:57
(10) Это мы создали нужные нам группы. А как теперь поместить в них записи? При создании ПКО почему то нет реквизита "Владелец" у справочника ФизЛица приемника.
12 Gbpltw
 
02.03.15
12:10
(11) зато "Родитель" должен быть.