|   |   | 
| 
 | Конвертация данных, выгрузить по правилу | ☑ | ||
|---|---|---|---|---|
| 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) а в Источнике у тебя точно ссылка, а не объект
 так попробуй ВходящиеДанные.Вставить("Объект",Источник.Ссылка) | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |