Конвертация данных. Как создать единицу измерения #649031


#0 by olo_lo1
Переношу данные по справочнику Номенклатура. Как сделать так, что бы если у номенклатуры не выбрана единица измерения она создавалась автоматом при переносе по владельцу - элементу номенклатуры..
#1 by sanja26
Какая-то определенная что-ли? ПриЗагрузке можно или послеЗагрузки. Объект.ЕдиницаИзмерения = Справочники.ЕдиницыИзмерения.НайтиПоНаименованию Если Единицы измерения подчиненный справочник, а не просто реквизит, то надо каждый раз создавать тут же новую
#2 by olo_lo1
да, подчиненный, каждый раз создавать штуки
#3 by ks_83
Можно после окончательной загрузки по всей загруженной номенклатуре пробежаться и насоздавать эти единицы. Так быстрее работать будет.
#4 by olo_lo1
класс, а можно описать как это сделать
#5 by fenixx
в ПКО справочника "Номенклатура" в обработчике "После загрузки" добавь проверку на существования единицы измерения для Объекта. Если не существует - создаешь
#6 by olo_lo1
я в конвертации не силен, напиши пож пример
#7 by fenixx
Извини, дружище, моё дело - стратегия. Тут объяснения полдня занять могут, в зависимости от твоей не сильности в КД. Ищи где правила конвертации объектов (ПКО), где там соответствующий обработчик. Там хелп есть, посмотри примеры из типовых конвертиций. Успехов )
#8 by vitek89
А они разве не создаются? Там же есть такая штука - поля поиска. Если данные не находятся в приемнике по этим полям, то создается новый элемент
#9 by cw014
Никто ничего просто так писать не будет
#10 by Deamonicus
после загрузки добавляешь:
#11 by olo_lo1
спасибо!
#12 by olo_lo1
КД - вообще крутейшая вещь, интересно кто ее разработал...
#13 by olo_lo1
и придумал
#14 by cw014
Ее никто не разработал. Это инопланетная технология, привезенная на с альфы центавра, и внедренная людьми в черном в массы
#15 by olo_lo1
хотел уточнить - а для чего вот эта последняя строчка
#16 by Redkiy
найдешь обработчик, куда этот код вставить, прочитаешь хэлп по обработчику и все поймешь (надеюсь)
#17 by ДемонМаксвелла
Объект.ЕдиницаИзмерения = НовЕд.Ссылка;
#18 by olo_lo1
Вот что пишет при загрузке .. Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(4842)}: Ошибка записи объекта    Объект                 =  шт    ОписаниеОшибки         =  Метод объекта не обнаружен (Записать)    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(4835)
#19 by hhhh
Если НЕ Объект.ЭтоГруппа Тогда
#20 by olo_lo1
теперь вот это Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1620)}: Ошибка в обработчике события ПослеЗагрузкиОбъекта    ИмяПКО                 =  Номенклатура    Обработчик             =  ПослеЗагрузкиОбъекта    ОписаниеОшибки         =  Ошибка при вызове метода контекста (Записать): Значение поля "Номенклатура" не заполнено или заполнено неверно
#21 by Naumov
Ребята, а не учили перед созданием подчиненных объектов записывать прежде владельца?
#22 by Naumov
вариантов решения этой задачи несколько: 1) после загрузки номенклатуры записывать подчиненный, как тут предлагают. 2) для этапа выгрузки создать ПКО, которое будет подчиненный объект выгружать. При загрузке все самой загрузится.
#23 by olo_lo1
так это же в предопред процедуре ПОСЛЕЗАГРУЗКИОБЪЕКТА прописывается..
#24 by Йохохо
похоже ты упорно пихаешь в Справочник.ЕдиницыИзмерения в ПКО Номенклатура
#25 by olo_lo1
ну да..я не понимаю зачем создавать новый ПКО номенклатура
#26 by Naumov
А описание обработчика почитай, чтобы понять когда он вызывается.
#27 by zladenuw
да и все работает.
#28 by olo_lo1
судя по всему либо у тебя 2 ПКО на номенклатуре либо он находит нужную номенклатуру и к ней уже подтягивает ед изм, иначе работать это не должно..
#29 by Йохохо
эм, всё классно, и код рабочий, и вообще но по и у тебя в ПослеЗагрузкиОбъекта ПКО Номенклатура Объект СправочникОбъект.ЕдиницыИзмерения. я не знаю, как еще пояснить мою догадку, она слишком бредовая
#30 by Naumov
Это почему же не должно?
#31 by olo_lo1
так вы сами себе тогда противоречите в
#32 by olo_lo1
После загрузки Условия возникновения события: Событие выполняется после прочтения и установки атрибутов объекта из файла, но до его записи в информационную базу. Возможна модификация загруженного объекта. Соответственно создаться подчиненный объект по владкльцу как в 27 может только если владелец уже есть в базе. Видимо это работает если он в 22 раза конвертацию делает.
#33 by Naumov
в он записывает номенклатуру (в событии после загрузки( делать это не кто не запрещает)), а потом создает подчиненный элемент. Просто тебе перед применением твоего алгоритма создания элемента нужно просто ставить Объект.Записать
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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