RetailCRM

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

Если у вас уже есть интеграция, то сначала напишите в службу поддержки, для активации нового режима для вашего аккаунта.

Введение

Триггер - это событие, при наступлении которого, срабатывает другое событие.

Пример триггера: Каждый месяц 1-го числа у вас списывается абонентская плата за интернет. В таком примере, триггер "настал 1-ый день месяца" - это событие, при наступлении которого срабатывает другое событие "списание абонентской платы"

В реалиях RetailCRM, предусмотрены 2 триггера:

  • 1) Триггер "отправка заказа в КС2008", при наступлении события "Смена статуса заказа на "Отправлен в КС2008"".
  • То есть, когда вы меняете статус заказу, то срабатывает триггер "отправка заказа в КС2008" и заказ уходит в систему КС2008.
  • 2) Триггер "отмена заказа в КС2008", при наступлении события "Смена типа доставки у заказа".
  • То есть, когда вы меняете Тип заказа с нашей доставки на доставку, например, в Почту России, то мы отменяем ваш заказ в нашей системе (если он туда передавался и имеет статус "Новый" или "Ожидает синхронизации").


Триггер “Отмена заказа при смене Типа доставки”

рис.1 Типы доставок

1.Для начала потребуется найти и сопоставить пары: символьный код Типа доставки - API ключ


2.Идем в настройки Типов доставок: Настройки (1) -> Справочники (2) -> Типы доставок (3) (рис.1 Типы доставок).


3.Находим нужные нам доставки (или доставку). На примере мы видим 2 Типа доставок:

Доставка межгород, символьный код outcity

Доставка по городу, символьный код incity

Запишем эти значения.

рис.2 Тип доставки город
рис.3 Тип доставки межгород


4.Создаем тестовые заказы на каждый Тип доставки.

У нас в примере 2 доставки, поэтому создадим 2 тестовых заказа, обязательно выбирая тариф.

Создав 2 заказа, обязательно выбирая тариф, мы видим следующее (рис.2 и рис.3 Два типа доставок город и межгород).

Таким образом получаем, что:

Доставка межгород, символьный код outcity, API ключ: WZHjxt5hsxxxxxxxxxxxxxxxxxxxxxxx

Доставка по городу, символьный код incity, API ключ: fVJ4dO1h8xxxxxxxxxxxxxxxxxxxxxxx

Пары символьный код Типа доставки - API ключ нужно записать. Текстовые наименования Типа доставки нам больше НЕ нужны.


5.Теперь, имея сопоставленные пары символьный код Типа доставки - API ключ, мы можем создать сам триггер:

рис.4 Настройки Триггеров
рис.5 Кнопка "Добавить"
рис.6 Поле "Название"
рис.7 Поле "Условие применения триггера"

Идем в настройки Триггеров: Настройки (1) -> Коммуникации (2) -> Триггеры (3) (рис.4 Настройки Триггеров)


6.Жмем “Добавить” (рис.5 Кнопка "Добавить")

В появившемся окне нужно заполнить и настроить несколько полей:

1.Поле "Название" (рис.6 Поле "Название")

2.Поле "Условие применения триггера" (рис.7 Поле "Условие применения триггера"):

Вбиваем скрипт:

changeSet.hasChangedField("delivery_type") and changeSet.getOldValue("delivery_type").getCode() in ["outcity","incity"]
рис.8 выбор меню "Добавить действие"

Где:

  • значения "outcity","incity" - это символьные коды Типа доставки.
  • Если у вас будет 1 Тип доставки, то нужно вписать в таком виде: ["incity”] вместо ["outcity","incity"]

3.Далее нужно нажать Добавить действие (1) -> Выполнить HTTP-запрос (2) (рис.8 выбор меню "Добавить действие"), чтобы появились дополнительные поля настроек (рис.9 Дополнительные поля настроек).


4.В поле "Адрес" прописываем адрес: https://home.courierexe.ru/retail/cancel

рис.9 Дополнительные поля настроек


5.В списке "HTTP метод" выбираем "POST".


6.В списке "Передавать параметры" выбираем "В теле запроса (urlencode)" Получим пример заполнения, как на (рис.9 Дополнительные поля настроек).


7.Жмите кнопку "Добавить" параметр 2 раза.


8.Теперь снова жмите кнопку "Добавить параметр" столько раз, сколько у вас было сопоставленных пар символьный код Типа доставки - API ключ.

рис.10 Добавление параметров


В нашем случае было 2 пары, поэтому мы опять нажмем 2 раза. Итого у нас будет 4 нажатия и мы увидим следующее (рис.10 Добавление параметров).

9.Теперь нам нужно эти поля заполнить следующими данными:

рис.11 Заполнили параметры данными
Параметр Значение
id
{{ order.getNumber() }}
code
{{ changeSet.getOldValue("delivery_type").getCode() }}
символьный код Типа доставки из 1-ой пары сопоставлений API ключ из 1-ой пары сопоставлений
символьный код Типа доставки из 2-ой пары сопоставлений API ключ из 2-ой пары сопоставлений


По итогу мы получим следующее (см. рис.11 Заполнили параметры данными).

Обратите внимание, что ВО ВСЕХ СЛУЧАЯХ ДАННЫЕ ЗАПИСАНЫ В ОДНОЙ СТРОКЕ, ПЕРЕНОСОВ СТРОК БЫТЬ НЕ ДОЛЖНО!


10.Последнее действие - нажатие кнопки "Сохранить". Настройка триггера завершена.


Если у вас уже есть интеграция, то сначала напишите в службу поддержки, для активации нового режима для вашего аккаунта.

Триггер “Передача заказа при смене Статуса заказа”

рис.1 Настройки
рис.2 Кнопка "Добавить"
рис.3 Настройки полей статуса
рис.4 настройки Типов доставок
рис.5 Тип доставки город
рис.6 Тип доставки межгород

1.Для начала нужно создать Статус заказа (или статусы, если вам нужно передавать заказы при двух или более статусах) Заходим в настройки (рис.1).


2.Кнопка "Добавить" (рис.2).


3.Указываем поля "Название", "Символьный код", "Группа".

"Символьный код" необходимо записать, так как он понадобится в дальнейшем!

Символьный код желательно вбивать латинскими буквами и цифрами, без пробелов, например "ks2008send" (рис.3).


4.Следующим шагом потребуется найти и сопоставить пары символьный код Типа доставки - API ключ.


5.Переходим в настройки Типов доставок: "Настройки" (1) -> "Справочники" (2) -> "Типы доставок" (3) (рис. 4).


6.Находим нужные нам доставки (или доставку). На примере выше мы видим 2 Типа доставок:

"Доставка межгород", символьный код outcity

"Доставка по городу", символьный код incity

Запишем эти значения.


7.Создаем тестовые заказы на каждый Тип доставки. У нас в примере 2 доставки, поэтому создадим 2 тестовых заказа, обязательно выбирая тариф.

Создав 2 заказа, обязательно выбирая тариф, мы видим следующее (рис.5 и рис.6).


Таким образом получаем, что:

Доставка межгород, символьный код outcity, API ключ WZHjxt5hsSgfxxxxxxxxxxxxxxxxxxxx

Доставка по городу, символьный код incity, API ключ fVJ4dO1h8uQoxxxxxxxxxxxxxxxxxxxx

рис.7 Настройки
рис.8 Кнопка "Добавить"
рис.9 Поле "Название триггера"
рис.10 Скрипт применения триггера

Пары символьный код Типа доставки - API ключ нужно записать. Текстовые наименования Типа доставки нам больше НЕ нужны.


8.Теперь, имея символьный код Статуса заказа (или статусов, если вам нужно передавать заказы при двух и более статусах) и сопоставленные пары символьный код Типа доставки - API ключ, мы можем создать сам триггер:

Переходим в настройки Триггеров: "Настройки" (1) -> "Коммуникации" (2) -> "Триггеры" (3) (рис.7).


9.Кнопка "Добавить" (рис.8).

В появившемся окне нужно заполнить и настроить несколько полей:

1.Поле "Название" (рис.9).

2.В поле "Условие применения триггера" добавляем скрипт (рис.10):

order.getStatus().getCode()  in ["ks2008send"] and order.getDeliveryType().getCode() in ["outcity","incity"]
рис.11 выбор меню "Добавить действие"
рис.12 Дополнительные поля настроек

Где:

  • '"ks2008send"' - это символьный код Статуса заказа.
  • Если у вас будет 2 статуса, то нужно вписать их через запятую в таком виде: ["ks2008send_1",”ks2008send_2”] вместо ["ks2008send"]
  • "outcity","incity" - это символьные коды Типа доставки.
  • Если у вас будет 1 Тип доставки, то нужно вписать в таком виде ["incity”] вместо ["outcity","incity"]


3.Далее нужно нажать Добавить действие (1) -> Выполнить HTTP-запрос (2) чтобы появились дополнительные поля настроек (рис.11).

4.В поле "Адрес" прописываем: https://home.courierexe.ru/retail/trigger

5.В списке "HTTP метод" выбираем "POST".

6.В списке "Передавать параметры" выбираем "В теле запроса (urlencode)". Получим следующие настройки полей (рис. 12).

7.Нажимаем кнопку "Добавить параметр" 2 раза подряд.

8.Теперь снова нажимаем кнопку "Добавить параметр" столько раз, сколько у вас было сопоставленных пар символьный код Типа доставки - API ключ.

рис.13 Добавление параметров
рис.14 Заполнили параметры данными

В нашем случае было 2 пары, поэтому мы опять нажмем 2 раза. Итого у нас будет 4 нажатия и мы увидим следующее (рис. 13).

9.Теперь нам нужно эти поля заполнить следующими данными:

Параметр Значение
id
{{ order.getNumber() }}
sum
{{ order.getIntegrationDeliveryData().getDeclaredSum() }}
символьный код Типа доставки из 1-ой пары сопоставлений API ключ из 1-ой пары сопоставлений
символьный код Типа доставки из 2-ой пары сопоставлений API ключ из 2-ой пары сопоставлений


По итогу мы получим следующее заполнение полей (рис.14):

Обратите внимание, что ВО ВСЕХ СЛУЧАЯХ ДАННЫЕ ЗАПИСАНЫ В ОДНОЙ СТРОКЕ, ПЕРЕНОСОВ СТРОК БЫТЬ НЕ ДОЛЖНО!

10.Последнее действие - нажатие кнопки "Сохранить". Настройка триггера завершена.