사용 사례: Salesforce 견적 계산기 플러그인을 사용하여 Salesforce 견적 및 견적 라인의 데이터 CPQ 통합
Salesforce CPQ 패키지용 확장 버전 1.7 이하에서 CPQ Salesforce 견적 계산기 플러그인을 사용하여 구성에서 확장된 정보를 구문 분석하고 사용자 지정 필드에 매핑합니다.
Salesforce 견적 계산기 플러그인(QCP)과 함께 ProductList 객체의 CPQ 확장 정보를 사용하여 Salesforce에서 CPQ Salesforce로 데이터를 전달하고 견적 및 견적 라인 정보를 모두 조작하는 데 사용할 수 있습니다.
ProductList.extended는 이와 같이 고급 제품 작업으로만 채울 수 있습니다.
ProductList.extended 객체는 JSON 객체의 형식을 취하며 키:값 쌍을 허용합니다. 위의 예에서는 newValue 키를 사용하여 더미 텍스트 문자열 "QCP Test Value"를 전달합니다. ProductList.extended는 필드 값과 JSON 객체의 배열을 보유할 수 있습니다.
이 제품이 BOM(자재 명세서)에 추가되면 구성 가능한 제품의 견적 라인에 보관된 사용자 지정 객체 "BOM 데이터"에서 관련 정보를 볼 수 있습니다.
이 확장된 정보를 활용하려면 견적 계산기 플러그인을 사용해야 합니다. 시작하려면 Salesforce에서 사용자 지정 스크립트 항목으로 이동하십시오.
여기에서 확장된 정보를 CPQ 활용하는 스크립트를 작성하고 이를 사용하여 SFDC의 필드를 조작할 수 있습니다. 다음 스크립트는 이 인스턴스에 사용되는 샘플 스크립트입니다.
export function onBeforeCalculate(quote, lines) {
var result;
var resultValue;
var product_code = "headlessItem3";
if (lines != null) {
lines.forEach(function (line) { //Parsing all quote lines to find BOM Data object
if(line.record["LGK__BomData__c"] != null){
var configJson = JSON.parse(line.record["LGK__BomData__c"]);
var itemsJson = configJson["items"]; //Create JSON object containing all items in BOM data
itemsJson.forEach(function(itemsLine){ //For each item in the BOM Data
if(itemsLine["productCode"] == product_code){ //Checking for item "headlessItem3"
result = itemsLine["extended"]; //Parses extended information to find "newValue"
resultValue = result["newValue"]; //Assigning keyed value of "newValue"
}
});
}
});
lines.forEach(function (line) { //For each line in the quote
if (line.record["SBQQ__ProductCode__c"] == product_code){ //Checking for the line item "headlessItem3"
line.record["Test_Text__c"] = resultValue; //Setting the quote line field "Test Text" with the value of resultValue
}
});
}
return Promise.resolve();
};
사용자 지정 스크립트에서 참조하는 견적 필드 또는 견적 라인 필드는 사용자 지정 스크립트 기록의 적절한 입력에 명시적으로 정의되어야 합니다. 샘플 스크립트는 세 개의 견적 라인 필드(LGK_BomData c, SBQQ_ProductCode c 및 Test_Text c)를 참조합니다.
스크립트가 작성되면 Salesforce CPQ 설정에서 정의합니다. 다음과 같이하세요:
- 설정에서 Quick FInd를 사용하여 "설치된 패키지"를 검색합니다.
- 'Salesforce CPQ' 옆에 있는 구성을 클릭합니다.
- 가격 책정 및 계산 탭을 선택합니다.
- 필요한 경우 레거시 계산기 사용을 선택 취소합니다.
- 플러그인 탭을 선택합니다.
- 견적 계산기 플러그인에서 사용자 지정 스크립트를 정의한 다음
저장을 클릭합니다.
견적으로 이동하여 SFDC에서 계산을 수행하는 작업(예: "계산" 클릭)을 트리거하면 견적 계산기 플러그인이 실행되고 지정된 대로 필드를 수정합니다.