fix: Negative Qty and Rates in SO/PO (#38252)
* 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
(cherry picked from commit b9f5a1c85dc29acc22e704d866178a98f3035c1d)
Co-authored-by: Marica <maricadsouza221197@gmail.com>