eComm+

Модулі для BAS / 1С* - розроблено в Україні!

Инструменты пользователя

Инструменты сайта


example_edit_brand

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
example_edit_brand [2020/12/02 15:28]
webmaster создано
example_edit_brand [2021/07/19 17:21] (текущий)
webmaster [Добавление общего модуля "eCommСерверДоработки"]
Строка 1: Строка 1:
 ==== Пример переназначения реквизита "Бренд" ==== ==== Пример переназначения реквизита "Бренд" ====
 +
 +При выгрузке прайса на торговую площадку иногда может потребоваться изменить (переназначить) некоторые поля.
 +Для того чтобы изменить производителя необходимо:
 +
 +
 +
 +====== Вариант с использованием нового реквизита ======
 +===== Редактирование справочника "Номенклатура" =====
 +==== Добавление реквизита "eComm_Производитель" ====
 +Добавим новый реквизит в справочник "Номенклатура" под именем "eComm_Производитель"
 +^ Имя реквизита      ^ Синоним                  ^ Тип          ^
 +| eComm_Производитель    | Производитель (eComm) | СправочникСсылка.Контрагенты        |
 +
 +
 +==== Редактирование формы элемента справочника "Номенклатура" ====
 +Вынесем реквизит "eComm_Производитель" на форму элемента "Номенклатура" 
 +
 +===== Добавление общего модуля "eCommСерверДоработки" =====
 +
 +Согласно рекомендациям добавим общий модуль [[module_edit|"eCommСерверДоработки"]]
 +
 +==== Добавим в общем модуле "eCommСерверДоработки" метод "ВернутьИмяРеквизитаОбъекта" ====
 +<code>
 +Функция ВернутьИмяРеквизитаОбъекта(ИмяОбъекта, ИмяРеквизита, СтандартнаяОбработка) Экспорт
 +
 + Перем Результат;
 +
 + Если ИмяОбъекта = "Номенклатура" Тогда 
 +
 + Если ИмяРеквизита = "Производитель" Тогда 
 +
 + СтандартнаяОбработка = Ложь;
 +
 + Результат = "eComm_Производитель";
 +
 + КонецЕсли;
 +
 + КонецЕсли;
 +
 + Возврат Результат;
 +
 +КонецФункции
 +</code>
 +
 +===== Редактирование общего модуля "eCommСерверПереопределяемый" =====
 +Переопределим в общем модуле "eCommСерверПереопределяемый" метод "ВернутьИмяРеквизитаОбъекта"
 +<code>
 +Функция ВернутьИмяРеквизитаОбъекта(ИмяОбъекта, ИмяРеквизита, СтандартнаяОбработка) Экспорт
 +
 + Возврат eCommСерверДоработки.ВернутьИмяРеквизитаОбъекта(ИмяОбъекта, ИмяРеквизита, СтандартнаяОбработка);
 +
 +КонецФункции
 +</code>
 +
 +
 +
 +
 +====== Вариант с использованием дополнительного реквизита ======
 +===== Добавление общего модуля "eCommСерверДоработки" =====
 +
 +Согласно рекомендациям добавим общий модуль [[module_edit|"eCommСерверДоработки"]]
 +
 +Добавим в общем модуле "eCommСерверДоработки" метод "ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки" 
 +<note>В тексте запроса вместо заголовка "Бренд" используйте заголовок свойства вашей базы</note>
 +<code>
 +Процедура ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки(СтруктураНастроек, ТекстЗапроса) Экспорт
 +
 +
 + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "СпрНоменклатура.Производитель", " ЕСТЬNULL(ТаблицаБренд.Значение, """")");
 +
 + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "//ДОПОЛНИТЕЛЬНЫЕ СОЕДИНЕНИЯ", " ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК ТаблицаБренд
 + | ПО СпрНоменклатура.Ссылка = ТаблицаБренд.Ссылка
 + | И (ТаблицаБренд.Свойство.Заголовок = ""Бренд"")");
 +
 +КонецПроцедуры
 +</code>
 +
 +===== Редактирование общего модуля "eCommСерверПереопределяемый" =====
 +В общем модуле "eCommСерверПереопределяемый" метод "ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки" приведем к виду:
 +<code>
 +Процедура ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки(СтруктураНастроек, ТекстЗапроса) Экспорт
 +
 + eCommСерверДоработки.ПередУстановкойТекстаЗапросаИнициализацииДанныхВыгрузки(СтруктураНастроек, ТекстЗапроса);
 +
 +КонецПроцедуры
 +</code>
 +
 +
 +После данных доработок на форме элемента справочника "Номенклатура" появится новый реквизит "eComm_Производитель", который будет выгружаться на торговую площадку
 +
example_edit_brand.1606915694.txt.gz · Последнее изменение: 2022/02/24 03:40 (внешнее изменение)