@vKreker

Как учитывать товар в WMS?

Всем привет!

В самописной CRM нужно сделать модуль учета товара. Требования небольшие:
1) Учет поступления (цены, количество)
2) Резерв под заказы
3) Перемещение товара между объектами (склад/курьер/клиент)
4) Принцип отгрузки со склада FIFO по дате поступления

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

Есть два варианта:
1) Хранить в БД товары партиями (одно поступление = одна запись в БД с полем количества товаров). Эта запись значится на складе. Если товар продается, то для него создается запись о продаже и поле количества в хранилище уменьшается.
2) Заводить сразу объекты товаров (поступление с 5 товарами = 5 объектов = 5 записей в БД).

У каждого варианта есть преимущества. В свое время перевел одну систему на второй вариант (не WMS). С WMS никогда не работал и не программировал их. Был ли у кого такой опыт?
Какие мнения?
  • Вопрос задан
  • 607 просмотров
Пригласить эксперта
Ответы на вопрос 1
k1lex
@k1lex
Программист торг. сети. C# (WPF, WinForms), T-SQL
Приходы и расходы считаем накладными. Накладная состоит из 2 таблиц как минимум: таблица заголовков (номер, дата, дата оприходования и проч) и таблица тушек (товар, кол-во, цена и прочее по вкусу).
Отдельные таблицы на приходы, отдельные на расходы.
Плюс одна таблица (Relation)на списание товаров из приходов.

Далее при необходимости набрать товар на расход (продажа, перемещение, списание и прочее) смотрим наши приходы, за вычетом записей из Relation.
Сам алгоритм можно и в сети найти, находил как-то... Но могу свой скинуть, если вдруг решитесь разобраться в чужом коде (MS SQL).
Вот тут примерный образец того как у нас это выглядит. Часть таблиц как Товары, Подразделения я не указал.
391f85d2dbe6443fa3c6896f5d1d6952.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы