Конвертация данных. Поставление значения в базе-приемнике. #765677


#0 by breakthrough
Здравствуйте. При конвертации необходимо, чтобы в базе-приемнике у перегруженных объектов проставлялась организация, которой нет в базе-источнике. Сделал ПКО для поиска по ИНН и КПП и проставил его для свойства организация в другом. Загвоздка в том, что если мы не заполняем это свойство совсем, то возникает ошибка во время выгрузки. Но к сожалению, не всегда есть возможность заполнить это свойство даже "левой" организацией из базы-источника. Пробовал заполнять свойство объекта в обработчике для ПКО "после загрузки"  результат никакой. Тем более что выгружаю регистры и проставлять организацию в каждой записи. Подскажите решение. Заранее спасибо!
#1 by Spieluhr
Передавать в Параметры каждого объекта ИНН и КПП искомой организации. Искать ПослеЗагрузки по Параметры.ИНН + Параметры.КПП
#2 by mikecool
послезагрузки найти организацию и прописать
#3 by breakthrough
Сейчас так и сделано. Параметры заполнены. Делаю запросом поиск по справочнику и заполняю объект: Все равно пусто.
#4 by Alex S D
"Но к сожалению, не всегда есть возможность заполнить это свойство даже "левой" организацией из базы-источника." А что в этом случае должно заполниться?
#5 by Alex S D
ты же в параметры передаешь что-то. не понимаю ..
#6 by los_hooliganos
Давай код из ПКО И вопрос: ПКО на реквизит или на весь объект?
#7 by breakthrough
Ну, я имею в виду, если использовать для свойства "Организация" отдельное ПКО, где идет поиск по двум полям вида Для ПКС ИНН: Значение = Параметры.ИНН; Для ПКС КПП: Значение = Параметры.КПП_Головная;
#8 by los_hooliganos
При выгрузки ставь пустую ссылку на Организацию
#9 by los_hooliganos
Што ето за изврат?
#10 by breakthrough
Пробовал. Пустая ссылка не канает. Пардоньте, о каком изврате идете речь? Вполне нормальное решение явно указать значения свойств, тем более они не ссылочного типа и по ним двум осуществляется поиск объекта. "Поиск по ссылке" разумеется выключен.
#11 by Ma3eIIa
#12 by breakthrough
Спасибо. Читал и то и другое. Там не совсем про это.
#13 by Ma3eIIa
Почему же ? после загрузки берешь свой параметр организация и поиск в приемнике. Разве не то ?
#14 by Ma3eIIa
делаешь алгоритм. и просто делаешь его вызов. где тебе нужно поменять организацию. все.
#15 by Spieluhr
Объект.Организация = ВыборкаДетальныеЗаписи.Ссылка
#16 by breakthrough
Все верно. Я так и делаю. Но в результате получаю незаполненный реквизит. Вот и пытаюсь понять что я делаю не так.
#17 by Ma3eIIa
Точно в обработчике после загрузки ?
#18 by breakthrough
Да, так и есть. Я просто скинул код из ПКО для Организаций. Спасибо.
#19 by breakthrough
Клянусь)
#20 by Ma3eIIa
Вообще не где или только в регистре пусто ?
#21 by breakthrough
Ладно, понимаю, что где-то тупанул. Буду разбираться. Всем большое спасибо! Просто еще трудность в том, что если заполнять не одиночный объект, а я получаю данные из ПВД как ВходящиеДанные и загружаю их в регистр через Документ "Перенос данных", то как поставлять значение свойства для записей регистра?
#22 by Ma3eIIa
#23 by Ma3eIIa
правило создай отдельное. где источник пуст. тогда будет коллекция. если он указан будет 1 обхект
#24 by Ma3eIIa
я вечером залезу к клиенту гляну правила которые делал. у меня обмен не с типовой базой. что то вроде этого делал. напишу сюда
#25 by breakthrough
Спасибо! Буду очень признателен.
#26 by Boroda
В передаваемые параметры не те же что параметры объекта. К параметрам объекта необходимо обращаться через "ПараметрыОбъекта".
#27 by breakthrough
Ну это я знаю. Вопрос, зачем мне обращаться к ПараметрамОбъекта? Я использую глобальные параметры конвертации.
#28 by NicolayNN
В обработчике "После загрузки" подставлять нужное значение, типа Объект.Организация = Справочники.Организации.НайтиПоРеквизиту("ИНН","4217137777"); Не подходит?
#29 by breakthrough
Подходит. Но почему-то не срабатывает. Вот почему не могу понять.
#30 by NicolayNN
Может не то ПКО срабатывает
#31 by Alex S D
Настало время открыть для себя отладку обработчиков
#32 by breakthrough
И вправду.
#33 by Boroda
Как вариант: Создай правило, например "ОрганизацияПоУмолчанию". Поля поиска ИНН и КПП. Для ИНН и КПП пропиши явные значения организации по умолчанию: типа: Значение = "0002223330"; И при выгрузке, если организация не задана меняй имя правила ИмяПКО = "ОрганизацияПоУмолчанию";
#34 by breakthrough
Обработчик: "ПослеЗагрузкиПравилОбмена": Отладка обработчика "После загрузки правил обмена" не поддерживается.
#35 by breakthrough
Спасибо. Дело в том, что сейчас так и сделано. Но когда организация не указана, то все равно реквизит не заполняется.
#36 by Ma3eIIa
может у тебя какой то обработчик подключен. и поэтому твоя организация затирается.
#37 by breakthrough
ХЗ. Уже мозг сломал. Сложные правила все работают, а такое простое, но важное нет.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям