При выгрузке прайса на торговую площадку иногда может потребоваться изменить (переназначить) некоторые поля. Для того чтобы изменить производителя необходимо:
Добавим новый реквизит в справочник «Номенклатура» под именем «eComm_Производитель»
| Имя реквизита | Синоним | Тип |
|---|---|---|
| eComm_Производитель | Производитель (eComm) | СправочникСсылка.Контрагенты |
Вынесем реквизит «eComm_Производитель» на форму элемента «Номенклатура»
Согласно рекомендациям добавим общий модуль "eCommСерверДоработки"
Функция ВернутьИмяРеквизитаОбъекта(ИмяОбъекта, ИмяРеквизита, СтандартнаяОбработка) Экспорт Перем Результат; Если ИмяОбъекта = "Номенклатура" Тогда Если ИмяРеквизита = "Производитель" Тогда СтандартнаяОбработка = Ложь; Результат = "eComm_Производитель"; КонецЕсли; КонецЕсли; Возврат Результат; КонецФункции
Переопределим в общем модуле «eCommСерверПереопределяемый» метод «ВернутьИмяРеквизитаОбъекта»
Функция ВернутьИмяРеквизитаОбъекта(ИмяОбъекта, ИмяРеквизита, СтандартнаяОбработка) Экспорт Возврат eCommСерверДоработки.ВернутьИмяРеквизитаОбъекта(ИмяОбъекта, ИмяРеквизита, СтандартнаяОбработка); КонецФункции
Согласно рекомендациям добавим общий модуль "eCommСерверДоработки"
Добавим в общем модуле «eCommСерверДоработки» метод «ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки»
Процедура ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки(СтруктураНастроек, ТекстЗапроса) Экспорт ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "СпрНоменклатура.Производитель", " ЕСТЬNULL(ТаблицаБренд.Значение, """")"); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "//ДОПОЛНИТЕЛЬНЫЕ СОЕДИНЕНИЯ", " ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК ТаблицаБренд | ПО СпрНоменклатура.Ссылка = ТаблицаБренд.Ссылка | И (ТаблицаБренд.Свойство.Заголовок = ""Бренд"")"); КонецПроцедуры
В общем модуле «eCommСерверПереопределяемый» метод «ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки» приведем к виду:
Процедура ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки(СтруктураНастроек, ТекстЗапроса) Экспорт eCommСерверДоработки.ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки(СтруктураНастроек, ТекстЗапроса); КонецПроцедуры
После данных доработок на форме элемента справочника «Номенклатура» появится новый реквизит «eComm_Производитель», который будет выгружаться на торговую площадку