Loading

Formules prises en charge du calculateur avancé Salesforce CPQ

Date de publication: Apr 21, 2025
Description
Les champs de formule et les formules de règle de prix peuvent référencer des champs ou des relations soumis aux restrictions suivantes.
 
Remarque : Si vous tentez de calculer un devis qui référence des formules/fonctions non valides ou des relations de recherche incorrectes, vous rencontrez probablement l’erreur 'Cannot read property 'split' of null'. Pour résoudre l’erreur, vérifiez que vos formules dans Règles de prix/QCP respectent les directives suivantes.
Résolution

Fonctions et formules non prises en charge

Les variables et fonctions suivantes ne sont pas prises en charge. Les champs de formule qui les référencent ne sont pas évalués et les formules de règles de prix qui les référencent provoquent l’échec des calculs.

  1. DISTANCE()
  2. GEOLOCATION()
  3. GETSESSIONID()
  4. ADDMONTH()
  5. Variables globales, c’est-à-dire les variables commençant par $
  6. ISCHANGED


Référencement de champs standard sur des objets standard (disponible à partir de CPQ v214 Summer '18)

Soyez vigilant lorsque vous référencez des champs standard sur des objets standard, notamment les types non texte, car ces champs peuvent provoquer l’échec des formules. Pour résoudre le problème, créez un champ de formule sur l’objet en question qui référence le champ standard, et référencez plutôt ce champ dans votre formule. Par exemple, une référence à Compte. Industry provoque l’échec d’une formule, créez une formule sur Compte qui contient la valeur de Compte. Industry et référencez-la. Les champs standard suivant (entre autres) sont universels pour tous les objets Salesforce. Vous pouvez par conséquent les utiliser dans toutes les formules comme dans l’approche mentionnée précédemment. 

1. CreatedDate
2. LastModifiedDate
3. Prénom
4. OwnerId
5. CreatedById
6. CurrencyIsoCode


Référencement d’objets de recherche

Les formules ne doivent pas référencer directement des relations de recherche qui ne proviennent pas des objets Devis, Ligne de devis ou Groupe de lignes de devis. Voici une série d’exemples.

 

1. Les formules de ligne de devis suivantes sont ACCEPTABLES :
1. IF(SBQQ__Existing__c, SBQQ__PriorQuantity__c * SBQQ__ListPrice__c, SBQQ__Quantity__c * SBQQ__ListPrice__c). Cette formule ne référence aucune relation de recherche.
2. IF(SBQQ__Quote__r.SBQQ__StartDate__c < TODAY(), 'PAST', 'FUTURE'). Cette formule référence l’objet Devis.
3. Product__r.Name & ' ' & Product__r.ProductCode. Cette formule référence la relation Product__r, qui provient de l’objet Ligne de devis.
4. SBQQ__Quote__r.Account__r.Name. La relation Account__r provient de l’objet Devis, et est donc acceptable.
2. Les formules Ligne de devis suivantes ne sont PAS ACCEPTABLES :
1. IF(Product__r.SBQQ__DiscountSchedule__c.IsCrossOrders__c, 'Hooray', 'Boo'). La relation DiscountSchedule__r provient de l’objet Produit. Pour résoudre ce problème, créez un champ de formule sur l’objet Produit qui référence DiscountSchedule__r.IsCrossOrders__c, et référencez plutôt ce champ. Par exemple, IF(Product__r.IsDiscountCrossOrders__c, 'Hooray', 'Boo').
2. SBQQ__Quote__r.Opportunity2__r.Contract__r.Description. La relation Contract__r provient de l’objet Opportunité. Pour résoudre ce problème, créez un champ de formule sur l’objet Opportunité qui référence Contract__r.Description, et référencez plutôt ce champ. Par exemple, SBQQ___Quote__r.Opportunity2__r.ContractDescription__c.


REMARQUE : Les 3 restrictions mentionnées précédemment s’appliquent à tous les champs qui répondent aux deux critères suivants :

1. Le champ existe sur l’objet Devis, Ligne de devis ou Groupe de lignes de devis.
2. UN OU PLUSIEURS des énoncés suivants est vrai :
  • Le champ est affiché dans l’éditeur de ligne.
  • Le champ est référencé par un plug-in de calculateur de devis.
  • Une condition de prix référence le champ dans sa formule testée ou formule de filtre, ou l’utilise comme champ testé.
  • Le champ est utilisé comme champ testé d’une requête de recherche.
  • Une action de prix utilise le champ comme champ source, ou le référence dans sa formule source.
  • Le champ est utilisé comme champ de quantité personnalisé pour un prix par bloc ou barème de remise.
  • Le champ est utilisé comme champ de contrainte d’un barème de remise.
  • Une variable de résumé utilise le champ comme champ agrégé, champ de filtre, ou champ de contrainte.
  • Le champ est référencé par un autre champ qui répond à un ou plusieurs des critères précédents dans cette liste à puces.
Numéro d’article de la base de connaissances

000383094

 
Chargement
Salesforce Help | Article