Cas d’utilisation : Utilisation du module d’extension Salesforce Quote Calculator pour intégrer des données depuis des devis et des lignes de CPQ devis Salesforce

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 2 minutes de lecture
  • Dans la version 1.7 ou antérieure du CPQ package Extension for Salesforce CPQ, utilisez le module d’extension Salesforce Quote Calculator pour analyser les informations étendues à partir d’une configuration et les mapper aux champs personnalisés.

    Remarque :
    Cet article s’applique à l’extension pour le CPQ package Salesforce CPQ version 1.7 ou antérieure. Si votre version est 1.8 ou ultérieure, reportez-vous à la section Cas d’utilisation : configuration du flux d’élément de ligne vers la ligne de devis.

    En utilisant les informations étendues de l’objet CPQ ProductList avec le module d’extension Salesforce Quote Calculator (QCP), les données peuvent être transmises à Salesforce et utilisées pour manipuler les informations de devis et de ligne de CPQ devis.

    ProductList.extended ne peut être rempli que d’une action avancée de produit, comme indiqué ici.

    Code de fonction avancée

    L’objet ProductList.extended prend la forme d’un objet JSON et accepte les paires clé :valeur. Dans l’exemple ci-dessus, nous passons par une chaîne de texte factice, « QCP Test Value », avec la clé newValue. ProductList.extended peut contenir des valeurs de champ, ainsi qu’un tableau d’objets JSON.

    Lorsque ce produit est ajouté à la nomenclature (BOM), nous pouvons afficher ses informations associées dans l’objet personnalisé « Données BOM », qui est conservé sur la ligne de devis du produit configurable.

    Code de

    Pour exploiter ces informations étendues, nous devrons utiliser le plugin Calculateur de devis. Pour commencer, accédez à l’élément Scripts personnalisés dans Salesforce.

    Performances

    Ici, vous pouvez écrire un script pour exploiter les informations CPQ étendues et les utiliser pour manipuler les champs dans SFDC. Le script suivant est l’exemple de script utilisé dans cette instance.

    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();
    }; 

    Tous les champs de devis ou de lignes de devis référencés par le script personnalisé doivent être explicitement définis dans les entrées appropriées de l’enregistrement de script personnalisé. Notre exemple de script référence trois champs de ligne de devis : LGK_BomData c, SBQQ_ProductCode c et Test_Text c.

    Une fois votre script écrit, définissez-le dans les paramètres Salesforce CPQ. Procédez comme suit :

    1. Dans Configuration, recherchez « Packages installés » à l’aide du résultat rapide.
    2. À côté de « Salesforce CPQ », cliquez sur Configurer.
    3. Sélectionnez l’onglet Pricing and Calculation (Tarification et calcul).
    4. Si nécessaire, désélectionnez Use Legacy Calculator (Utiliser le calculateur hérité).
    5. Sélectionnez l’onglet Modules d’extension.
    6. Définissez votre script personnalisé dans le module d’extension Calculateur de devis, puis cliquez sur Enregistrer.

    Graphique de performances

    Lorsque vous accédez à votre devis et déclenchez une action qui effectue un calcul dans SFDC (comme cliquer sur « Calculer »), le module d’extension Calculateur de devis s’exécute et modifie les champs comme indiqué.