It talks to the world through documents. Your employees
interact with each other through documents.
We don't work with every document a company has —
only the ones that change its material state: what happens to goods
and money. A document here is a recorded fact: what moved, where
from, where to, at what price, and how much.
Which documents we track
A company has plenty of documents, and they're all
different: technical documents describe production, engineering documents describe
how something is built, HR documents track policy, job descriptions describe a
person's role, management orders run the company. We don't work with any of those —
only with documents that change the company's material state.
What a document is made of
A document is a recorded fact: something that
happened to goods or money, who was involved, when, and which operation was carried
out. Every such fact has five parts: what moved, where from, where to, the price it
left at and the price it arrived at, and how much. This is the foundation of every
operation we run in the system — always. If an operation doesn't have these five
parts, it isn't one of ours.
Operations combine into a document. Every operation
inside one document always shares the same «from» and «to», and the same reason the
document exists in the first place.
Draft and processed
A document is either a draft or processed. While
it's a draft, you can freely edit it — nothing has happened yet. Processing is the
moment the system applies it: stock, money, statuses all update. From that point on
it's locked — a user can't edit it directly, only return it to draft as an explicit,
recorded action, never a silent change. Even fixing a mistake is recorded by the
system and needs its own document.
Stock is always "right now"
It isn't stored separately — it's calculated on the
spot from every processed document. Looking at what stock looked like on a past date
works the same way: not a stored record, just the same calculation rewound.
The order documents get entered in
Documents get entered in whatever order things
actually happened, not necessarily strict date order. You can process today's
document first and add a forgotten one from last week later. The system only steps
in to stop something that would create a contradiction further down the chain. For
example: you try to sell an item on the 5th, but according to the documents it only
arrived on the 10th. Even though the item is physically on the shelf, the system
won't let that sale go through — it would break the order of the lots.
Lots
Every stock line belongs to the specific document
that created it. Lots aren't averaged together. The same item received twice at
different prices is two separate lots, each with its own history. An expenditure
writes off from a specific lot, so the cost is always exact. Even if two lots match
on everything except the arrival date, they're still separate lots. But if you need
to write off more than a single lot holds, the system splits the write-off across
several lots in order automatically.
Our operations
In practice, we work with the following operations
that move goods or money:
- Receiving (+) — goods arrived into stock
- Expenditure (−) — goods left stock
- Transfer — goods left one warehouse and arrived at another
- Cash/Bank — money movement
- Manufacture — a product assembled from components
- Correction — a price change with no goods movement
Separately, some documents don't move anything
themselves — they just track an intention:
- Order — what the customer wants
- Project — what we ourselves intend to order
If this works for you — let's go on. If not, you need a
different program.