- Field1 (Custom attribute) = Total_Estimated_Value
- Field2 (Custom attribute) = Total_Discount
- Field3 (Standard attribute)= Est. Booking (estimatedvalue)
- Create the two custom attributes that you need by going to Settings, Customization, Customize Entities, open the Opportunity Entity, select Attributes, create two new money attributes, and save the changes.
- Open the Opportunity form and add the two fields to the form.
- Double-click (Open) the Est. Booking field (estimatedvalue) on the form and add the following line of script to the OnChange event of the field
crmForm.all. Total_Estimated_Value.FireOnChange(); - Open the Total_Discount field on the form and add the same script to the OnChange event of the field
crmForm.all.Total_Estimated_Value.FireOnChange(); - Open the Total_Estimated_Value field on the form and add the following script to the OnChange event of the field
crmForm.all.Total_Estimated_Value.DataValue=crmForm.all.estimatedvalue.DataValue – crmForm.all.Total_Discount.DataValue - Save your changes and test using the Create or Update Form feature from the Customization Tool
The end result will be that whenever the Total_Discount or Est. Booking field is updated the Total_Estimated_Value will update by subtracting the Total_Discount from the Est. Booking amount.
Please note that this example assumes there is always a value in the Est. Booking and Discount field when one of those fields are updated. You may have to add some additional code that first checks to see if there is a value in the Total_Discount and Est. Booking field before firing the “crmForm.all.Total_Estimated_Value.FireOnChange();” script. If there is no value (null), then you will have to set the value to 0 (zero). Checking and setting the default value of the fields to 0 can be done in the Form properties OnLoad event.
Thanks for this wonderful post. I definitely like the content you put up on your web page. Added to my bookmarks for future visits.