Имя: Пароль:
1C
1С v8
Конвертация данных, выгрузить по правилу
,
0 kolts23381
 
27.12.17
17:20
Выгружаю справочник Сотрудики
При выгрузке такой код
.... Запрос ...
Если Выборка.Следующий() Тогда
Если ЗначениеЗаполнено(Выборка.Телефон) Тогда
ВходящиеДанные = Новый Структура;
ВходящиеДанные.Вставить("Информация",Выборка.Телефон);        ВходящиеДанные.Вставить("Объект",Источник);
ВходящиеДанные.Вставить("Вид","Телефон");             ВыгрузитьПоПравилу(,,ВходящиеДанные,,"КонтактнаяИнформация");    
КонецЕсли;
КонецЕсли;
Контактная информация - регистр сведений, у всех ПКС стоит получить из входящих данных. Поле Объект - составной тип , никак не хочет заполняться, все остальное заполняется. Не запоминать выгружаемые данные галочка стоит. В приемной базе записи создаются, но объект - пустой. В чем может быть загвоздка
1 hhhh
 
27.12.17
17:30
а разве не физическое лицо там должно быть?
2 kolts23381
 
27.12.17
17:32
В Источнике Сотрудники в приемнике физические лица.
3 Вафель
 
27.12.17
17:33
может несколько правил ПКО для данного типа объекта?
4 hhhh
 
27.12.17
17:35
(2) а есть правило Сотрудник - Физлицо ?
5 kolts23381
 
27.12.17
17:39
(4)Да и у него в событии "При выгрузке"  код из (0).
Просто я уже делал тоже самое для справочника "Основные средства" там все один в один(регистр другой).
Указываю для ПКС "объект" правило конвертации, тоже не помогает.
6 kolts23381
 
27.12.17
17:41
То есть "После выгрузки". Но данные попадают. То есть Сообщить(ВходящиеДанные.Объект), в каком либо из событий ПКО "КонтактнаяИнформация" отрабатывает. Конвертация не происходит. Не понимаю всю цепочку.
7 Вафель
 
27.12.17
17:45
может ПослеВыгрузки нужно?
8 kolts23381
 
27.12.17
17:50
У ПКО "КонтактнаяИнформация" в ПКС "Объект" (будь он не ладен)
в событии "При выгрузке" Сообщить(ВходящиеДанные.Значение); - выдает сообщение.
В событии "После выгрузки" Сообщить(ВходящиеДанные.Значение); - НЕ выдает сообщение.
9 kolts23381
 
27.12.17
17:51
Извиняюсь - Сообщить(Значение)
10 mistеr
 
27.12.17
19:11
Если это типовая КонтактнаяИнформация, то там несколько другая структура.

И для поля Объект ПКО указано?
11 mistеr
 
27.12.17
19:12
(5) При выгрузке - это значит до записи физлица в файл. Значит при загрузке КИ ссылки на объект еще нет, вот и не заполняется. Связанную информацию нужно выгружать в обработчике После выгрузки в файл.
12 kolts23381
 
27.12.17
21:50
В событии "После выгрузки" ПКО ФизическиеЛица код из (0). Просто я неправильно написал. В (8) написано что с помощью сообщить я вижу что данные доходят, но не конвертируются. Пробовал писать ИмяПКО = "ФизическиеЛица" не помогает.
Другие ПКС отрабатывают нормально. Там их еще 2.
13 kolts23381
 
28.12.17
13:21
В общем создал для сотрудников новое ПКО указал его в ПКС и теперь все выгружается. Пока не понял почему так.
14 azt-yur
 
28.12.17
13:28
(13) а в Источнике у тебя точно ссылка, а не объект
так попробуй ВходящиеДанные.Вставить("Объект",Источник.Ссылка)
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.