В этой статье предлагается простой, и, надеюсь, полезный взгляд, к моделированию объектов товародвижения. Используя для этого всего лишь несколько "цветов" (не более 4х цветов).
О пользе и необходимости "моделирования" не только процессов внутри программы, но и построения модели самого бизнес-процесса написано очень много и все как бы о необходимости построения модели, но... никто (или почти никто) этого не делает в реальности.
Всё это многообразие различных терминов и понятий... как-то сложно и непонятно...
А давайте упростим схему товародвижения, попробовав нарисовать то, что написано в определении... закупка и перемещение - складирование - продажа и доставка до конечного клиента
графически можно представить как "квадратики" разного цвета,
давайте обозначим красным цветом и буквой R(red)- покупателей, а зелёным (Green) - поставщиков и их товары... т.е. как "незрелые" молодые яблоки... созревают и уже красными "опадают" в руки покупателей.
Тёмным (Dark) цветом - (как бы бесцветным) - обозначим наши товары на наших складах.
Сразу из схемы видно 2 "дополнительные" переходные области:
- зелено-черная - это товар поставщика "в пути" к нам,
- черно-красная область - это наш товар "в пути" к покупателю...
А движение товаров... для наглядности выделено стрелками: Закупка - GD и Продажа -DR.
Такого я что-то нигде не видел, уж простите, если "Америку открыл" или "велосипед изобретаю"...
Для полноты картины надо добавить "обратные" движения - возврат поставщику и возврат от покупателя, т.е. наши "прямоугольники раздвигаются... и превращаются в точки, через которые можно провести 2 прямые G-D и D-R.
Для комиссионной схемы и ОТХ (или производства) - надо добавить ещё одно измерение B (blue)...
Это и есть упрощённая графическая схема товародвижения... в 4х цветах... и 3х измерениях...
надо понимать под
{R} - "множество" всех покупателей {Ri, i = 1,2...Nr}
{G} - "множество" всех поставщиков {Gi, i = 1,2...Ng}
{B} - "множество" всех клиентов ОТХ / комиссионеров {Bi, i = 1,2...Nb}
RGB - может быть просто справочником Контрагенты, в индекс i - не обязательно идёт "подряд" и может быть просто кодом справочники.
{D} - "множество" всех складов во всех филиалах {Di, i = 1,2...Nd} - это просто справочник "Склады"
Поэтому схема называется RGB+D.
для производственной компании - в качестве 3-го измерения будет выступать не ОТХ, а склады (аналог D) для материалов, полуфабрикатов и готовой продукции в производстве (со всеми этапами).
Далее эту модель можно развивать, например введя, например - заказы... в виде пунктирных (или волнистых) линий...
Эти "стрелки" -> в 1С являются обычными "документами", а "точки" - это регистры накопления с движениями по "Номенклатуре" и одному из "измерений"...
Как я говорил в начале... многие забывают про "движения" внутри складов...
Для этого надо склад D превратить в массив складов {D1 , D2 , ... Dn}
Тогда документ Перемещение товаров можно отразить на графической схеме, используя стрелки из i-го склада Di в k-ый склад Dk,
Оприходование как стрелка из ниоткуда на i-ый склад Di,
Списание будет выглядеть как стрелка с k-го склада Dk в никуда.
Для удобства записи, вместо стрелок можно использовать запись "прихода" |Di> и "расхода" <Dk| ... как операторы "рождения" / "уничтожения" в квантовой физике
Используя такую запись - Перемещения с i-го склада на k-ый склад можно представить с помощью этих же операторов над множеством перемещаемых Товаров {Tj} как "уничтожение" товаров с i-го склада и "рождения" их на k-ом складе в виде двойного оператора над "вектором" товаров... <Di| {Tj} |Dk> или схематично
j-ый товар с i-склада перемещается на k-ый склад:
Tj(Di) -> <Di|Tj|Dk> -> Tj(Dk)
Аналогичные операторы можно использовать вместо всех разноцветных линии.
Примеры:
ПРИХОД (от поставщика)
1) Сначала делается "Заказ поставщику" (в терминах 1С это "+" движением по регистру накопления "Заказы поставщикам", но это "мнимый" остаток, его ещё нет, поэтому обозначим такие движения маленькой буквой g) , или в виде оператора "рождения" |g>
"Мнимые" движения на графике лучше отражать не сплошной, а например, пунктирной линией. Т.е. движение по "Заказу поставщику" будет выглядеть одной линией от i-го поставщика.
2) Документ "Поступление товаров от поставщика" должен "закрыть" движение по "Заказу поставщику" и сделать "+" движение товаров на склад.
Это будет выглядеть как "-" движение по Заказу поставщику, т.е. оператором "уничтожения" мнимых остатков i-го поставщика <gi|
и "рождения" реального товара на нашем k-ом складе |Dk>, сокращенно это будет выглядеть <gi|{Tj}|Dk>
Картина с использованием резерва на складе "под заказ" и для полной картины "реальных" и "мнимых" движений, а так же используя принцип "двойной записи" как в бух.проводках требуется дополнить это движение "реальным" перемещением товара от поставщика на склад <Gi| Dk> и отдельно закрытие "мнимых" остатков на нашем складе <gi|dk>
Графически это означает изменение цвета линии <GD> - c зеленого на черный, аналогично <gd> пунктирная зелено-черная линия, но с обратным направлением "мнимых" остатков, т.е. производится "резерв под заказ" у поставщика.
Дальнейшее развитие схем - Вы уже сможете делать самостоятельно...