КД: не работают правила при обмене через план обмена #793185


#0 by ultrannge89
Добрый день. Проблема в следующем. Была задачка сделать выгрузку 200 документов Заказ клиента из УТ 11.2 в Документ Реализация товаров и услуг в БП 2.0 Для разработки я использовал КД. Правила сделал, при выгрузки данных при помощи обработки V8Exchan82. Данные выгружаются и загружаются. Создаются документы Реаализации, по ссылке выгружаются все нужные справочники. Такие как Контрагент, ДоговорКонтрагента, Номенклатура и тд. Затем мне сказали что надо бы организовать онлайн обмен, например каждый час. Настроил план обмена через ftp. Создал правила регистрации, которые при проведении или отмене проведения, ставят на регистрации документ Заказ клиента и все справочники по ссылке. Но при этом обмен у меня не хочет происходить, при загрузке данных в приемник (бп 2.0) создается документ, а ссылочные данные имеют вид Объект не найден. Если не сложно, не могли бы вы подсказать в чем дело? Куда копать? Просто это мои первые правила обмена, самостоятельно настаиваемые. Не понимаю, для плана обмена значит надо как то по-особенному делать правила, не так как для обработки...
#1 by Фрэнки
для начала - в КД 2 правила создавал или в КД 3 ? Просто для правил конвертации объектов гораздо удобней и чаще рекомендуют использование именно КД2. Как это прикручивать в УТ 11.2 я еще не попробовал, но скорей всего проблема, что версию правил надо было взять другую, если одна из конфигураций, условно говоря, со старым БСП, а другая - с новым БСП.
#2 by Фрэнки
и перечитал твое описание и обратил внимание на такой момент: когда используют внешнюю обработку для выполнения обмена, то в ней на выгрузку по ссылочной информации часто руками настройку указывают и не заморачиваются. Если же в конвертации правила указываешь, то там надо все целиком прокликать один раз, чтоб все нужные ПКО (правила конвертации объектов) были установлены. Это в КД2 есть. Там дальше много нюансов, но просто выгружать все ссылки - это не трудно.
#3 by ultrannge89
Конвертация данных, редакция 2.1 (2.1.8.2)
#4 by ultrannge89
Я в обработке ничего вручную не указываю, выбираю правила, она сама исходя из правил ставит объекты на выгрузку, в ПВД у меня только документ Заказ клиента
#5 by ultrannge89
Пробовал в правилах добавить ПВД для объектов которые не выгружаются, но это не помогло...
#6 by ultrannge89
У документа реализация товаров и услуг в обработчике после загрузки, я вручную пере заполняю некоторые поля. Помимо этого, все остальные данные у меня интерактивными средствами настроены.
#7 by ultrannge89
, не совсем понял что ты имеешь ввиду, какую версию правил? Я создал чистые правила, сначала загрузил структуру метаданных источника и приемника в кд, затем настроил соответствие объектов источника и приемника, переопределил некоторые реквизиты в обработчике после загрузки документа релизация товаров. Просто у меня вызывает недоумение, что при обмене через обработку V8Exchan82 все отлично выгружается и документ проводится. А при обмене через план обмена с теми же правилами ссылочные данные не попадают в документ и он не проводится, для отладки я закомментирвал код проведения в обработчике после загрузки. Данные загрузились, но у документов вместо ссылочных реквизитов типа ДоговораКонтрагента, Контрагента и Номенклатуры ОбъектНеНайден...
#8 by Фрэнки
УТ 11 по умолчанию хочет видеть только правила регистрации данных, которые заточены в КД 3 Поскольку в тексте топика сразу не было указано, какой версией конвертации пользуешься, я высказал предположение, что правила одной версии используются там, где нужны правила другой версии.
#9 by mexanik_96
1.поставить авторегистрацию в плане обмена у тех метаданных которые нужны в источнике 2.поставить запретить в регистрации в плане обмена и написать правила регистрации 3. в правилах обмена добавить выгружатьобъект = истина там где у тебя объект не найден.
#10 by ultrannge89
У этой УТ есть еще один план обмена с другим узлом, правила для него писались тоже на КД 2, так что я думаю дело тут не в версии кд
#11 by mexanik_96
(для тех кто ничего не понял) в правилах выгрузитьобъект = истина будет самым простым и дешевым вариантов. выгрузитьобъект = истина в ПКО в обработке перед выгрузкой того поля (например договор в реализации или че там у тебя)
#12 by ultrannge89
Ок, попробую сделать так.
#13 by mexanik_96
попробуй сначала
#14 by ultrannge89
Вот же странно... До этого не было такой ошибки, что-то я видимо перемудрил в правилах. {Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(8867)}: Ошибка при вызове метода контекста (УстановитьНовыйНомер)             Объект.УстановитьНовыйНомер; по причине: Ошибка при выполнении обработчика - 'ПриУстановкеНовогоНомера' по причине: {ОбщийМодуль.ОбщегоНазначения.Модуль(6079)}: Ошибка при получении значения атрибута контекста (Префикс)             Объект.УстановитьНовыйНомер; по причине: В данной транзакции уже происходили ошибки!
#15 by ultrannge89
, в любом случае спасибо, первая зацепка. Я до этого 2 дня мучался, пытаясь выгрузить...
#16 by ultrannge89
Не помогло, как выясняется, ошибка эта возникает из-за того что при выгрузке документа справочник организация тоже не выгрузился, а в коде программа пытается обратиться к данным ДокументОбъект.Организация.Префикс а это пустая ссылка...
#17 by mexanik_96
ну почему организация пустая ссылка?
#18 by ultrannge89
Отладчиком смотрю, пишет ошибка получения представления
#19 by Быдло замкадное
Регистрировать надо не только документ но и все ссылочные типы в нем! Договора, контрагенты, номенклатура и т.д.
#20 by Быдло замкадное
правила выгрузки делать, в т.ч. на перечисления
#21 by ultrannge89
Да итак, когда я перепровожу документ, а затем в обработке регистрацияизменений смотрю, у меня на регистрацию помимо документа встают все ссылочные данные: организация, контрагент, дог контрагента, номенклатура. Может у документа в событии перед выгрузкой использовать метод ВыгрузитьПоПравилу и указывать каждый ссылочный реквизит???
#22 by ultrannge89
Ошибка эта выходит в обработке КонвертацияОбъектовИнформационныхБаз на строке Объект.УстановитьНовыйНомер; В отладчике Объект это еще не записанный документ Реализация товаров и услуг. Ссылки нет, представления соответственно тоже. Ошибка при вызове метода контекста (УстановитьНовыйНомер)
#23 by ultrannge89
Документ этот у меня должен генерировать новый номер. Временно уберу...
#24 by mexanik_96
автор ты явно что то не то делаешь. давай начнем сначала. в пвд для реал там что?
#25 by mexanik_96
далее в пко для реал что?
#26 by ultrannge89
В ПВД у меня Спр Организация, Номенклатура, Контрагент, ДоговорКонтрагента. Док ЗаказКлиента. В ПКО Док.ЗаказКлиента и спр.Организация, Номенклатура, Контрагент, ФизическиеЛица,Склады,ДоговорыКонтрагентов. перечисления... и рс.СоответствияОбъектовИБ
#27 by ultrannge89
Щас выложу правила
#28 by ultrannge89
#29 by mexanik_96
а че у тебя пвд реал нет? так и должно быть? типа потом ссылкой догоним?
#30 by mexanik_96
а понял заказ в реал...
#31 by mexanik_96
посмотри
#32 by mexanik_96
и генерировать новый номер, код кд сама может поставь там галку в пко
#33 by ultrannge89
Я ставил, но у меня ошибка во время загрузки возникала, поэтому временно убрал
#34 by ultrannge89
Вообще странно через план обмена они не работают, а через обработку v8ecxhange82 все  ок...
#35 by mexanik_96
помог нет так и не понял?
#36 by ultrannge89
Неа((
#37 by ultrannge89
Ладно, в любом случае  спасибо, буду дальше разбираться
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С