Unintuitive Rounding

I just had a customer call with a billing mistake that helped me uncover what I would consider to be a bug in Knack. I suppose it's more like a design choice that I think should be reconsidered, as it leads to frustrated/confused users:

Qty Field - Number with no decimals, default rounding

Unit Price Field - Number with 2 decimals, default rounding

Total Price - Equation - {Qty} * {Unit Price}


If you enter a fractional number for quantity (19.5, for example), Qty will always display 20, as you would expect. The problem is that the number has NOT been saved as 20 in the underlying database, so if you make the Unit Price $10.00, you'll get a Total Price of $19.50, which certainly isn't intuitive. Even if you click edit, you'll always see 20 as the amount to edit.


Knack really doesn't have a way to separate the display from the underlying value, so it's my opinion that the amount should be rounded per the field definition at the time it is initially entered and stored in the database.


At the very least, I feel pretty strongly that the "edit" box should contain the full unrounded amount because clicking edit, not changing anything, and then clicking OK shouldn't intuitively change anything, and yet it currently does.

2 Likes