Rounding Calculated Prices

Using the price formulas allows flexibility and convenience when pricing inventory items, but may generate results that are not rounded in the desired way. For example, a formula price may result as $6.71 instead of rounding to $6.75 or $821.11 instead of $825.00. EBMS contains rounding tables that can be used to solve this problem. There are two steps require to setup price rounding:

  1. Go to Inventory > Options > Price Levels tab.

image\ebx_-1829836832.gif

The Round option must be turned ON for the rounding feature to be applied to individual price levels. Click on the Properties button and turn the Use rounding tables to calculate prices for this level switch ON. Click the OK button a repeat for each price level.

  1. Go to Inventory > Options > Inventory Folders tab.

image\ebx_-1694726481.gif

A rounding table can be setup or changed within each folder or subfolder. To setup the same rounding table for all the folders, highlight the root Inventory folder and click the Edit Defaults button. The defaults inventory window will open which is similar to the standard inventory window with exception of an extra tab labeled Rounding. Click on the Rounding tab to view the rounding table shown below:

image\ebx_-1368547768.gif

The Limit column identifies the price rounding price range and the Round column determines the rounding factor. In the example above, the price will not round for any amount less than 30 cents. Any price between 30 cents and 2 dollars will be rounded to the nearest 5 cents. Any price that does not fall within the price range set by the Limit column will not be rounded.

The Expression column is used to create special rounding exceptions that can be ignored for general rounding needs. The Dbase Expressions in the example shown above will be explained below:

IIF(VAL(STR(N#,10,0))=N#,N#-.01,N#)

This expression will change all rounded prices that result in an even dollar amount, to a penny less. For example, if the resulting price were $5.00, the price would be changed to $4.99. The English version of this Dbase expression is "If the rounded value is equal to the value then subtract .01 from the value otherwise do not change it. The expression on line 4 - IIF(VAL(STR(N#,10,0))=N#,N#-.05,N#) – is the same as lines 2 and 3 except that the value is reduced by 5 cents if the result is an even dollar. The expression on line 5 always deducts 5 cents from the rounded price since the Round column is set to always round the price to the nearest dollar.

The rounded value in Lines 6 and 7 are only changed when the result is rounded to the nearest $10 [VAL(STR(N#/10,10,0)=N#/10] or $100 [VAL(STR(N#/100,10,0)=N#/100], respectfully.

Click on Filter down entire table button to copy the rounding table to all subfolders.

Click OK button to save.