Формирование заказа с выбором оптимального поставщика

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

  1. Загрузить прайс_листы_поставщиков|прайс-листы поставщиков, содержащие информацию об остатках товар у них и цена закупки за тот или иной объем
  2. Задать правила выбора поставщика

Правила выбора поставщика

Правила выбора поставщика задаются в Настройки - Правила отбора поставщиков.

В открывшемся окне вы можете создать несколько правил выбора поставщика для разных групп товаров.

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

Доступные критерии -

  • цена - берется из прайс-листа поставщика
  • срок доставки - берется из настроек поставщика
  • отсрочка платежа - берется из настроек поставщика
  • марке поставщика -из настроек поставщика
  • пользовательский критерий - можно самому установить порядок выбора поставщика

По каждому параметру можно установить допустимый %\разницы - если у двух поставщиков значений критерия в пределах указанного %, то они считаются одинаковыми

Программа выберет поставщика исходя из приоритетности критериев и доступного остатка

Пример работы алгоритма

Пример алгоритма для последовательности критериев цена закупки-срок доставки-отсрочка платежа – пользовательский порядок, % разницы для каждого критерия равен 10%

  1. Оставляем для выбора только тех поставщиков, у кого есть в наличии необходимая рассчитанная потребность
  2. Находим поставщика с минимальной ценой закупки (=x). Важно, что цена может быть средневзвешенная (нужно 15 штук, у поставщика есть 10 штук по 10 руб и 10 штук по 20 руб) – его цена для выбора = (10*10+5*20)/15
  3. Выбираем поставщиков, чья цена закупки меньше или равна 1,1x
  4. Из оставшихся поставщиков находим поставщика с минимальным сроком доставки (=y)
  5. Выбираем поставщиков, чей срок доставки меньше или равен 1,1 y
  6. Из оставшихся поставщиков находим поставщика с максимальной отсрочкой (=z)
  7. Выбираем поставщиков, чья отсрочка больше или равна 0,9z
  8. Из оставшихся поставщиков выбираем того, кто указан первым в пользовательском критерии

Выбор поставщика в заказе

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

В итоге заказы разобьются по оптимальным поставщикам и подсветятся синим цветом.

Расшифровка выбора и ручной перенос к другому поставщику

По каждой позиции можно посмотреть расшифровку выбора при помощи пункта контекстного меню «Поставщики»

В открывшейся таблице будет информация по остаткам товар у поставщика, его ценам, сроку доставки и отсрочке. Для переноса заказа товара другому поставщику можно воспользоваться пунктом контекстного меню «Заказать у этого поставщика»