* fix: Don't allow negative qty in SO/PO
* fix: Type casting for safe comparisons
* fix: Grammar in error message
* fix: Negative rates should be allowed via Update Items in SO/PO
* fix: Use `non_negative` property in docfield & emove code validation