|   |   | 
| 
 | Замена Справочника при выгрузке данных | ☑ | ||
|---|---|---|---|---|
| 0
    
        Amfiaray 29.02.20✎ 20:01 | 
        Добрый день!
 Перенос кадровых документов из 1С ЗУП 2.5 для Казахстана в 1С КУФИБ 3 Конфигурации сильно отличаются между собой по метаданным, сделал правила для переноса документов "Прием на работу". В ПВД для "Прием на работу" написал правило для выгрузки только нужных документов. В ПКО справочника "Физические лица" написал в обработчике "Перед выгрузкой" заполнение ТЗ со структурой как в справочнике приемнике и присвоил "ИсходящиеДанные = Моя ТЗ". При выгрузке данных выходит ошибка Ошибка при выгрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1593)}: Ошибка получения свойства объекта из входящих данных ПКО = ФизическиеЛица (Справочник: Физические лица) ПКС = 1 (--> Код) Объект = Конирбаев Бисен Аманышович (Физические лица) СвойствоПриемника = Код (Строка) ОписаниеОшибки = Получение элемента по индексу для значения не определено ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8202) КодСообщения = 68 Подскажите в чем ошибка? С конвертацией данных работаю первый раз, так что сильно не пинайте ) | |||
| 1
    
        RomanYS 29.02.20✎ 20:14 | 
        почитай описание обработчиков. Навскидку вот это выглядит подозрительно:
 "В ПКО справочника "Физические лица" написал в обработчике "Перед выгрузкой" заполнение ТЗ со структурой как в справочнике приемнике и присвоил "ИсходящиеДанные = Моя ТЗ"." ПКО по идее для одного объекта, ТЗ быть не должно | |||
| 2
    
        Amfiaray 29.02.20✎ 20:16 | 
        (1) ИсходящиеДанные - Произвольный - произвольные вспомогательные данные. Данные передаются по следующим правилам:
 1. ПВД.ИсходящиеДанные -> ПКО.ВходящиеДанные 2. ПКО.ВходящиеДанные -> ПКС.ВходящиеДанные 3. ПКС.ИсходящиеДанные -> ПКО.ВходящиеДанные а в каком виде передать? сейчас попробую структурой. | |||
| 3
    
        welwel 29.02.20✎ 20:20 | 
        заполнение ТЗ
 По логике в ПВД должно быть А в ПКО может вообще достаточно реквизиты источника и приемника сопоставить и без кода обойтись | |||
| 4
    
        welwel 29.02.20✎ 20:22 | 
        ИсходящиеДанные/Входящиеданные немного для другого нужны: передавать поля, которые не сопоставить     | |||
| 5
    
        welwel 29.02.20✎ 20:25 | 
        В ПВД ПередОбработкой определить КоллекцияОбьектов, как массив ссылок справочника источника
 (2) | |||
| 6
    
        Amfiaray 29.02.20✎ 20:26 | 
        (3) не получается сопоставить, в приемнике полей больше чем в источнике, в источнике эти данные хранятся в регистрах сведений     | |||
| 7
    
        Amfiaray 29.02.20✎ 20:26 | 
        (4) Ну вот у меня они и не сопоставились     | |||
| 8
    
        welwel 29.02.20✎ 20:31 | 
        (6) можно все тогда поля приемника в пко указать Получить из входящих данных
 В пвд передобработкой отказ=истина и свой алгоритм с обходом выборки и выгрузитьпоправилу, где как ИсходящиеДанные передается структура, которая будет Входящиеданные для пко | |||
| 9
    
        welwel 29.02.20✎ 20:32 | 
        Пример в справке по обработчикам в кд2     | |||
| 10
    
        welwel 29.02.20✎ 20:36 | 
        Здесь вроде разжевано ещё 
 http://catalog.mista.ru/public/1195038/ | |||
| 11
    
        Amfiaray 29.02.20✎ 20:36 | 
        (8) В ПВД для справочника? Если для справочника. то как определить ссылка на какой элемент выгружается? ведь справочник выгружается по ссылке     | |||
| 12
    
        welwel 29.02.20✎ 20:42 | 
        (11) да
 Если справочник выгружается по ссылке, например, как реквизит документа, то исходящиеданные определяются/заполняются/передаются в передвыгрузкой пкс реквизита пко этого документа | |||
| 13
    
        welwel 29.02.20✎ 20:46 | 
        К книге Бояркин Филатов Конвертация данных
 демобаза есть, емнип там можно подглядеть еще по этой теме | |||
| 14
    
        Amfiaray 29.02.20✎ 20:50 | 
        (13) Спасибо, буду разбираться     | |||
| 15
    
        welwel 29.02.20✎ 20:51 | 
        Вообще с нуля писать такое - занятие неблагодарное. Возможно есть правила переноса либо из нужного источника во что-то, либо в нужный приёмник из чего-то. Последнее полезнее: можно увидеть необходимые для заполнения поля и обработчики послезагрузки.
 Либо курить правила для похожего приемника. | |||
| 16
    
        welwel 29.02.20✎ 20:55 | 
        Есть ещё в кд2 кнопка полезная "Скопировать с заменой конвертации", которая копирует пко из одной конвертации в другую - так можно "надергать" из образца в свою конвертацию нужные пко для своего переноса. Обе конвертации должны быть в одной базе кд2.     | |||
| 17
    
        welwel 29.02.20✎ 20:59 | 
        + (16) и останется лишь подправить пкс, обработчики.     | |||
| 18
    
        welwel 29.02.20✎ 21:02 | 
        И при ошибках на кофейной гуще не гадать, а сразу использовать режим отладки и в отладчик. Прямо начиная с ВыгрузитьПоПравилу - код там достаточно понятный.     | |||
| 19
    
        Amfiaray 29.02.20✎ 21:29 | 
        Не смог найти правила для КУФИБа     | |||
| 20
    
        Amfiaray 29.02.20✎ 21:29 | 
        не так часто его у нас внедряют и используют     | |||
| 21
    
        welwel 29.02.20✎ 21:55 | 
        Возможно, есть правила для типового 1С ЗУП для Казахстана. Макет правил обычно в конфигурации.     | |||
| 22
    
        welwel 29.02.20✎ 22:01 | 
        (11) если выгружается выборка документов, то можно в пвд определить структуру исходящиеданные со всеми данными физлиц - она будет доступна и в пкс, как Входящиеданные - в ней можно найти данные для нужного физлица и передать уже через исходящиеданные в пко физлица     | |||
| 23
    
        welwel 29.02.20✎ 22:08 | 
        (22) передать уже через исходящиеданные в пко физлица
 В обработчике передвыгрузкой соотв-го пкс | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |