...
All fields that you intend to be updatable after the Quote is approved must be set as alwaysEditable. When you save the Quote, only updates to alwaysEditable fields alwaysEditable fields are saved. The Quote logic is run.
For example, you can set only Opportunity Name as alwaysEditable. The code in the Quote header logic will look like this:Code Block language groovy quoteProcessor.addOrUpdateInput( "ROOT", ["name": "OpportunityName", "label": "Opportunity Name", "type" : InputType.STRINGUSERENTRY, "readOnly": api.global.isOpportunity, "required": false, "parameterGroup": "Opportunity and Project Information", "alwaysEditable": true ] )
With old Quoting enable enabled (Ember):
On the Feature Flags page in the quoteButtonsConfiguration section enable the following flags:showAssignOpportunityOnApproved
showSaveButtonOnApproved (from version 6.0, this flag is no longer available but the Show button will be visible if there are always-editable fields)
With new Quoting enabled (React):
Modified inputs with the alwaysEditable flag are stored automatically. By default, the calculation is also run automatically. If this behavior is not suitable, configurerecalculateQuoteOnAlwaysEditableChangeInWorkflowStatuses
appropriately as described in /wiki/spaces/LEARN/pages/2827485214.
In the same way (setting fields as 'alwaysEditable') you can update approved Agreements/Promotions, Rebate Agreements or Sales Compensations. Note that if the user has the DataIntegration user role assigned, this functionality may not work correctly.