Order Hold should be an Infoplus action -- just like everything else in IP
J
Jonathan Friedman
started a topic
9 months ago
"Infoplus orders have an attribute called the hold code that is used for two purposes:"
-- Yup. That's what a hold system should do. Great. Obviously, this design is terrible (hold should be a status/process/action like every other status/process/action in Infoplus -- why is holding treated differently?).
-- A grouping mechanism that holds orders out of normal processes
This is really bad normalization. Grouping and holding are completely orthogonal. There should be one universal grouping mechanism (most systems call this "tags" -- IP has tags) and a mechanism for ship complete (IP already has this -- the binary ShipComplete field). If you want to have a process that combines them (create a group of held orders), IP already has a convention for this called "quick" (quick receipt, quick adjustment, etc), so add a "quick hold" process.
-- Controls whether an order is 'ship complete'
Except this is redundant. You have a normalized ship complete (ShipComplete field) and this mushed-up ship complete (ShipComplete:True in combination with HoldCode: Y).
It's all just a pointless tangle of complications, when IP already has a beautifully simple and powerful data model: tables, records, fields -- modified by -- actions, triggering processes, changing statuses.
Jonathan Friedman
"Infoplus orders have an attribute called the hold code that is used
for two purposes:"
-- Yup. That's what a hold system should do. Great. Obviously, this
design is terrible (hold should be a status/process/action like every
other status/process/action in Infoplus -- why is holding treated
differently?).
-- A grouping mechanism that holds orders out of normal processes
This is really bad normalization. Grouping and holding are
completely orthogonal. There should be one universal grouping
mechanism (most systems call this "tags" -- IP has tags) and a mechanism for ship complete (IP already has this -- the binary ShipComplete field). If
you want to have a process that combines them (create a group of held
orders), IP already has a convention for this called "quick" (quick
receipt, quick adjustment, etc), so add a "quick hold" process.
-- Controls whether an order is 'ship complete'
Except this is redundant. You have a normalized ship complete
(ShipComplete field) and this mushed-up ship complete
(ShipComplete:True in combination with HoldCode: Y).
It's all just a pointless tangle of complications, when IP already has a beautifully simple and powerful data model: tables, records, fields -- modified by -- actions, triggering processes, changing statuses.
Infoplus needs to be more like Infoplus ;-)
3 people like this idea