===== Встраивание подсистемы для интеграции с Horoshop.ua =====
==== Создание резервной копии базы ====
Не игнорируйте данный шаг. Ваш сон станет крепче=)
{{ :1_unf_backup.png?direct&600 |}}
==== Включение возможности редактирования конфигурации ====
Если конфигурация ранее дорабатывалась то сразу переходите к [[#Объединение с конфигурацией модуля “Торговые площадки”|объединению подсистемы с конфигурацией]], так как возможность редактирования уже включена
{{ :2_unf_support_open.png?direct&600 |}}
{{ :3_unf_support_setting.png?direct&600 |}}
Свойство конфигурации “Использовать управляемые формы в обычном приложении”
Флаг “Использовать управляемые формы в обычном приложении” должен быть установлен
{{ ::utp_forms_settings.png?400 |}}
{{ :4_unf_support_question.png?direct&600 |}}
{{ :5_unf_support_rules.png?direct |}}
==== Объединение с конфигурацией модуля “Торговые площадки” ====
{{ :6_unf_integrate_open.png?direct&600 |}}
{{ :7_unf_integrate_question.png?direct&600 |}}
{{ :8_unf_integrate_screen.png?direct&600 |}}
{{ :9_unf_integrate_mark.png?direct&600 |}}
В случае если файл поставки содержит несколько модулей (например Prom.ua и Rozetka.ua) то необходимо отметить все требуемые подсистемы для Вашей КОНФИГУРАЦИИ
{{ :10_unf_integrate_select.png?direct |}}
Убедимся что порядок объектов конфигурации останется прежним
{{ :11_unf_integrate_order.png?direct&600 |}}
В момент необходимо проигнорировать зависимости и нажать кнопку "Продолжить"
{{ :12_unf_integrate_next.png?direct&600 |}}
{{ :13_unf_integrate_rules.png?direct&600 |}}
===== Редактирование документа “Заказ покупателя” =====
==== Добавление новых реквизитов в документ “Заказ покупателя” ====
^ Имя реквизита ^ Синоним ^ Тип ^
| eComm_ИсточникЗаказа | Источник заказа | СправочникСсылка.eComm_УчетныеЗаписи |
| eComm_СостояниеЗаказа | Состояние заказа | СправочникСсылка.eComm_СостоянияЗаказовПокупателей |
Не будем забывать о представлении синонима на разных языках:
{{ :14_unf_edit_order.png?direct&600 |}}
==== Редактирование формы документа “Заказ покупателя” ====
Добавляем на форму элементы с помощью кода в конце процедуры модуля формы “ПередОткрытием”:
//++ ingenum.com.ua / Торговые площадки
eCommСервер.ЗаказПокупателя_ФормаДокумента_ПередОткрытием(ЭтаФорма, Отказ, СтандартнаяОбработка);
//-- ingenum
Добавление метода “СостояниеНачалоВыбора”
//++ ingenum.com.ua / Торговые площадки
Процедура СостояниеНачалоВыбора(Элемент, СтандартнаяОбработка)
//СтандартнаяОбработка = Ложь;
//ОткрытьФорму("Справочник.eComm_СостоянияЗаказовПокупателей.ФормаВыбора", Новый Структура("УчетнаяЗапись, СостояниеЗаказаПокупателя", ДокументОбъект.eComm_ИсточникЗаказа, ДокументОбъект.eComm_СостояниеЗаказа), Элемент);
КонецПроцедуры
//-- ingenum
==== Редактирование формы элемента справочника “Номенклатура” ====
Добавим на Панель страницу "eComm" и табличной поле "ИнтернетТовары" (тип: "ДеревоЗначений", Начальное отображение дерева: "Раскрывать все уровни")
{{ ::utp_goods.png?direct&600 |}}
Колонки табличного поля должны состоять:
^ Имя колонки ^ Текст шапки ^ Тип ^ Отображать иерархию ^
| Владелец | Учетная запись | СправочникСсылка.eComm_УчетныеЗаписи | Истина |
| ХарактеристикаНоменклатуры | Характеристика номенклатуры | СправочникСсылка.ХарактеристикиНоменклатуры | Ложь|
| ИнтернетТовар | Интернет-товар | СправочникСсылка.eComm_ИнтернетТовары | Ложь|
| Код | Коды | Строка(11) | Ложь|
| Категория | Категория | СправочникСсылка.eComm_КатегорииТоваров | Ложь|
| Отключить | Отключено | Булево | Ложь|
В конце обработчика событий формы "ПередОткрытием" размещаем вызов метода:
eCommСервер.ПрочитатьИнтернетТовары(ЭтаФорма); //++ eComm+
Процедура ПрочитатьИнтернетТовары(Форма) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Ссылка КАК Номенклатура,
| ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка) КАК ХарактеристикаНоменклатуры
|ПОМЕСТИТЬ НоменклатураХарактеристика
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| (НЕ Номенклатура.ВестиУчетПоХарактеристикам
| ИЛИ НЕ &ИспользоватьХарактеристики)
| И НЕ Номенклатура.ЭтоГруппа
| И Номенклатура.Ссылка = &Ссылка
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| Номенклатура.Ссылка,
| ЕСТЬNULL(ХарактеристикиНоменклатуры.Ссылка, ЗНАЧЕНИЕ(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка))
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
| ПО Номенклатура.Ссылка = ХарактеристикиНоменклатуры.Владелец
|ГДЕ
| &ИспользоватьХарактеристики
| И Номенклатура.ВестиУчетПоХарактеристикам
| И Номенклатура.Ссылка = &Ссылка
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| НоменклатураХарактеристика.Номенклатура,
| НоменклатураХарактеристика.ХарактеристикаНоменклатуры,
| eComm_УчетныеЗаписи.Ссылка КАК Владелец
|ПОМЕСТИТЬ НоменклатураХаратктеристикаВладелец
|ИЗ
| НоменклатураХарактеристика КАК НоменклатураХарактеристика
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.eComm_УчетныеЗаписи КАК eComm_УчетныеЗаписи
| ПО (ИСТИНА)
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| НоменклатураХаратктеристикаВладелец.Номенклатура,
| НоменклатураХаратктеристикаВладелец.ХарактеристикаНоменклатуры,
| НоменклатураХаратктеристикаВладелец.Владелец КАК Владелец,
| eComm_ИнтернетТовары.Ссылка КАК ИнтернетТовар,
| eComm_ИнтернетТовары.Категория,
| eComm_ИнтернетТовары.Отключить,
| eComm_ИнтернетТовары.Код
|ИЗ
| НоменклатураХаратктеристикаВладелец КАК НоменклатураХаратктеристикаВладелец
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.eComm_ИнтернетТовары КАК eComm_ИнтернетТовары
| ПО НоменклатураХаратктеристикаВладелец.Номенклатура = eComm_ИнтернетТовары.Номенклатура
| И НоменклатураХаратктеристикаВладелец.ХарактеристикаНоменклатуры = eComm_ИнтернетТовары.ХарактеристикаНоменклатуры
| И НоменклатураХаратктеристикаВладелец.Владелец = eComm_ИнтернетТовары.Владелец
|ИТОГИ ПО
| Владелец";
Запрос.УстановитьПараметр("ИспользоватьХарактеристики" , Константы.ИспользоватьХарактеристикиНоменклатуры.Получить());
Запрос.УстановитьПараметр("Ссылка" , Форма.Ссылка);
Форма.ИнтернетТовары = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам);
КонецПроцедуры
Разместим в конце списка методов модуля формы метод "ИнтернетТоварыВыбор" и привяжем его к событию "Выбор" элемента формы "ИнтернетТовары":
Процедура ИнтернетТоварыВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка) //++ eComm+
СтандартнаяОбработка = Ложь;
ТекДанные = ЭлементыФормы.ИнтернетТовары.ТекущиеДанные;
ПараметрыФормы = Новый Структура("Ключ", ТекДанные.ИнтернетТовар);
Если НЕ ЗначениеЗаполнено(ТекДанные.Номенклатура) Тогда
Сообщить("Выберите строку интернет-товара вместо группировки");
Возврат;
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ТекДанные.ИнтернетТовар) Тогда
ПараметрыЗаполнения = Новый Структура("Номенклатура, ХарактеристикаНоменклатуры, Владелец", ТекДанные.Номенклатура, ТекДанные.ХарактеристикаНоменклатуры, ТекДанные.Владелец);
ПараметрыФормы.Вставить("ЗначенияЗаполнения", ПараметрыЗаполнения);
КонецЕсли;
Если НЕ ТекДанные = Неопределено Тогда
ОткрытьФорму("Справочник.eComm_ИнтернетТовары.ФормаОбъекта", ПараметрыФормы, ЭтаФорма);
КонецЕсли;
КонецПроцедуры
==== Редактирование интерфейсов ====
Добавим в интерфейс "Полный" (или какой-либо другой требуемый интерфейс) подменю "eComm" с пунктами:
"Учетные записи" и "Интернет-товары"
{{ :utp_interface1.png?direct&600 |}}
{{ :utp_interface2.png?direct&600 |}}
==== Дополнительно для УПП и УТ-2.3 ====
Если у вас конфигурации "Управление производственным предприятием" или "Управление торговлей 2.3" дополнительно необходимо переназначить имя конфигурации в общем модуле "eCommСерверПереопределяемый"
Функция ИмяКонфигурации(СтандартнаяОбработка) Экспорт
// ДЛЯ УправлениеТорговлейДляУкраины версии 2.3
// НЕОБХОДИМО ПЕРЕОПРЕДЕЛИТЬ ИМЯ КОНФИГУРАЦИИ
// СЛЕДУЮЩИМ КОДОМ (Код раскомментировать):
СтандартнаяОбработка = Ложь;
Возврат "УправлениеТорговымПредприятиемДляУкраины";
КонецФункции