Написал правила обмена для двух баз. Создал свой план обмена. Не загружаются данные в базу приемник
{Обработка.КонвертацияОбъектовИнформационныхБаз.МодульОбъекта(9656)}: Поле объекта не обнаружено (ИспользоватьОтборПоОрганизациям)
ИначеЕсли НЕ ЭтоПараметрДляОбъекта
Лупит такую ошибку. Отбор включал, не помогло. На отладке в обработке отловить не могу.
Может кто сталкивался? Заранее спасибо
Данные выгружаются хорошо из двух баз, а загрузка не идет
По теме из базы знаний
Найденные решения
Вы правила обмена с нуля писали или переработали другие?
У вас в плане обмена есть такой реквизит - ИспользоватьОтборПоОрганизациям?
К примеру, такой реквизит есть в БП3, в плане обмена ОбменУправлениеТорговлей103БухгалтерияПредприятия30
Если вы скопировали правила, а план обмена создали новый - у вас где-то в правилах есть обращение к реквизиту плана обмена, которого нет.
У вас в плане обмена есть такой реквизит - ИспользоватьОтборПоОрганизациям?
К примеру, такой реквизит есть в БП3, в плане обмена ОбменУправлениеТорговлей103БухгалтерияПредприятия30
Если вы скопировали правила, а план обмена создали новый - у вас где-то в правилах есть обращение к реквизиту плана обмена, которого нет.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Вы правила обмена с нуля писали или переработали другие?
У вас в плане обмена есть такой реквизит - ИспользоватьОтборПоОрганизациям?
К примеру, такой реквизит есть в БП3, в плане обмена ОбменУправлениеТорговлей103БухгалтерияПредприятия30
Если вы скопировали правила, а план обмена создали новый - у вас где-то в правилах есть обращение к реквизиту плана обмена, которого нет.
У вас в плане обмена есть такой реквизит - ИспользоватьОтборПоОрганизациям?
К примеру, такой реквизит есть в БП3, в плане обмена ОбменУправлениеТорговлей103БухгалтерияПредприятия30
Если вы скопировали правила, а план обмена создали новый - у вас где-то в правилах есть обращение к реквизиту плана обмена, которого нет.
Посмотрите в конвертации, в обработчике "Перед выгрузкой данных", нет ли обращения к реквизиту плана обмена.
Что-нибудь вроде
Параметры.Вставить("ИспользоватьОтборПоОрганизациям", УзелДляОбмена.ИспользоватьОтборПоОрганизациям);
Надо закомментировать такое.
Что-нибудь вроде
Параметры.Вставить("ИспользоватьОтборПоОрганизациям", УзелДляОбмена.ИспользоватьОтборПоОрганизациям);
Надо закомментировать такое.
Вообще эти обмены какие то замуторные, делаю на 2 базах у себя, всё работает отлично, начинаю переносить в рабочие базы, появляются какие то ошибки
Получается что Источник - Приемник передача не отрабатывает, выгрузка проходит а в источник загружается служебная информация о выгрузке.
Но вот в приемник документы не подгружаются
Но вот в приемник документы не подгружаются
Там если посмотреть код ( у вас наверное такой же):
ИначеЕсли НЕ ЭтоПараметрДляОбъекта
И ((ОбъектНайден И НеЗамещатьСвойство)
ИЛИ (Имя = "ЭтоГруппа")
ИЛИ (Объект[Имя] = NULL)) Тогда
проверяется является ли ИспользоватьОтборПоОрганизациям параметром , а если нет - то ищется такой реквизит у объекта- Объект[Имя]
Надо как-то сделать что-бы ИспользоватьОтборПоОрганизациям определялся как параметр
Попробуйте тогда , наоборот вставить в обработчике "Перед выгрузкой данных" строчку:
Параметры.Вставить("ИспользоватьОтборПоОрганизациям", УзелДляОбмена.ИспользоватьОтборПоОрганизациям);
ИначеЕсли НЕ ЭтоПараметрДляОбъекта
И ((ОбъектНайден И НеЗамещатьСвойство)
ИЛИ (Имя = "ЭтоГруппа")
ИЛИ (Объект[Имя] = NULL)) Тогда
проверяется является ли ИспользоватьОтборПоОрганизациям параметром , а если нет - то ищется такой реквизит у объекта- Объект[Имя]
Надо как-то сделать что-бы ИспользоватьОтборПоОрганизациям определялся как параметр
Попробуйте тогда , наоборот вставить в обработчике "Перед выгрузкой данных" строчку:
Параметры.Вставить("ИспользоватьОтборПоОрганизациям", УзелДляОбмена.ИспользоватьОтборПоОрганизациям);
(13)
Тут у меня все пусто, ничего не писал
Попробуйте, но вряд ли поможет, в правилах регистрации ИспользоватьОтборПоОрганизациям - это свойство плана обмена, а оно у вас есть.
Мне кажется, надо правила конвертации смотреть.
Мне кажется, надо правила конвертации смотреть.
Тут у меня все пусто, ничего не писал
Прикрепленные файлы:
(16) Так как у вас в плане обмена реквизит называется - ИспользоватьОтборПоОрганизациям или ИспользоватьОтборПоОрганизации ?
Может вам заново выгрузить структуру метаданных из вашей конфигурации и загрузить ее в конвертацию?
Может вам заново выгрузить структуру метаданных из вашей конфигурации и загрузить ее в конвертацию?
(13) Похоже проблема было в том что в одной базе я назвал реквизит "ИспользоватьОтборПоОрганизациям" а в приемнике "ИспользоватьОтборПоОрганизациии" и обращался в модуле на узле Корреспондента как "ИспользоватьОтборПоОрганизациям"
Документ перебросился.
Но ещё в правилах регистрации убрал всё что связано с организацией. Но я думаю это не влияло на ошибку.
Спасибо что помогли, хотел ещё узнать не делали ли вы выгрузку отбор только по нужной организации?
Чтобы я выбрал допустим из 4 одну организацию и документы регистрировались только по ней одной и отправлялись
Документ перебросился.
Но ещё в правилах регистрации убрал всё что связано с организацией. Но я думаю это не влияло на ошибку.
Спасибо что помогли, хотел ещё узнать не делали ли вы выгрузку отбор только по нужной организации?
Чтобы я выбрал допустим из 4 одну организацию и документы регистрировались только по ней одной и отправлялись
(25) Вам бы в типовых обменах посмотреть, в той же БП - к примеру, план обмена с ЗУП.
Там помимо реквизита "ИспользоватьОтборПоОрганизациям" в план обмена добавляется еще реквизит Организация. В типовых чаще всего добавляют таб.часть Организации , и в ней реквизит Организация. Потом на форме узла выбирается нужен ли отбор по организации и по какой.
А в конвертации настраиваются ПРО.
Там помимо реквизита "ИспользоватьОтборПоОрганизациям" в план обмена добавляется еще реквизит Организация. В типовых чаще всего добавляют таб.часть Организации , и в ней реквизит Организация. Потом на форме узла выбирается нужен ли отбор по организации и по какой.
А в конвертации настраиваются ПРО.
Прикрепленные файлы:
(26) Потом в обработчике конвертации Перед выгрузкой данных пишем что-нибудь такое :
Параметры.Вставить("ИспользоватьОтборПоОрганизациям", УзелДляОбмена.ИспользоватьОтборПоОрганизациям);
Параметры.Вставить("Организации", УзелДляОбмена.Организации.ВыгрузитьКолонку("Организация"));
А в ПВД объекта в Перед выгрузкой :
Если Параметры.ИспользоватьОтборПоОрганизациям и (ЗначениеЗаполнено(Объект.Организация) и Параметры.Организации.Найти(Объект.Организация) = Неопределено ) Тогда
Отказ = Истина;
КонецЕсли;
Но если регистрацию настроить, то до выгрузки по не нужной организации и дойти не должно.
Параметры.Вставить("ИспользоватьОтборПоОрганизациям", УзелДляОбмена.ИспользоватьОтборПоОрганизациям);
Параметры.Вставить("Организации", УзелДляОбмена.Организации.ВыгрузитьКолонку("Организация"));
А в ПВД объекта в Перед выгрузкой :
Если Параметры.ИспользоватьОтборПоОрганизациям и (ЗначениеЗаполнено(Объект.Организация) и Параметры.Организации.Найти(Объект.Организация) = Неопределено ) Тогда
Отказ = Истина;
КонецЕсли;
Но если регистрацию настроить, то до выгрузки по не нужной организации и дойти не должно.
(14) А вы когда синхронизацию настраивали, указывали отбор по организации? По идее, если обмен идет через план обмена, а не через обработку "Универсальный обмен данными xml" , то документы и регистрироваться к обмену не должны, не то что выгружаться..
(19) Я вам в (20) написала - похоже у вас в правилах регистрации используется реквизит с другим названием, не так как в вашем плане обмена.
Можно попробовать перезагрузить структуру метаданных вашей конфигурации в конвертации, чтобы подтянулись правильные реквизиты плана обмена.
Можно попробовать перезагрузить структуру метаданных вашей конфигурации в конвертации, чтобы подтянулись правильные реквизиты плана обмена.
(23) Вот тут я вам не подскажу, сама не могу до конца с этим разобраться. По идее не нужно.
Я обычно, если исправляю типовой обмен, на стороне где не нужна выгрузка и в ПРО и в ПВД пишу в обработчике "Перед обработкой" Отказ = Истина; Чтобы ничего не регистрировалось к обмену и не выгружалось.
Я обычно, если исправляю типовой обмен, на стороне где не нужна выгрузка и в ПРО и в ПВД пишу в обработчике "Перед обработкой" Отказ = Истина; Чтобы ничего не регистрировалось к обмену и не выгружалось.
(23) Можно включать, и не включать в подписку на регистрацию(тогда пользователь не зарегистирует, а вам через обработку всё-таки можно будет если очень надо).
В приёмнике у вас не зарегистрируется то что пришло из источника , но если у вас в приёмнике 3 узла и более - тот тут надо быть очень внимательным - т.к. пришедшее с обменом может зарегаться на другие узлы если нет правил регистрации
В приёмнике у вас не зарегистрируется то что пришло из источника , но если у вас в приёмнике 3 узла и более - тот тут надо быть очень внимательным - т.к. пришедшее с обменом может зарегаться на другие узлы если нет правил регистрации
(34)
Если выгружаются незарегистрированные - есть вероятность что где-то в правилах есть хитрое место с принудительной выгрузкой типа :
"запрос выбрать все доки - обход выборки с вызовом ВыгрузитьПоПравилу()".
Нет, я регистрацию прошлых отменил,
Если выгружаются незарегистрированные - есть вероятность что где-то в правилах есть хитрое место с принудительной выгрузкой типа :
"запрос выбрать все доки - обход выборки с вызовом ВыгрузитьПоПравилу()".
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот