Estimate/Quote
An estimate transaction, sometimes referred to as a quote, is a non-posted record of estimated charges to a customer. An estimate can be printed, emailed, or faxed to the customer. After the customer accepts the estimate, it can be converted into a sales order, invoice, or cash sale. This transaction is available when the Estimates feature is enabled at Setup > Company > Enable Features, on the Transactions subtab.
Estimates have no accounting impact until they are converted into invoices or cash sales.
For more details about this type of transaction, see Estimates.
The estimate/quote record is defined in the tranSales (sales) XSD.
Supported Operations
The following operations can be used with estimate records:
add | addList | attach / detach | delete | deleteList | get | getDeleted | getList | getSavedSearch | getSelectValue | initialize / initializeList | search | update | updateList | upsert | upsertList
You can also use the asynchronous equivalents of SOAP web services list operations. For information about asynchronous operations, see SOAP Web Services Asynchronous Operations. For more information about request processing, see Synchronous Versus Asynchronous Request Processing.
Field Definitions
The SOAP Schema Browser includes definitions for all body fields, sublist fields, search filters, and search joins available to this record. For details, see the SOAP Schema Browser’s estimate reference page.
For information about using the SOAP Schema Browser, see SOAP Schema Browser.
The balance field is only returned when using advanced search. It is not returned when using the <Record>SearchBasic search object. In advanced search, you must set the bodyFieldsOnly preference to false. The balance field is not returned if the bodyFieldsOnly preference is set to true. For more information, see bodyFieldsOnly.
Usage Notes
Initializing Estimates
You can initialize an estimate from an Opportunity.
The SOAP web services initialize operation emulates the UI workflow by prepopulating fields on transaction line items with values from a related record. For more information about this operation, see initialize / initializeList.
Accessing Serial/Lot Number Data for Line Items
As of the 2011.2 endpoint, code to access serial number or lot number data varies according to whether the Advanced Bin Management / Numbered Inventory Management feature is enabled.
-
If this feature is enabled, you must use the 2011.2 endpoint or later to access the Inventory Detail subrecord and the most up-to-date bin and numbered inventory fields. You need to update any SOAP web services code from a previous endpoint that accesses these fields, to avoid errors or unexpected results.
-
If this feature is not enabled, you do not need to use the Inventory Detail record to access bin and numbered inventory fields and you do not need to update any related SOAP web services code from prior to 2011.2.
For more details, see Updating SOAP Web Services Code When Advanced Bin / Numbered Inventory Management is Enabled.
Setting Handling Cost
If you want to set a value for handlingCost, be aware of the following guidelines.
Only Certain Shipping Methods Allow Handling Cost To Be Set
In both the UI and in SOAP web services, the default behavior of the system is that you cannot specify a handling cost on a new estimate. To be able to enter a value for handling cost, you must choose a shipping method that enables the handling cost field.
You can identify an appropriate shipping method by reviewing the details for the corresponding shipping item. Choose Lists > Accounting > Shipping Items, then select the shipping item you want to review (each shipping item corresponds with a shipping method). In the item record, review the details on the Handling Rate subtab. If the Handling - No Handling Charge is not selected, then choosing this shipping item lets you set a handlingCost value.
![An example of setting handling costs.](img/SuiteCloudCustomizationScriptingWebServices/SuiteTalkWebServices/SOEstimateHandlingCost.png)
During an add operation, you must set the shipMethod value in the same SOAP request where you set the handlingCost value. If you fail to set any value for shipMethod, or if you choose a value that does not enable the handling cost field, the system generates an error reading in part “You do not have permissions to set a value for element handlingcost.”
You Must Specify a Shipping Cost
If you are doing an add operation, be aware that in some cases the system may overwrite the handlingCost value specified in your SOAP request. To avoid this, make sure that your SOAP request include a shippingCost value. If you fail to include a shippingCost, the system overwrites your handlingCost value with an automatically generated value.
This behavior is specific to the add operation. During an update, it is possible to set a value for handlingCost without specifying the shippingCost.