Имя: Пароль:
1C
 
Конвертация данных. Перенос контактной информации контрагентов в табличную часть
,
0 Franklin
 
31.05.16
09:54
Собственно, много вариантов вычитал как это реализовать. Нужна помощь. Получилось вот что.
Скрины здесь:
http://s013.radikal.ru/i323/1605/a7/bde94f5f75cb.jpg
http://s018.radikal.ru/i502/1605/80/20885a050a99.jpg

При выгрузке возникает следующая ошибка:
Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1694)}: Ошибка получения коллекции подчиненных объектов из входящих данных.

Что не так делаю? спасибо.
1 Azmarika
 
31.05.16
09:58
Я вот так делала.
Запрос = Новый Запрос("
|ВЫБРАТЬ
| КонтактнаяИнформация.Объект,
| КонтактнаяИнформация.Тип,
| КонтактнаяИнформация.Вид,
| КонтактнаяИнформация.Представление,
| КонтактнаяИнформация.Поле1,
| КонтактнаяИнформация.Поле2,
| КонтактнаяИнформация.Поле3,
| КонтактнаяИнформация.Поле4,
| КонтактнаяИнформация.Поле5,
| КонтактнаяИнформация.Поле6,
| КонтактнаяИнформация.Поле7,
| КонтактнаяИнформация.Поле8,
| КонтактнаяИнформация.Поле9,
| КонтактнаяИнформация.Поле10,
| КонтактнаяИнформация.Комментарий
|ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
|ГДЕ
| КонтактнаяИнформация.Объект = &Объект");

Запрос.УстановитьПараметр("Объект", Источник);
Выборка = Запрос.Выполнить().Выбрать();
Сообщить(Выборка.Количество());
Пока Выборка.Следующий() Цикл
ВыгрузитьПоПравилу(Выборка, , , , "КонтактнаяИнформация");
КонецЦикла;
2 Franklin
 
31.05.16
10:03
(1) Ну это по сути тоже самое. Тут дело в чем то другом.
3 Azmarika
 
31.05.16
10:07
А что в ПКС для контактной информации?
4 Pro-tone
 
31.05.16
10:10
(0) давай думай - у тебя, видать, стоит в пко регистра Ки получение свойств из входящих данных, но при этом в ПКО ты шлешь выборку источника - то есть не во входящие данные, сними галки в ПКО КИ "получить из входящих данных"
5 azt-yur
 
31.05.16
10:21
Что то вы все перепутали. В заголовке пишите, что КИ грузите в табличную часть, на снимках показываете выгрузку в регистр
6 azt-yur
 
31.05.16
10:22
Вам для правила конвертации группы свойств надо формировать значение КоллекцияОбъектов перед выгрузкой на основании данных регистра
7 Franklin
 
31.05.16
10:23
8 Franklin
 
31.05.16
10:25
(5) где на снимках выгрузка в регистр? там указан приемник Табличная часть
9 Franklin
 
31.05.16
10:28
(4) "стоит в пко регистра Ки получение свойств из входящих данных" - это где у меня такое?
10 azt-yur
 
31.05.16
10:30
(8) ВыгрузитьПоПравилу(Выборка,,,,"КонтактнаяИнформация") - вот это выгрузка не в таб.часть
11 azt-yur
 
31.05.16
10:32
ПередВыгрузкой ПКГС должно быть что то типа:

Запр = Новый Запрос;
Запр.Текст = "ВЫБРАТЬ Разрешенные
             |    КонтактнаяИнформация.*
             |ИЗ
             |    РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
             |ГДЕ
             |    КонтактнаяИнформация.Объект.Ссылка = &Объект";
Запр.УстановитьПараметр("Объект",Источник.Ссылка);

КоллекцияОбъектов = Запр.Выполнить().Выгрузить();
12 azt-yur
 
31.05.16
10:33
(9) на втором снимке сверху
13 Franklin
 
31.05.16
10:40
(12) если Вы имеете  в виду приемник, то контактная информация - это табличная часть.
14 Franklin
 
31.05.16
10:41
(11) сделал так. Ошибка получения коллекции подчиненных объектов из входящих данных.
Ошибка получения коллекции подчиненных объектов из входящих данных
    ПКО                    =  Корреспонденты  (Справочник: Контрагенты)
    ПКГС                   =  17  (--> КонтактнаяИнформация)
    Объект                 =  ФИЗИЧЕСКИЕ ЛИЦА  (Контрагенты)
    ОписаниеОшибки         =  Получение элемента по индексу для значения не определено
    ПозицияМодуля          =  ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(7967)
    КодСообщения           =  66
15 azt-yur
 
31.05.16
10:47
(14) Снимите галку "Получить из входящих данных" у Группы свойств
16 Franklin
 
31.05.16
11:07
(15) Ошибку не выдает. Но в файл не выгружается информация об адресах. Только Контрагент и его свойства.
17 azt-yur
 
31.05.16
11:15
(16) Проверьте в консоли в базе-источнике выдает ли запрос нужные данные. И какие свойства для группы КонтактнаяИнформация у вас настроены для выгрузки?
18 Franklin
 
31.05.16
11:21
(17) В консоле данные выдаются.
Эти свойства имеете ввиду?
http://s019.radikal.ru/i608/1605/5e/f9eff01aea55.jpg
19 azt-yur
 
31.05.16
11:25
(18) да эти. покажи, что в обработчики поместил. Если как в (11) перед выгрузкой, то вроде ошибку должен выдавать, поскольку поля в регистре и таб.части отличаются.
20 Franklin
 
31.05.16
11:31
(19) вот http://s018.radikal.ru/i506/1605/83/340a1005cd95.jpg
а при выгрузке правильно указываю что выгружать?
http://s018.radikal.ru/i502/1605/db/b2a43430af61.jpg
21 azt-yur
 
31.05.16
11:42
(20) код надо было в Перед обработкой вставлять - не правильно я до этого написал.
И в свойствах группы оставь только Тип, Вид и Представление. Остальных полей в регистре нет и на них будет ругаться.
Еще важно правильно сопоставить виды контактной информации
22 Franklin
 
31.05.16
11:49
(21) А как убрать из свойств другие поля? там только пометить на удаление можно.?
23 Franklin
 
31.05.16
11:51
(21) Понял. отключить можно флажком
24 Franklin
 
31.05.16
12:35
(21) Спасибо огромное. Тип, вид и представление выгрузились, в таб.части запросом я их вижу. А на форме нет. Это что-то с сопоставлением видов?
25 azt-yur
 
31.05.16
12:38
(24) ага. вид должен браться из определенной группы для справочника
26 Franklin
 
31.05.16
12:48
(25) Получается что контрагент тянет с собой вид контактной информации которого нет в приемнике и создает его. Мне надо как-то указать определенный вид контактной информации, который уже есть в приемнике. Подскажете как это сделать?
27 azt-yur
 
31.05.16
12:59
(26) Для ПКО видов сделай поиск по наименованию и родителю. Для родителя Перед выгрузкой укажи Значение="СправочникКорреспонденты".

Наименования видов естественно в базах должны совпадать
28 azt-yur
 
31.05.16
13:02
+ (27) если будешь контактную грузить для других справочников, то значение родителя для вида КИ должно быть для каждого справочника свое
29 Franklin
 
31.05.16
13:22
(28) не пойму что здесь написать.
http://s019.radikal.ru/i626/1605/a8/621524597949.jpg
У меня в источнике наименование родителя "Контактная информация справочника "Контрагенты""" А в приемнике мне нужен "Контактная информация справочника "Корреспонденты"
30 azt-yur
 
31.05.16
13:26
(29) Переименуй группу в источнике как в приемнике
31 azt-yur
 
31.05.16
13:27
(30) и отключи для Вида КИ поиск по уникальному идентификатору
32 Franklin
 
31.05.16
13:38
(31) Спасибо. получилось. Хоть начал понимать основы конвертации)
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.