Простой инструмент для создания скидок в 1С:ERP вместо сложного типового механизма

Всем компаниям Автомобили 1С:ERP
Заказчик Подписано соглашение о неразглашении (NDA). Сеть магазинов автомобильных запчастей
Задача Упростить создание скидок в 1С:ERP, разработав понятный инструмент для пользователя без технической подготовки
Результат Пользователь самостоятельно создает несколько скидок одним нажатием кнопки в 1С:ERP. Цены автоматически синхронизируются с сайтом

Ситуация

Компания торгует автозапчастями в офлайне и онлайне. У заказчика около десяти розничных точек и сайт с личными кабинетами покупателей. Для работы с постоянными клиентами заказчик применяет систему скидок. Их назначают конкретным контрагентам, разбивают по торговым маркам, диапазонам цен и другим признакам.

До перехода на 1С компания работала в учетной системе Axapta. Там создание скидок было устроено просто: маркетолог вносил нужные параметры — и скидка появлялась. Все остальное система делала сама.

В 1С:ERP механика скидок оказалась другой. Чтобы скидка заработала, нужно создать несколько связанных объектов в правильном порядке, понять логику соглашений и привязок. Маркетолог в этой механике не разбирался.

В итоге скидки создавали программисты. Маркетолог формулировал задачу, передавал ее программисту и ждал. Одновременно скидки нужно было отражать не только в ERP, но и на сайте. Сайт жил на отдельной базе данных, и данные между системами сами не синхронизировались. После каждого изменения в ERP сайт приходилось обновлять отдельно. Процесс растягивался: простая маркетинговая задача превращалась в цепочку согласований.


Задача

Заказчик обратился в implecs, чтобы разработать инструмент для создания скидок внутри 1С:ERP. Пользователь должен задавать только маркетинговые параметры, а вся техническая часть — создание объектов, привязки и соглашения — должна происходить автоматически.

Дополнительно требовалось настроить выгрузку скидок на сайт, чтобы условия в ERP и онлайн-магазине всегда были одинаковыми.


Решение

Разработку начали с того, что разобрались в механике скидок в 1С:ERP: как устроено создание объектов, в каком порядке они связываются и что нужно, чтобы скидка заработала.

Параллельно выяснили, как менеджер работал в старой Axapta — оказалось, он просто заполнял таблицу с нужными параметрами. Это и стало основой решения: мы взяли привычный для менеджера интерфейс и воспроизвели его — но уже внутри ERP.


Спроектировали интерфейс

Для маркетолога разработали отдельное автоматизированное рабочее место (АРМ) внутри 1С:ERP. В нем пользователь может делать две вещи: смотреть, какие скидки уже действуют у контрагента, и создавать новые.

Просмотр текущих скидок. Маркетолог выбирает контрагента, нажимает «Поиск» — и видит все действующие скидки. Удобно посмотреть, что уже есть, прежде чем вносить изменения.

Создание скидок. Пользователь заполняет таблицу, где строки — это скидки, а столбцы — это параметры. К ним относятся:

Менеджер заполняет нужное количество строк и нажимает «Сформировать». Одновременно создается 5–10 скидок — столько строк заполнил, столько скидок и появится в системе. Внутренняя механика ERP — объекты, привязка соглашений, связка с контрагентом — работает автоматически, без дополнительных действий со стороны пользователя.


Добавили проверку пересечений

Перед созданием скидок система проверяет, не пересекаются ли новые скидки с уже действующими. Алгоритм работает в два этапа:

  1. Сравнивает параметры новых скидок с текущими для этого контрагента. Если пересечение найдено — старая скидка закрывается, на ее месте создается новая.
  2. Проверяет, нет ли скидок с такими же параметрами в ERP, но без привязки к этому покупателю. Если есть — берется существующий объект, дубль не создается.

Маркетологу об этом думать не нужно: система сама разберется, что закрыть, что создать, что оставить. После нажатия кнопки «Сформировать» форма обновляется и пользователь видит актуальный список скидок контрагента.


Реализовали выгрузку на сайт

Сайт компании работает на отдельной базе данных MySQL. Скидки из ERP туда не попадают автоматически — для этого нужна отдельная операция.

В АРМ добавили кнопку «Выгрузить на сайт», нажатие на которую запускает передачу данных. Сначала из базы сайта удаляются все скидки по этому контрагенту, затем записываются те, что сейчас действуют. Такой подход — очистка и перезапись — гарантирует, что на сайте всегда отражаются актуальные данные без устаревших скидок.

Весь процесс — создание скидок в ERP и их выгрузка на сайт — происходит в два клика.


Непредвиденные трудности

Когда маркетолог выбирает контрагента и нажимает «Поиск», система должна показать актуальный список его скидок — с торговыми марками, признаками и процентами. Чтобы это работало, нужно извлечь торговые марки из существующих скидок.

Проблема была в том, что в 1С:ERP торговая марка хранится не как отдельное поле, а вложена в компоновщик системы компоновки данных внутри реквизита. Чтобы ее извлечь, пришлось написать процедуру, которая перебирает каждую скидку, извлекает компоновщик и вытаскивает нужное значение. Получилось несколько уровней циклов и проверок — и заметная нагрузка на интерфейс.

Чтобы пользователь не ждал с зависшим экраном, операцию вынесли в фоновое задание. Интерфейс не блокируется и менеджер продолжает работать, пока система загружает данные.


Результат

Раньше создание каждой новой скидки начиналось с запроса программисту: маркетолог объяснял задачу, ждал исполнения, а потом договаривался об обновлении сайта. Простая операция растягивалась на несколько итераций.

Теперь маркетолог делает все самостоятельно: открывает АРМ, заполняет таблицу и нажимает две кнопки. Скидки отражаются в ERP и сразу появляются на сайте — синхронизация происходит автоматически.

Наша обработка создана под конкретную конфигурацию и бизнес-процессы заказчика. Другой компании с другими процессами она не подойдет. Это не универсальное решение, а персональный инструмент, который выполняет нужную задачу.

Евгений Иванов разработчик 1С

Длительность. Доработка заняла 100 часов.

Команда. Со нашей стороны над задачей работали разработчик 1С и руководитель проектов. Со стороны заказчика участвовали 3 специалиста: маркетолог, разработчик 1С и администратор базы данных.

Многие проекты
под соглашением о неразглашении (NDA),
поэтому вы можете оставить заявку,
и мы расскажем чуть больше

Услуги

2015
Год основания компании
150+
Специалистов в штате
650+
Клиентов, которым мы помогли
950+
Реализованных проектов

Нам доверяют

Все клиенты
Все клиенты
Нужна помощь, но не знаете, с чего начать?

Напиште нам - мы поможем. Выслушаем Ваши задачи для бизнеса и подберём вариант развития

Лидия Алимова
Руководитель отдела продаж implecs
Иконка стрелки вверх