Receiving Batches¶
In all cases, “receiving” in Rattail involves a batch.
Each batch is created with a certain “workflow” and this will determine some of the behavior described below. But see also Receiving Workflows for more info.
Batch Life Cycle¶
All receiving batches have the following general life cycle in common:
batch is created
(optional) batch is reviewed and/or updated
(optional) batch is marked “complete”
batch is executed
Most of this is already described in Receiving Workflows but here we’ll add some notes regarding the review/complete steps in particular.
Batch “Complete” Flags¶
The idea is to introduce a step for sake of “handing off” the batch from one user to another. For instance there might be several users capable of “receiving” in general but maybe only one user should be actually executing the batches.
There are 2 flags for use with this idea:
“receiving complete”
“complete” (i.e. “review complete” or “fully complete”)
So a complete typical life cycle might look like:
batch is created with invoice file, by user A
batch is manually received (updated) via mobile phone+scanner
user A marks batch as “receiving complete” (sets 1st flag)
user B then reviews batch and adjusts costs as needed etc.
user B marks batch as (fully) “complete” (sets 2nd flag)
user C executes batch and performs any follow-up tasks
Note that the app should “lock down” the batch if either of these flags are set. Meaning, the received quantities should be frozen and not allow adjustment. (Flags can be un-set if further adjustments are needed; then flags should be set again when complete.)
Note also that user C for instance can probably see “all” batches regardless of their current state and complete flags etc. They either “just know” how to filter the batches to find things ready to process, or perhaps a custom view is defined to help with that.