Конвертация 2.1 - перекачка одного справочника в два, один из них подчинённый третьему
В обеих конфигурациях версии 8.3 есть справочник "Номенклатура". В обеих конфигурациях у неё есть реквизит "БазоваяЕдиницаИзмерения" типа "СправочникСсылка.КлассификаторЕдиницИзмерения".
Также в приёмнике есть реквизит "ЕдиницаХраненияОстатков" типа "СправочникСсылка.ЕдиницыИзмерения", который подчинён справочнику "Номенклатура". В свою очередь, в справочнике "ЕдиницыИзмерения" есть реквизит "ЕдиницаПоКлассификатору" типа "СправочникСсылка.КлассификаторЕдиницИзмерения" (как в источнике).
Требуется перебросить справочник "Номенклатура" с переносом реквизита "БазоваяЕдиницаИзмерения" в 2 справочника - "КлассификаторЕдиницИзмерения" и "ЕдиницыИзмерения". Кроме того, в справочнике "ЕдиницыИзмерения" надо проставить:
1) реквизит "ЕдиницаПоКлассификатору" из реквизита "БазоваяЕдиницаИзмерения" справочник "Номенклатура" источника;
2) реквизит "Коэффициент" жёстко равен 1
Делаю "по писаному" (см. вложение), в результате имею ошибку:
Отладчик показывает, что почему-то не заполняются ВходящиеДанные, хотя в ПКО "Номенклатура" для ПКС "БазоваяЕдиницаИзмерения -> ЕдиницаХраненияОстатков" (внизу в группе) написано
и прописано правило конвертации "ЕдиницыИзмерения".
Что я делаю не так?
Также в приёмнике есть реквизит "ЕдиницаХраненияОстатков" типа "СправочникСсылка.ЕдиницыИзмерения", который подчинён справочнику "Номенклатура". В свою очередь, в справочнике "ЕдиницыИзмерения" есть реквизит "ЕдиницаПоКлассификатору" типа "СправочникСсылка.КлассификаторЕдиницИзмерения" (как в источнике).
Требуется перебросить справочник "Номенклатура" с переносом реквизита "БазоваяЕдиницаИзмерения" в 2 справочника - "КлассификаторЕдиницИзмерения" и "ЕдиницыИзмерения". Кроме того, в справочнике "ЕдиницыИзмерения" надо проставить:
1) реквизит "ЕдиницаПоКлассификатору" из реквизита "БазоваяЕдиницаИзмерения" справочник "Номенклатура" источника;
2) реквизит "Коэффициент" жёстко равен 1
Делаю "по писаному" (см. вложение), в результате имею ошибку:
Ошибка получения свойства объекта из входящих данных
ПКО = ЕдиницыИзмерения (Справочник: Классификатор единиц измерения)
ПКС = 4 (--> Владелец)
Объект = кг (Классификатор единиц измерения)
СвойствоПриемника = Владелец (СправочникСсылка.Номенклатура)
ОписаниеОшибки = Получение элемента по индексу для значения не определено
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8286)
КодСообщения = 68
ПоказатьОтладчик показывает, что почему-то не заполняются ВходящиеДанные, хотя в ПКО "Номенклатура" для ПКС "БазоваяЕдиницаИзмерения -> ЕдиницаХраненияОстатков" (внизу в группе) написано
ИсходящиеДанные = Новый Соответствие;
ИсходящиеДанные.Вставить("Владелец", Источник);
и прописано правило конвертации "ЕдиницыИзмерения".
Что я делаю не так?
Прикрепленные файлы:
Нужные куски баз и XML.zip
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(6) Вот держи файл правил, все работает.
Только ВидНоменклатуры и ТипНоменклатуры настрой
Только ВидНоменклатуры и ТипНоменклатуры настрой
Прикрепленные файлы:
ПравилаОбменаДанными_1.xml
Для услуг создаются единицы измерения, хотя не должны.
Что-то я не понимаю :(((((
А почему в ПКО "ЕдиницыИзмерения" из источника заполняется не "ЕдиницаПоКлассификатору", а "Наименование", хотя поиск идёт по единице? (И, тем не менее, всё работает)
И почему для наименования указан и источник "БазоваяЕдиницаИзмерения" и событие?
(Я убрал источник "БазоваяЕдиницаИзмерения" - всё равно работает)
И как взаимодействуют ПКО "Номенклатура" и ПКО "ЕдиницыИзмерения"?
В ПКО "Номенклатура" в ПКС "ЕдиницаХраненияОстатков" программный код
передаёт Номенклатуру в ПКО "ЕдиницыИзмерения" или наоборот записывает в поле "ЕдиницаХраненияОстатков" то, что вернуло ПКО "ЕдиницыИзмерения"?
И как в ПКО "ЕдиницыИзмерения" попадает Номенклатура в Источник? Через имя правила в ПКО "Номенклатура" в ПКС "ЕдиницаХраненияОстатков"?
Что-то я не понимаю :(((((
А почему в ПКО "ЕдиницыИзмерения" из источника заполняется не "ЕдиницаПоКлассификатору", а "Наименование", хотя поиск идёт по единице? (И, тем не менее, всё работает)
И почему для наименования указан и источник "БазоваяЕдиницаИзмерения" и событие?
Значение = Источник.БазоваяЕдиницаИзмерения.Наименование;
(Я убрал источник "БазоваяЕдиницаИзмерения" - всё равно работает)
И как взаимодействуют ПКО "Номенклатура" и ПКО "ЕдиницыИзмерения"?
В ПКО "Номенклатура" в ПКС "ЕдиницаХраненияОстатков" программный код
Значение = Источник;
передаёт Номенклатуру в ПКО "ЕдиницыИзмерения" или наоборот записывает в поле "ЕдиницаХраненияОстатков" то, что вернуло ПКО "ЕдиницыИзмерения"?
И как в ПКО "ЕдиницыИзмерения" попадает Номенклатура в Источник? Через имя правила в ПКО "Номенклатура" в ПКС "ЕдиницаХраненияОстатков"?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот