At a guess (and it's only a guess), the submitted form is possibly nulling out the $0.00 field when it hits whatever database, and poorly written code is causing the rest.
I.e. "If $AMOUNT > 0 and $AMOUNT <= $MAX_APPROVAL_LEVEL, then FINE else SCREAM"
I work with a system that will not accept $0.00 anywhere, but for some reason will accept $0.001 and round to $0.00. Inventory control/POS/accounting software.
Comments
At a guess (and it's only a guess), the submitted form is possibly nulling out the $0.00 field when it hits whatever database, and poorly written code is causing the rest.
I.e. "If $AMOUNT > 0 and $AMOUNT <= $MAX_APPROVAL_LEVEL, then FINE else SCREAM"
Just need that missing = to f*ck the whole thing up, so that seems like the most likely result