Мы продолжаем серию публикаций про решение для малого и среднего бизнеса от компании SAP – SAP Business One. В этой статье рассмотрим стандартные возможности ценообразования в SAP Business One и вариант реализации нестандартного расчета цены, примененного нашим партнером, компанией ЦМД-софт, на проекте внедрения.
Цена товара или услуги является боевым оружием в конкурентной борьбе за покупателя. В обычной жизни продавцы оказывают влияние на наше решение о покупке с помощью широкого набора средств: персональные предложения, программы лояльности, бонусы, подарки, скидки, и т.п. Эти акции являются результатом ценовой политики предприятия, нацеленной на покупателя.
Предприятие-продавец выстраивает ценовую матрицу с учётом многих факторов, среди которых данные, подлежащие внутреннему учету: номенклатура товара, количество товара на складе, условия поставки, категория клиента и т.д.
Ценовая политика предприятия возлагает на ERP-систему требования по идентичному отражению различных ценовых подходов во взаимосвязи со многими учетными данными. Для успешности процесса продаж адекватное отображение логики ценообразования торговой организации является важной и ответственной задачей настройки информационной системы.
Давайте рассмотрим с помощью примеров как с вопросами ценообразования справляется решение от SAP для среднего и малого бизнеса. В SAP Business One путем несложных настроек можно достичь различных ценовых вариаций и удовлетворить большинство потребностей клиентов.
На рисунке выделены и проиллюстрированы основные подходы к расчету цены, а также примеры, сгруппированные по принципу организации стандартных возможностей системы:
![image](https://habrastorage.org/web/9ef/d4e/2d7/9efd4e2d7f4e4b799b29dd81bbaa129e.png)
Основные виды расчета цены в SAP Business One
1. Прайс-листы
В SAP Business One возможно ведение различных версий прайс-листов для продаж и закупок. Прайс-листы продаж/закупок создаются в Запасы => Прайс-листы => Прайс-листы:
![image](https://habrastorage.org/web/e74/230/18d/e7423018d33542ac9e55c5a31bbd1f87.png)
Хранение справочника прайс-листов
Автоматическое ведение применяется для двух прайс-листов: Последняя рассчитанная цена ( обновляется отчетом моделирования оценки запасов) и Последняя закупочная цена (обновляется при вводе товара в запасы с исходной ценой). Прайс-лист может быть создан на базе другого прайс-листа (например, Последняя закупочная цена) с применением коэффициентов пересчета:
![image](https://habrastorage.org/web/5b3/866/49c/5b386649cc274962adfd2f05f8dd8cad.png)
Коэффициенты для расчета прайс-листов
Возможно ведение прайс-листов с НДС или без НДС, в нескольких валютах (в основной и двух дополнительных) – например, РУБ, USD, EUR. Есть возможность зафиксировать цену за единицу, при изменении коэффициента – цена не будет пересчитываться:
![image](https://habrastorage.org/web/2f2/9b7/035/2f29b703557b4a729c21e5af5169dfe2.png)
Настройка прайс-листа с/без НДС, фиксированная цена в разных валютах
Определенный прайс-лист можно назначить конкретному клиенту/поставщику. Привязка прайс-листа осуществляется в карточке клиента Бизнес-партнёры => Справочник бизнес-партнёров => вкладка Условия оплаты => поле Прайс-лист:
![image](https://habrastorage.org/web/d00/0bf/5d5/d000bf5d53564287b93b32e57b80d1f0.png)
Настройка прайс-листа для поставщика
Для редактирования цены в прайс-листе для определенного товара достаточно в карточке товара выбрать прайс-лист и изменить цену Запасы => Справочник товаров и услуг => поле Прайс-лист:
![image](https://habrastorage.org/web/0c3/8dc/2f6/0c38dc2f68d64813978569faca52ee93.png)
Настройка цены товара
2. Объемные скидки
Использование скидок в зависимости от периода и количества позволяют определить скидки по датам и на основе количества товара по действующему прайс-листу. Введенные здесь скидки переопределяют базовую цену в прайс-листе, присвоенном данному бизнес-партнеру. Скидки не применяются, если для клиента или товара действует специальная цена для бизнес-партнера или группа скидок:
![image](https://habrastorage.org/web/388/20f/f3c/38820ff3ce20426580d6262454a98a3e.png)
Скидки в зависимости от периода и количества
3. Группы скидок
Группы скидок настраиваются по пути Запасы => Прайс-листы => Группы скидок.
Назначение групп скидок возможно для всех бизнес-партнеров, конкретного клиента/поставщика, группы заказчиков или группы поставщиков:
![image](https://habrastorage.org/web/2fb/4f0/c3d/2fb4f0c3d4b243119268b3beb604551b.png)
Настройка скидок для конкретного клиента
Группы скидок по Группам товаров настраиваются на вкладке Группы товаров. Можно активировать срок действия данной скидки:
![image](https://habrastorage.org/web/2e3/0d8/2e8/2e30d82e8be9402ba59f2322b91e51b2.png)
Настройка скидок по группе товаров
Группы скидок по свойствам товаров настраиваются на вкладке Свойства товара. Чтобы дополнительная скидка складывалась, необходимо установить значение Отношение скидки = Всего:
![image](https://habrastorage.org/web/afc/7b5/157/afc7b51571724eb39fd880fd5b932d8d.png)
Настройка скидок по свойствам товаров
Группы скидок могут быть назначены по производителям (брендам) на вкладке Производитель:
![image](https://habrastorage.org/web/538/9be/b5f/5389beb5f34949ce86d8d742104c1458.png)
Настройка скидок по производителям (брендам)
Для расчета скидки по определенным товарам выбираем данные товары на закладке
Товары:
![image](https://habrastorage.org/web/fc2/6d6/487/fc26d64873c040ba9a40c5fd10073573.png)
Настройка скидок по товарам
4. Специальные предложения
SAP Business One позволяет установить цену для клиента или поставщика на отдельные товарные позиции в одном или нескольких прайс-листах:
![image](https://habrastorage.org/web/8c9/e20/822/8c9e2082283d47b8a4d1f1e532323158.png)
Настройка специальных цен для определенного клиента
5. Нестандартный расчет цены
На одном из проектов компания ЦМД-софт получила требование от заказчика осуществить расчет скидки на уровне документа с применением этой скидки ко всем строкам, а не только к полю Итого.
Значение скидки к счету вводится в дополнительное поле документа Заказ на продажу. Скидка рассчитывается пропорционально стоимости позиции счета и добавляется к скидке в каждой строке документа. При обнулении поля общей скидки — значения скидок по строкам откатываются на начальные значения до редактирования документа.
Дополнительно, необходимо было реализовать динамический пересчет значений полей. На уровне Заказа на продажу при ручном изменении значения в одном из перечисленных полей осуществляется автоматический пересчет связанных значений остальных полей по строке:
![image](https://habrastorage.org/web/844/61a/994/84461a99487b450a876f4899f664841a.png)
Каскадный пересчет значений связанных полей при изменении значения в одном из полей
Для реализации нестандартных сценариев расчета цены могут быть использованы различные инструменты, встроенные в SAP Business One. Гибкость решения и независимость ядра позволяет без написания кода (программирования) добавлять пользовательские объекты в системные документы.
Создание пользовательского поля
С помощью инструмента Пользовательские поля можно добавить новое поле и привязать его к документам, основным данным и другим системным объектам (как на уровне заголовка, так и на уровне строк). Пользовательские поля могут быть различного типа: алфавитно-цифровой, цифровой, дата или время, единицы измерения и расчета. В соответствии с выбранным типом поля изменяется внешний вид отображения данных. Значения этих полей могут быть связаны с сущностями (системная или пользовательская таблица), включать в себя ограниченный набор данных (введенных при определении поля) или соответствовать определенным критериям. Пользовательскому полю может быть присвоено стандартное значение и/или свойство обязательного ввода (пользователь не сможет сохранить документ, если данное поле не заполнено).
Добавляем пользовательское поле на уровне заголовка документа, в которое будем вводить размер дополнительной скидки:
![image](https://habrastorage.org/web/dbf/8f5/ab1/dbf8f5ab1ba04e42b074c54d241e6f46.jpg)
Добавление пользовательского поля на уровне заголовка документа
Создание пользовательского запроса
Для формирования алгоритма расчета используем инструменты в разделе Запросы. С помощью этих инструментов можно построить, изменить и управлять SQL запросами. Для «неискушенных» имеется Ассистент запросов – мастер, помогающий пошагово создать свой SQL запрос.
В SAP Business One возможно вычисление на уровне открытого документа, когда значение еще не внесено в системную или пользовательскую таблицу (документ не сохранен). Для этого используется синтаксис вида $[$X.Y.Z], где X — системный номер или название поля, а Y и Z дополнительные условия.
В запросе для определения пользовательского значения (в нашем случае – нестандартный расчет цены) указываем динамический синтаксис по считыванию элементов открытой формы:
![image](https://habrastorage.org/web/eb5/80b/16e/eb580b16e6ef4dbc965be30310685282.jpg)
Добавление пользовательского SQL запроса
Создание пользовательских значений
После того, как сформированы пользовательское поле для внесения информации по дополнительной скидке и запрос на вычисление нестандартной цены, необходимо связать два этих элемента в документе.
Активируем отображение пользовательских полей на уровне заголовков (на уровне строк они активируются автоматически). По умолчанию, пользовательские поля отображаются в окне справа от формы. Пользователи с соответствующим уровнем полномочий могут активировать режим редактирования формы и перетащить элемент из бокового окна на интересующее нас место в заголовке документа. Открываем необходимый документ Заказ на продажу и переносим пользовательское поле Дополнительная скидка в заголовок документа.
Ставим курсор мыши в поле Всего (НВ) – созданный запрос будет выполняться в этом поле. Добавим пользовательское значение на основе запроса.
Выбираем созданный запрос. Устанавливаем настройку автоматического расчета значения при изменении созданного пользовательского поля. Выбираем настройку Просмотр сохраненных пользовательских значений. Сохраняем результаты:
![image](https://habrastorage.org/web/947/54b/ad3/94754bad3a6f431b85cb22a8527032cb.jpg)
Присвоение пользовательского запроса полю
Результат
Открываем маркетинговый документ Заказ на продажу. Находим требуемый документ или создаем новый. В пользовательское поле Дополнительная скидка вносим размер скидки, например, 50. С помощью созданного запроса и настройки определения пользовательского значения на основе запроса во всех строках документа обновилось поле Скидка, %, Всего (НВ) и общая стоимость заказа уменьшилась на 50%:
![image](https://habrastorage.org/web/841/138/f02/841138f0242047f094809eca4de65424.jpg)
Автоматический расчет значений в связанных полях документа
Как вы смогли увидеть в этой статье, решение SAP Business One обладает разнообразным функционалом для реализации различных политик ценообразования компании, а также имеет возможность его доработки.
Ознакомиться с примерами внедрений SAP Business One можно на нашем сайте
Видео с обзорами возможностей и не только доступно на нашем канале в YouTube
Комментируйте, делитесь впечатлением, задавайте вопросы.
Всем спасибо за прочтение и обратную связь!
Предыдущие материалы о SAP Business One:
Возможности ERP-решения SAP Business One на платформе SAP HANA
Business One: ERP для малого бизнеса существует
Цена товара или услуги является боевым оружием в конкурентной борьбе за покупателя. В обычной жизни продавцы оказывают влияние на наше решение о покупке с помощью широкого набора средств: персональные предложения, программы лояльности, бонусы, подарки, скидки, и т.п. Эти акции являются результатом ценовой политики предприятия, нацеленной на покупателя.
Предприятие-продавец выстраивает ценовую матрицу с учётом многих факторов, среди которых данные, подлежащие внутреннему учету: номенклатура товара, количество товара на складе, условия поставки, категория клиента и т.д.
Ценовая политика предприятия возлагает на ERP-систему требования по идентичному отражению различных ценовых подходов во взаимосвязи со многими учетными данными. Для успешности процесса продаж адекватное отображение логики ценообразования торговой организации является важной и ответственной задачей настройки информационной системы.
Давайте рассмотрим с помощью примеров как с вопросами ценообразования справляется решение от SAP для среднего и малого бизнеса. В SAP Business One путем несложных настроек можно достичь различных ценовых вариаций и удовлетворить большинство потребностей клиентов.
На рисунке выделены и проиллюстрированы основные подходы к расчету цены, а также примеры, сгруппированные по принципу организации стандартных возможностей системы:
![image](https://habrastorage.org/web/9ef/d4e/2d7/9efd4e2d7f4e4b799b29dd81bbaa129e.png)
Основные виды расчета цены в SAP Business One
1. Прайс-листы
В SAP Business One возможно ведение различных версий прайс-листов для продаж и закупок. Прайс-листы продаж/закупок создаются в Запасы => Прайс-листы => Прайс-листы:
![image](https://habrastorage.org/web/e74/230/18d/e7423018d33542ac9e55c5a31bbd1f87.png)
Хранение справочника прайс-листов
Автоматическое ведение применяется для двух прайс-листов: Последняя рассчитанная цена ( обновляется отчетом моделирования оценки запасов) и Последняя закупочная цена (обновляется при вводе товара в запасы с исходной ценой). Прайс-лист может быть создан на базе другого прайс-листа (например, Последняя закупочная цена) с применением коэффициентов пересчета:
![image](https://habrastorage.org/web/5b3/866/49c/5b386649cc274962adfd2f05f8dd8cad.png)
Коэффициенты для расчета прайс-листов
Возможно ведение прайс-листов с НДС или без НДС, в нескольких валютах (в основной и двух дополнительных) – например, РУБ, USD, EUR. Есть возможность зафиксировать цену за единицу, при изменении коэффициента – цена не будет пересчитываться:
![image](https://habrastorage.org/web/2f2/9b7/035/2f29b703557b4a729c21e5af5169dfe2.png)
Настройка прайс-листа с/без НДС, фиксированная цена в разных валютах
Определенный прайс-лист можно назначить конкретному клиенту/поставщику. Привязка прайс-листа осуществляется в карточке клиента Бизнес-партнёры => Справочник бизнес-партнёров => вкладка Условия оплаты => поле Прайс-лист:
![image](https://habrastorage.org/web/d00/0bf/5d5/d000bf5d53564287b93b32e57b80d1f0.png)
Настройка прайс-листа для поставщика
Для редактирования цены в прайс-листе для определенного товара достаточно в карточке товара выбрать прайс-лист и изменить цену Запасы => Справочник товаров и услуг => поле Прайс-лист:
![image](https://habrastorage.org/web/0c3/8dc/2f6/0c38dc2f68d64813978569faca52ee93.png)
Настройка цены товара
2. Объемные скидки
Использование скидок в зависимости от периода и количества позволяют определить скидки по датам и на основе количества товара по действующему прайс-листу. Введенные здесь скидки переопределяют базовую цену в прайс-листе, присвоенном данному бизнес-партнеру. Скидки не применяются, если для клиента или товара действует специальная цена для бизнес-партнера или группа скидок:
![image](https://habrastorage.org/web/388/20f/f3c/38820ff3ce20426580d6262454a98a3e.png)
Скидки в зависимости от периода и количества
3. Группы скидок
Группы скидок настраиваются по пути Запасы => Прайс-листы => Группы скидок.
Назначение групп скидок возможно для всех бизнес-партнеров, конкретного клиента/поставщика, группы заказчиков или группы поставщиков:
![image](https://habrastorage.org/web/2fb/4f0/c3d/2fb4f0c3d4b243119268b3beb604551b.png)
Настройка скидок для конкретного клиента
Группы скидок по Группам товаров настраиваются на вкладке Группы товаров. Можно активировать срок действия данной скидки:
![image](https://habrastorage.org/web/2e3/0d8/2e8/2e30d82e8be9402ba59f2322b91e51b2.png)
Настройка скидок по группе товаров
Группы скидок по свойствам товаров настраиваются на вкладке Свойства товара. Чтобы дополнительная скидка складывалась, необходимо установить значение Отношение скидки = Всего:
![image](https://habrastorage.org/web/afc/7b5/157/afc7b51571724eb39fd880fd5b932d8d.png)
Настройка скидок по свойствам товаров
Группы скидок могут быть назначены по производителям (брендам) на вкладке Производитель:
![image](https://habrastorage.org/web/538/9be/b5f/5389beb5f34949ce86d8d742104c1458.png)
Настройка скидок по производителям (брендам)
Для расчета скидки по определенным товарам выбираем данные товары на закладке
Товары:
![image](https://habrastorage.org/web/fc2/6d6/487/fc26d64873c040ba9a40c5fd10073573.png)
Настройка скидок по товарам
4. Специальные предложения
SAP Business One позволяет установить цену для клиента или поставщика на отдельные товарные позиции в одном или нескольких прайс-листах:
![image](https://habrastorage.org/web/8c9/e20/822/8c9e2082283d47b8a4d1f1e532323158.png)
Настройка специальных цен для определенного клиента
5. Нестандартный расчет цены
На одном из проектов компания ЦМД-софт получила требование от заказчика осуществить расчет скидки на уровне документа с применением этой скидки ко всем строкам, а не только к полю Итого.
Значение скидки к счету вводится в дополнительное поле документа Заказ на продажу. Скидка рассчитывается пропорционально стоимости позиции счета и добавляется к скидке в каждой строке документа. При обнулении поля общей скидки — значения скидок по строкам откатываются на начальные значения до редактирования документа.
Дополнительно, необходимо было реализовать динамический пересчет значений полей. На уровне Заказа на продажу при ручном изменении значения в одном из перечисленных полей осуществляется автоматический пересчет связанных значений остальных полей по строке:
- Цена за единицу (указывается без НДС, по умолчанию берется из прайс-листа)
- Скидка % (значение не может быть больше 100%)
- Цена вкл. налог (рассчитывается с учетом Скидки плюс НДС),
- Всего (НВ) (по умолчанию является результатом умножения значений полей Цена вкл. налог и Количество)
![image](https://habrastorage.org/web/844/61a/994/84461a99487b450a876f4899f664841a.png)
Каскадный пересчет значений связанных полей при изменении значения в одном из полей
Для реализации нестандартных сценариев расчета цены могут быть использованы различные инструменты, встроенные в SAP Business One. Гибкость решения и независимость ядра позволяет без написания кода (программирования) добавлять пользовательские объекты в системные документы.
Создание пользовательского поля
С помощью инструмента Пользовательские поля можно добавить новое поле и привязать его к документам, основным данным и другим системным объектам (как на уровне заголовка, так и на уровне строк). Пользовательские поля могут быть различного типа: алфавитно-цифровой, цифровой, дата или время, единицы измерения и расчета. В соответствии с выбранным типом поля изменяется внешний вид отображения данных. Значения этих полей могут быть связаны с сущностями (системная или пользовательская таблица), включать в себя ограниченный набор данных (введенных при определении поля) или соответствовать определенным критериям. Пользовательскому полю может быть присвоено стандартное значение и/или свойство обязательного ввода (пользователь не сможет сохранить документ, если данное поле не заполнено).
Добавляем пользовательское поле на уровне заголовка документа, в которое будем вводить размер дополнительной скидки:
![image](https://habrastorage.org/web/dbf/8f5/ab1/dbf8f5ab1ba04e42b074c54d241e6f46.jpg)
Добавление пользовательского поля на уровне заголовка документа
Создание пользовательского запроса
Для формирования алгоритма расчета используем инструменты в разделе Запросы. С помощью этих инструментов можно построить, изменить и управлять SQL запросами. Для «неискушенных» имеется Ассистент запросов – мастер, помогающий пошагово создать свой SQL запрос.
В SAP Business One возможно вычисление на уровне открытого документа, когда значение еще не внесено в системную или пользовательскую таблицу (документ не сохранен). Для этого используется синтаксис вида $[$X.Y.Z], где X — системный номер или название поля, а Y и Z дополнительные условия.
В запросе для определения пользовательского значения (в нашем случае – нестандартный расчет цены) указываем динамический синтаксис по считыванию элементов открытой формы:
![image](https://habrastorage.org/web/eb5/80b/16e/eb580b16e6ef4dbc965be30310685282.jpg)
Добавление пользовательского SQL запроса
Создание пользовательских значений
После того, как сформированы пользовательское поле для внесения информации по дополнительной скидке и запрос на вычисление нестандартной цены, необходимо связать два этих элемента в документе.
Активируем отображение пользовательских полей на уровне заголовков (на уровне строк они активируются автоматически). По умолчанию, пользовательские поля отображаются в окне справа от формы. Пользователи с соответствующим уровнем полномочий могут активировать режим редактирования формы и перетащить элемент из бокового окна на интересующее нас место в заголовке документа. Открываем необходимый документ Заказ на продажу и переносим пользовательское поле Дополнительная скидка в заголовок документа.
Ставим курсор мыши в поле Всего (НВ) – созданный запрос будет выполняться в этом поле. Добавим пользовательское значение на основе запроса.
Выбираем созданный запрос. Устанавливаем настройку автоматического расчета значения при изменении созданного пользовательского поля. Выбираем настройку Просмотр сохраненных пользовательских значений. Сохраняем результаты:
![image](https://habrastorage.org/web/947/54b/ad3/94754bad3a6f431b85cb22a8527032cb.jpg)
Присвоение пользовательского запроса полю
Результат
Открываем маркетинговый документ Заказ на продажу. Находим требуемый документ или создаем новый. В пользовательское поле Дополнительная скидка вносим размер скидки, например, 50. С помощью созданного запроса и настройки определения пользовательского значения на основе запроса во всех строках документа обновилось поле Скидка, %, Всего (НВ) и общая стоимость заказа уменьшилась на 50%:
![image](https://habrastorage.org/web/841/138/f02/841138f0242047f094809eca4de65424.jpg)
Автоматический расчет значений в связанных полях документа
Как вы смогли увидеть в этой статье, решение SAP Business One обладает разнообразным функционалом для реализации различных политик ценообразования компании, а также имеет возможность его доработки.
Ознакомиться с примерами внедрений SAP Business One можно на нашем сайте
Видео с обзорами возможностей и не только доступно на нашем канале в YouTube
Комментируйте, делитесь впечатлением, задавайте вопросы.
Всем спасибо за прочтение и обратную связь!
Предыдущие материалы о SAP Business One:
Возможности ERP-решения SAP Business One на платформе SAP HANA
Business One: ERP для малого бизнеса существует
Поделиться с друзьями