Вы посетили:
Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
балансировка_запасов [13.08.2019 23:41] Timur Osmanov [Структура xml файла] |
балансировка_запасов [28.11.2019 04:48] (текущий) Timur Osmanov [Логика алгоритма пропорционального распределения] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
======Балансировка====== | ======Балансировка====== | ||
<note important> | <note important> | ||
- | Функционал доступен в следующих версиях: Максимальная и Под ключ. | + | Функционал доступен в следующих версиях: Premium (Максимальная) и Enterprise (Под ключ). |
</note> | </note> | ||
Строка 49: | Строка 49: | ||
1. Нажать кнопку подготовить, | 1. Нажать кнопку подготовить, | ||
- | 2. Выбрать фильтр - какие склады-товары участвуют в балансировке (работа с фильтрами аналогична [[формирование_заказа#фильтры_автоподготовки_заказа|фильтрам]] в заказе | + | 2. Выбрать фильтр - какие склады-товары участвуют в балансировке (работа с фильтрами аналогична [[формирование_заказа#фильтры_автоподготовки_заказа|фильтрам]] в заказе) |
3. Нажать подготовить | 3. Нажать подготовить | ||
Строка 63: | Строка 63: | ||
=====Правила проведения Балансировки===== | =====Правила проведения Балансировки===== | ||
- | -Если позиция является [[формирование_заказа&#нескладская_позиция|нескладской]], то спрос на нее считается равным 0 (касается любого склада - как донора, так и реципиента | + | -Если позиция является [[формирование_заказа&#нескладская_позиция|нескладской]], то спрос на нее считается равным 0 (касается любого склада - как донора, так и реципиента) |
- | -Если На складе-доноре позиция является [[параметры:настройка_параметров#новый_товар_дней|новым товаром]], то она не может быть перевезена с этого склада, если используется [[параметры/настройка_параметров#способ_расчета_заказа_нового_товара|способ расчета заказа по новому товара]] = по продажам | + | -Если На складе-доноре позиция является [[параметры:настройка_параметров#новый_товар_дней|новым товаром]], то она не может быть перевезена с этого склада, если используется [[параметры/настройка_параметров#способ_расчета_заказа_нового_товара|способ расчета заказа по новому товара]] = Вручную |
- Если На складе-реципиенте позиция является [[параметры:настройка_параметров#новый_товар_дней|новым товаром]], то она может быть перевезена на этот склад, если используется [[параметры/настройка_параметров#способ_расчета_заказа_нового_товара|способ расчета заказа по новому товара]] = одна кратность или по продажам. При этом учитываются [[акции_новые1#тип_акции_объем|акции типа Объем]] и [[параметры/настройка_параметров#добавлять_к_заказу_ед|добавлять к заказу]] | - Если На складе-реципиенте позиция является [[параметры:настройка_параметров#новый_товар_дней|новым товаром]], то она может быть перевезена на этот склад, если используется [[параметры/настройка_параметров#способ_расчета_заказа_нового_товара|способ расчета заказа по новому товара]] = одна кратность или по продажам. При этом учитываются [[акции_новые1#тип_акции_объем|акции типа Объем]] и [[параметры/настройка_параметров#добавлять_к_заказу_ед|добавлять к заказу]] | ||
-Если На складе-реципиенте позиция имеет статус [[формирование_заказа&#недостаточно_данных|Недостаточно данных]], то она туда не перевезется | -Если На складе-реципиенте позиция имеет статус [[формирование_заказа&#недостаточно_данных|Недостаточно данных]], то она туда не перевезется | ||
Строка 145: | Строка 145: | ||
====Норма складского запаса==== | ====Норма складского запаса==== | ||
- | норма запаса в днях, до которой происходит пополнение товара. | + | Норма запаса в днях, до которой происходит пополнение товара. |
Это число не должно быть меньше плеча поставки и точки заказа, если она есть. | Это число не должно быть меньше плеча поставки и точки заказа, если она есть. | ||
Выставляется на вкладке «Параметры – Балансировка»: | Выставляется на вкладке «Параметры – Балансировка»: | ||
Строка 160: | Строка 160: | ||
Варианты отображения: | Варианты отображения: | ||
- | * Есть свободный остаток на складе доноре - Если на складе доноре есть свободный остаток, но количество перемещения=0, такое перемещение будет отображаться | ||
* Не по расписанию - Если перемещения нет в расписание, то отображается | * Не по расписанию - Если перемещения нет в расписание, то отображается | ||
* Есть дефицит - Если есть дефицит, то нулевое перемещение отображается. | * Есть дефицит - Если есть дефицит, то нулевое перемещение отображается. | ||
- | * Отображать все - Отображаются все нулевые перемещения | + | * Есть свободный остаток на складе доноре - Если на складе доноре есть свободный остаток, но количество перемещения=0, такое перемещение будет отображаться |
+ | * Остальное - Будут отображаться нулевые перемещения без дефицита и с нулевым остатком на складе доноре (например перемещения не рентабельные, если не пишется дефицит) | ||
{{ balance: balancezero.png?600 }} | {{ balance: balancezero.png?600 }} | ||
Строка 178: | Строка 178: | ||
Способы разворота аналогов задаются в настройках балансировки | Способы разворота аналогов задаются в настройках балансировки | ||
- | {{ balance: balanceanalogs.png?600 }} | + | {{ balance: balanceanalogs.png }} |
Механизм разворота | Механизм разворота | ||
Строка 187: | Строка 187: | ||
*сначала дешевые, потом дорогие - сортировка по цене закупки от меньшей к большей | *сначала дешевые, потом дорогие - сортировка по цене закупки от меньшей к большей | ||
*по приоритету - сортировка по приоритету на вкладке Аналоги от самого высокого до низкого | *по приоритету - сортировка по приоритету на вкладке Аналоги от самого высокого до низкого | ||
+ | *обратно приоритету - сортировка по приоритету на вкладке Аналоги от самого низкого до высокого | ||
2. В том случае если значения равны, то сортировка происходит по артикулу товара | 2. В том случае если значения равны, то сортировка происходит по артикулу товара | ||
Строка 250: | Строка 251: | ||
====Расписание для балансировки==== | ====Расписание для балансировки==== | ||
- | Если для проведения балансировки Вы используете расписание заказов, отличающееся от Заказа, то это расписание нужно предварительно задать в [[параметры/настройка_параметров#расписание_заказов_балансировка|Параметры - Балансировка]] и выбрать в Настройках Балансировки. | + | Если для проведения балансировки вы используете расписание заказов, отличающееся от Заказа, то это расписание нужно предварительно задать в [[параметры/настройка_параметров#расписание_заказов_балансировка|Параметры - Балансировка]] и выбрать в Настройках Балансировки. |
- | {{ balance:bal_set_16042019 (1).png }} | + | {{:balance:расписание_балансировки.png}} |
- | Основное - расписание заказов используется из параметра Расписание заказов, Балансировка - используется из Расписание заказов (балансировка) | + | Основное - расписание заказов используется из параметра Расписание заказов \\ |
+ | Балансировка - используется из Расписание заказов (балансировка) \\ | ||
+ | Не учитывать - установленное расписание, не будет учитываться при формирование балансировки | ||
Строка 366: | Строка 369: | ||
**В** - название склада- реципиента (куда перевозится товар). | **В** - название склада- реципиента (куда перевозится товар). | ||
- | **В(код)** - код склада-реципиента (куда перевозится товар). | + | **В (код)** - код склада-реципиента (куда перевозится товар). |
**Количество для перемещения** - объем оптимального внутреннего перемещения | **Количество для перемещения** - объем оптимального внутреннего перемещения | ||
Строка 382: | Строка 385: | ||
**Комментарий В** - является ли товар новым, не складским и т.п. на складе-реципиенте, если сработала [[параметры/настройка_параметров#точка_запаса_дней_балансировка|точка заказа]] или уставновлен параметр [[параметры/настройка_параметров#не_балансировать_товар|не балансировать товар = да]] | **Комментарий В** - является ли товар новым, не складским и т.п. на складе-реципиенте, если сработала [[параметры/настройка_параметров#точка_запаса_дней_балансировка|точка заказа]] или уставновлен параметр [[параметры/настройка_параметров#не_балансировать_товар|не балансировать товар = да]] | ||
- | **Дефицит** - разница между потребностью реципиента в товаре и количеством перемещаемого товара (может быть вызван недостатком товара на РЦ или необходимостью удовлетворения удовлетворения собственного спроса склада-донора) | + | **Дефицит** - разница между потребностью реципиента в товаре и количеством перемещаемого товара (может быть вызван недостатком товара на РЦ или необходимостью удовлетворения собственного спроса склада-донора) |
**Причина дефицита** - в столбце объясняется, почему возник дефицит: | **Причина дефицита** - в столбце объясняется, почему возник дефицит: | ||
Строка 468: | Строка 471: | ||
{{ balance:balanceviewcells.png }} | {{ balance:balanceviewcells.png }} | ||
+ | |||
+ | |||
+ | Так же, закреплять столбцы, можно при помощи контекстного меню, вызванного на названии столбца | ||
+ | |||
+ | {{ balance: balancehold.png?700 }} | ||
==Единицы измерения== | ==Единицы измерения== | ||
Строка 482: | Строка 490: | ||
Выбранные единицы измерения отразятся в [[балансировка_запасов#статус-строка_в_балансировке|статус-строке]] балансировки | Выбранные единицы измерения отразятся в [[балансировка_запасов#статус-строка_в_балансировке|статус-строке]] балансировки | ||
- | ==Закрепление столбцов== | ||
- | При помощи контекстного меню, вызванного на названии столбца, можно закреплять столбцы (при передвижении по таблице направо, закрепленные столбцы будут оставаться слева) | ||
- | |||
- | {{ balance: balancehold.png?700 }} | ||
==Отображение свойств, параметров и полей для товаров== | ==Отображение свойств, параметров и полей для товаров== | ||
Строка 500: | Строка 504: | ||
Считывание результатов анализов происходит во время проведения балансировки, поэтому если балансировка проведена, то добавляемые в балансировку результаты анализов будут содержать значения "-" | Считывание результатов анализов происходит во время проведения балансировки, поэтому если балансировка проведена, то добавляемые в балансировку результаты анализов будут содержать значения "-" | ||
+ | ==Отображение продаж предыдущих периодов в Балансировке== | ||
+ | |||
+ | С помощью Вид-Данные о продажах, в таблицу балансировки можно вывести продажи товаров за выбранный период. | ||
+ | |||
+ | {{:balance:продажи_в_балансировке.png}} | ||
+ | |||
+ | Для отображения продаж нужно задать необходимый период и срок отображения данных (периоды ограничены - Дней - 1095,недель 156, месяцев 36). | ||
+ | Продажи отображаются с учетом иерархии складов, в соответствие со значением параметра [[параметры:настройка_параметров#учет_продаж_дочерних_складов|Учитывать продажи дочерних складов]]. | ||
===Поиск и фильтрация в балансировке=== | ===Поиск и фильтрация в балансировке=== | ||
Строка 570: | Строка 582: | ||
====Логика алгоритма пропорционального распределения==== | ====Логика алгоритма пропорционального распределения==== | ||
- | 1. Рассчитывается суммарная потребность филиалов в товарах. | + | 1. Рассчитывается суммарная потребность в товарах, складов участвующих в балансировке(РЦ и филиалов). |
+ | |||
+ | 2. Текущий остаток РЦ делится на суммарную потребность складов – получается коэффициент удовлетворения спроса. | ||
+ | |||
+ | 3. Рассчитывается доступный остаток для распределения с РЦ: \\ | ||
+ | Макс(0, Текущий остаток РЦ - Мин(Потребность РЦ * Коэффициент удовлетворения спроса, Потребность РЦ)) | ||
+ | |||
+ | 4. Потребность каждого филиала умножается на коэффициент удовлетворенного спроса. | ||
+ | |||
+ | 5. Перемещение корректируется по остаточному количеству на РЦ, после перемещения на филиал. | ||
+ | |||
+ | 6. Если количество, доступное для перемещения на склад, меньше минимальной партии, то количество перемещения округляется до 0 (т.к нет смысла перемещать меньше минимальной партии). При этом в расшифровке отобразится Округление по минимальной партии, текущее доступное количество для перемещения и значение минимальной партии. В таком случае доступное количество для перемещения станет 0 | ||
- | 2. Доступный для распределения остаток РЦ делится на потребность филиалов – получается коэффициент удовлетворения спроса. | + | =====Проведение балансировки с учётом многоступенчатой иерархии складов===== |
+ | Если в программе используется иерархия складов, с глубинной вложенности больше двух уровней, то при формирование балансировки, можно учитываться особенности такой иерархии. При расчёте перемещение товара, со склада верхнего уровня, на склады нижнего уровня, но через промежуточные склады, будет учитываться потребность необходимых складов. | ||
- | 3. Потребность каждого филиала умножается на коэффициент удовлетворенного спроса. | + | Чтобы это учитывалось, необходимо выполнение двух условий: \\ |
+ | 1. У балансируемых товаров должна быть установлена одна иерархия складов, глубиной не меньше трёх уровней. \\ | ||
+ | 2. В настройках балансировки, должно быть выбрано направление балансировки, в котором разрешено перемещение только по всей иерархии (от склада самого верхнего уровня на склады самого нижнего уровня, через склады промежуточных уровней). Эти склады должны принадлежать иерархии из п.1. | ||
- | 4. Если количество, доступное для перемещения на склад, меньше минимальной партии, то количество перемещения округляется до 0 (т.к нет смысла перемещать меньше минимальной партии). При этом в расшифровке отобразится Округление по минимальной партии, текущее доступное количество для перемещения и значение минимальной партии. В таком случае доступное количество для перемещения станет 0 | + | **Пример использования:** |
+ | Необходимо переместить товар с РЦ(первый уровень иерархии), на филиалы(третий уровень иерархии), через промежуточные склады(второй уровень иерархии). \\ | ||
+ | При перемещение с РЦ на промежуточные склады, количество перемещения будет учитывать продажи самого склада и его филиалов. При дальнейшем распределение с промежуточного склада на филиалы, будет рассчитываться потребность каждого склада в отдельности и на промежуточном складе, останется количество необходимое для самого склада. | ||
=====Учет балансировки при последующих операциях===== | =====Учет балансировки при последующих операциях===== | ||
Строка 709: | Строка 738: | ||
isShowZeroMovements - отображать нулевые перемещения | isShowZeroMovements - отображать нулевые перемещения | ||
globalBalancingDestination - направление балансировки. Может принимать значения - 'Использовать из значений параметров' и пользовательские значения из Настройки->Направления балансировки | globalBalancingDestination - направление балансировки. Может принимать значения - 'Использовать из значений параметров' и пользовательские значения из Настройки->Направления балансировки | ||
- | analogsDeploymentMode - метод разворота аналогов. Может принимать значения - BY_RESTS_DATE(Сначала старые запасы, потом новые), BY_PRICE(Сначала дешевые, потом дорогие), BY_PRIORITY(По приоритету) | + | analogsDeploymentMode - метод разворота аналогов. Может принимать значения - BY_RESTS_DATE(Сначала старые запасы, потом новые), BY_PRICE(Сначала дешевые, потом дорогие), BY_PRIORITY(По приоритету), BY_REV_PRIORITY(Обратно приоритету) |
StoragesRelationships - cтоимости и Сроки доставки | StoragesRelationships - cтоимости и Сроки доставки | ||
StoragesRelationship - cтоимости и cроки доставки для отношения складов | StoragesRelationship - cтоимости и cроки доставки для отношения складов |