Hi Lance,
The EstimateLine grid's Update link saves the grid and refreshes it. My thinking is that it's simply a Save Grid action and a Refresh Grid action. It is hard-coded and non-customizable to ensure that we remain consistent with QuickBooks, and are not undermining the process by which QuickBooks would calculate these fields itself. Here is a summary of our stock EstimateLine fields and their purposes, to give some insight into how these fields are calculated:
Rate: This is automatically populated with the item's cost from QuickBooks. However, if there is no cost information in QuickBooks, this field will be automatically populated with the sales price.
MarkupRate: This is either a dollar amount or a percentage (as indicated by IsMarkupPercent) that is used to adjust the Rate. If there is also a sales price in QB, Method automatically adjusts the MarkupRate to reflect this difference. You can find the sales price in the SalesPrice field in the ItemService table.
IsMarkupPercent: "Yes" value lets Method know to calculate percentage markup to the Rate. "No" value simply adds the MarkupRate as a dollar amount to the Rate.
IsRatePercent: The % field in the stock Estimate screen. It can be used for items such as a discount item that performs a calculation using the item above it. For example, an item that calculates 10% off the item above it. If we uncheck this field, it would calculate $10 off instead of 10%.
Amount: The actual calculation seems to work in the following ways:
- If IsMarkupPercent = Yes, Rate x (1+MarkupRate/100) x Quantity (Dividing the MarkupRate by 100 turns the percent to a decimal)
- If IsMarkupPercent = No, (Rate + MarkupRate) x Quantity
- If MarkupRate = 0 Rate x Quantity
TotalAmount: Used for totalling all amounts of items that belong to a group.
Hope this helps.
- Justin