Operational complexity
Cost is the hard part. Stock on hand, unit cost, receivable balance, and gross margin cannot be stored as columns — columns drift, and once they drift nobody trusts the report again. The correct model is the one the legacy system got right: a document never stores its effects, it posts immutable movements, and every balance is an aggregate over those movements.
