Как автоматически отключать выгрузку определенных заказов

Материал из Umicms
Перейти к:навигация, поиск

Актуально для версии 2.9.6

Задача

Как известно, любой оформленный заказа сразу получает галочку "Выгружать заказ в 1С при следующем сеансе связи". Если Вы хотите, чтобы заказы с определенным типом оплаты или доставки, а также заказы с определенным статусом на выгружались, то необходимо производить кастомизации.

Решение

Есть два способа повлиять на выгрузку заказов - использовать событийную модель или кастомизировать xslt шаблон выгрузки. Далее будет рассмотрено по примеру каждого способа.

Решение через обработчик события

Допустим, Вы хотите, чтобы после того, как Ваш менеджер проставил заказу статус "отклонен" или "Отменен", у заказа автоматически отключалась галочка "Выгружать заказ в 1С при следующем сеансе связи" и в 1С он не попадал.

Решать задачу будем с помощью обработчика события systemModifyObject, обратите внимание, что при изменении статуса через административную панель срабатывает именно это событие, а не события модуля emarket.

Сначала дадим возможность управлять "выгружаемостью" заказов по статусам заказа.

Для этого зайдем в тип данных "Статус заказа" и добавим новое поле:

Add status field.png

Потом зайдем в тип данных "Статус заказа", как в справочник, и проставим галочки:

Use checkbox.png