-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathQCP_customActionPluginExample.js
More file actions
25 lines (22 loc) · 976 Bytes
/
Copy pathQCP_customActionPluginExample.js
File metadata and controls
25 lines (22 loc) · 976 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// *When to use it:* When advanced pricing logic is required on a Clone action, leverage this custom action plugin to set field values on the source record, cloned record and Quote. Clone custom actions include:
// Sample use case
// When cloning a Quote Line, the discount on the new, cloned quote line should be reset to blank field values.
//Before cloning takes place
export function onBeforeCloneLine(quote, clonedLines) {
clonedLines.originalLines.standard.forEach(function (line){
//do stuff
});
return Promise.resolve();
}
//After cloning occurs
export function onAfterCloneLine(quote, clonedLines) {
clonedLines.originalLines.standard.forEach(function (line){
//do stuff to Original, Source lines
});
clonedLines.clonedLines.standard.forEach(function (line){
//do stuff to new, cloned lines
line.record["SBQQ__Discount__c"] = null;
line.record["SBQQ__AdditionalDiscountAmount__c"] = null;
});
return Promise.resolve();
}