Cas d’utilisation : renseigner les noms d’affichage et les lignes de devis dans les objets de jeu de données de champ de configuration

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 8 minutes de lecture
  • Découvrez comment configurer des objets personnalisés et des déclencheurs Apex dans SFDC pour renseigner les noms d’affichage des CPQ champs.

    Dans le CPQ cadre du package géré, la fonctionnalité de l’objet Configuration Field Data Set dans SFDC est de renvoyer l’ID de configuration de la configuration, le nom de chaque variable de champ utilisée par le plan, la valeur de ce champ et l’étiquette de cette valeur après chaque enregistrement du CPQ configurateur :

    Liste de données de champ

    Toutefois, il peut y avoir des nécessités supplémentaires liées à la configuration en CPQ dehors de ces champs créés par le package géré dont une organisation a besoin pour les processus en aval. Par exemple, nous pouvons renseigner les noms d’affichage des CPQ champs ou accéder facilement à la ligne de devis des objets de données de champ de configuration associés pour une connexion facile à la nomenclature.

    Liste de données de champ

    Avec une petite configuration d’objets personnalisés et de déclencheurs Apex dans SFDC, ces champs peuvent être automatiquement remplis après l’enregistrement de chaque configuration.

    Prérequis

    Activez « Transmettre par push les données de configuration à l’objet Logik Salesforce » dans les paramètres d’administration si vous ne l’avez pas déjà fait. Cela lancera la création des objets Configuration Field Data Sets dans SFDC.

    Paramètres administrateur

    Remarque :
    La création de ces ensembles de données de champ de configuration se produira chaque fois qu’une configuration est enregistrée à partir de CPQ, même si l’estimation elle-même n’est pas enregistrée. Cela peut entraîner la création de beaucoup de données dans votre organisation Salesforce. Si vous n’avez pas de cas d’utilisation pour extraire tous les champs utilisés par le plan dans SFDC, il est préférable de laisser ce paramètre désactivé et de vous fier à la propriété Informations étendues dans les données BOM.

    Renseigner le nom d’affichage

    1. Dans la configuration SFDC, accédez au gestionnaire d’objets.
    2. Créez un objet personnalisé appelé « Étiquette LGK » avec les attributs suivants :
      • Nom de l’enregistrement : Logik Label
      • Type de données : numérotation automatique
      • Format d’affichage : LGKLB-{0000}
      • Autoriser la recherche : coché
      • Lancer un nouvel assistant d’onglet personnalisé après l’enregistrement de cet objet personnalisé : Coché
      Laissez les autres valeurs par défaut et cliquez sur Enregistrer.
    3. Sur la page Nouvel onglet d’objet personnalisé, cliquez sur le champ Style d’onglet et sélectionnez un style.
    4. Cliquez sur Suivant, cliquez à nouveau sur Suivant , puis cliquez sur Enregistrer.
    5. Cliquez sur Champs et relations sur l’étiquette LGK, puis cliquez sur Nouveau. Créez un nouveau champ avec les attributs suivants :
      • Type de données : Zone de texte
      • Étiquette de champ : étiquette
      • Nom de champ : étiquette
      Cliquez sur Suivant, cliquez à nouveau sur Suivant , puis cliquez sur Enregistrer.
    6. Cliquez sur Nouveau. Créez un nouveau champ avec les attributs suivants :
      • Type de données : Zone de texte
      • Étiquette de champ : variablename
      • Nom de champ : variablename
      Cliquez sur Suivant, cliquez à nouveau sur Suivant , puis cliquez sur Enregistrer.

    Ce nouvel objet LGK Label sera l’endroit où nous hébergerons le nom de variable de champ et le nom d’étiquette de champ dans SFDC. Les étiquettes ne seront pas automatiquement importées. Ils doivent également être mis à jour/importés manuellement de temps en temps avec des modifications et des ajouts aux champs dans CPQ Admin. Nous passerons en revue les méthodes d’importation en bloc plus loin dans ce guide.

    1. Dans le Gestionnaire d’objets, recherchez « Données du champ de configuration ».
    2. Cliquez sur Champs et relations, puis sur Nouveau. Créez un nouveau champ avec les attributs suivants :
      • Type de données : Zone de texte
      • Étiquette de champ : nom d’affichage
      • Nom de champ : Display_Name
      Cliquez sur Suivant, cliquez à nouveau sur Suivant , puis cliquez sur Enregistrer.
    3. Cliquez sur Déclencheurs, puis sur Nouveau.
    4. Collez le code suivant dans le bloc de code Apex :
      trigger UpdateConfigurationLabels on LGK__ConfigurationFieldData__c (before insert) {
      	// Step 1: Collect FieldKeys from records to be inserted
      	Set<String> fieldKeys = new Set<String>();
      	for(LGK__ConfigurationFieldData__c confData : Trigger.new) {
      		fieldKeys.add(confData.LGK__FieldKey__c);
      	}
      	
      	// Step 2: Query LGK_Label__c based on collected FieldKeys
      	Map<String, LGK_Label__c> labelMap = new Map<String, LGK_Label__c>();
      	for(LGK_Label__c label : [SELECT label__c, variablename__c FROM LGK_Label__c WHERE variablename__c IN :fieldKeys]) {
      		labelMap.put(label.variablename__c, label);
      	}
      	
      	// Step 3: Loop through records to be inserted and update Display_Name__c
      	for(LGK__ConfigurationFieldData__c confData : Trigger.new) {
      		LGK_Label__c matchedLabel = labelMap.get(confData.LGK__FieldKey__c);
      		if(matchedLabel != null) {
      			confData.Display_Name__c = matchedLabel.label__c;
      		} else if(confData.LGK__ValueLabel__c != null) {
      			confData.Display_Name__c = confData.LGK__ValueLabel__c;
      		}
      	}

    Le cadre est complet. Ajoutez le nouveau champ Nom d’affichage à la mise en page de l’ensemble de données du champ de configuration. Il ne reste plus qu’à importer les noms d’étiquettes de champs dans les objets LGK Labels. Selon la façon dont vous utilisez CPQ les champs, il existe trois méthodes pour y parvenir.

    Tableau 1. Méthodes d’importation d’étiquette de champFaçons d’importer les noms d’étiquettes de champs dans les objets LGK Labels

    Création manuelle CPQ d’étiquette

    1. Créer un objet Logik Label à partir de l’onglet LGK Labels
    2. Saisissez le « variablename » pour qu’il corresponde exactement au nom de la CPQ variable
    3. Saisissez l'« étiquette » pour être l’étiquette de votre choix

    Avantages :

    • Parfait si vous avez un petit nombre de champs pour lesquels vous avez besoin du nom d’affichage
    • Vous permet de personnaliser les noms des étiquettes de champs pour qu’ils soient différents de la façon dont ils apparaissent dans l’administrateur CPQ et la mise en page

    Inconvénient : processus peut être fastidieux pour un grand nombre de champs

    Importation en bloc à partir de l’exportation de tous les CPQ champs

    1. Dans l’onglet CPQ du champ Admin, cliquez sur Exporter
    2. Ouvrez le fichier CSV et supprimez toutes les données à l’exception des colonnes « B » et « C »
    3. Renommez les en-têtes en « label » et « variablename », puis enregistrez
    4. Dans SFDC, allez dans l’onglet Étiquette LGK et cliquez sur Importer
    5. Sélectionnez « LGK Labels »
    6. Sélectionner « Ajouter de nouveaux enregistrements »
    7. Sélectionnez votre fichier CSV enregistré
    8. Charger

    Avantages :

    • Bon pour un grand nombre de champs
    • Les champs globaux utilisés dans les plans seront étiquetés de manière cohérente dans SFDC

    Inconvénients :

    • Les noms d’étiquettes de champs, les champs partenaires et les champs système ne sont pas importés par cette méthode, de sorte que le nom d’affichage sera par défaut la valeur du champ
    • Ces champs peuvent être ajoutés manuellement en tant qu’objets d’étiquette LGK à l’aide de la méthode de création manuelle d’étiquettes

    Importation en bloc à partir de l’exportation de la mise en page du plan

    1. À partir du CPQ plan que vous souhaitez utiliser, accédez à votre mise en page et cliquez sur Exporter
    2. Ouvrir le CSV
    3. Filtrer la colonne « A » par « champ »
    4. Supprimer toutes les données à l’exception des colonnes « A », « D » et « E »
    5. Copiez les colonnes « D » et « E » dans un nouveau CSV, en renommant les étiquettes de champ de votre choix
    6. Dans SFDC, allez dans l’onglet Étiquette LGK et cliquez sur Importer
    7. Sélectionnez « LGK Labels »
    8. Sélectionner « Ajouter de nouveaux enregistrements »
    9. Sélectionnez votre fichier CSV enregistré
    10. Charger

    Avantages :

    • Bon pour un grand nombre de champs
    • Renseigne le nom d’affichage dans la mise en page pour tous les champs, y compris les champs d’ensemble, les champs système et les champs partenaire

    Inconvénients :

    • Seuls les champs utilisés dans la mise en page renseignent le nom d’affichage. Les champs qui ne sont associés qu’au plan créeront toujours des objets d’ensemble de données de champ de configuration dont les étiquettes seront nulles
    • Les champs utilisés dans plusieurs plans renseigneront uniquement le champ de nom d’affichage avec la première étiquette de champ importée de cette façon

    S’il existe des champs pour lesquels vous souhaitez afficher un nom d’affichage différent de celui que vous avez importé, vous pouvez facilement modifier l’objet Étiquette pour l’étiquette de votre choix et il commencera à remplir les ensembles de données du champ de configuration de cette façon après la mise à jour.

    Remplissez la ligne de devis

    1. Dans la configuration SFDC, accédez au gestionnaire d’objets.
    2. Recherchez « Données du champ de configuration ».
    3. Cliquez sur Champs et relations, puis sur Nouveau. Créez un nouveau champ avec les attributs suivants :
      • Type de données : Rechercher une relation
      • Associé à : Ligne de devis
      • Étiquette de champ : Ligne de devis
      • Nom du champ : Quote_Line
      Cliquez sur Suivant, cliquez à nouveau sur Suivant , puis cliquez sur Enregistrer.
    4. Dans le Gestionnaire d’objets, recherchez « Ligne de devis ».
    5. Cliquez sur Déclencheurs, puis sur Nouveau.
    6. Collez le code suivant dans le bloc de code Apex :
      trigger PopulateConfigFieldData on SBQQ__QuoteLine__c (after insert, after update) {
      	// Step 1: Collect the Configuration Ids from the new Quote Lines
      	Set<String> configIds = new Set<String>();
      	Map<String, Id> quoteLineMap = new Map<String, Id>(); // Mapping Configuration UUID to Quote Line Id
      
      	for (SBQQ__QuoteLine__c ql : Trigger.new) {
      		if (String.isNotBlank(ql.LGK__ConfigurationId__c)) {
      			configIds.add(ql.LGK__ConfigurationId__c);
      			quoteLineMap.put(ql.LGK__ConfigurationId__c, ql.Id); // Storing Quote Line Id
      		}
      	}
      	
      	if (configIds.isEmpty()) {
      		return;
      	}
      	
      	// Step 2: Query the Configuration Field Data records
      	List<LGK__ConfigurationFieldData__c> confFieldsToUpdate = [SELECT Id,LGK__ConfigurationId__c FROM LGK__ConfigurationFieldData__c WHERE LGK__ConfigurationId__c IN:configIds];
      
      	// Step 3: Update the Field Data records
      	for (LGK__ConfigurationFieldData__c cf : confFieldsToUpdate) {
      		Id quoteLineId = quoteLineMap.get(cf.LGK__ConfigurationId__c);
      		if (quoteLineId != null) {
      			cf.Quote_Line__c = quoteLineId; // Assigning the Quote Line Id
      		}
      	}
      
      	update confFieldsToUpdate;

    Désormais, chaque fois qu’un devis est enregistré dans SFDC, la ligne de devis du produit configurable parent sera renseignée dans l’ensemble de données du champ de configuration. N’oubliez pas d’ajouter ce champ personnalisé à la mise en page Ensembles de données du champ de configuration pour l’afficher dans l’onglet.

    Remarque :
    Les ensembles de données de champ de configuration sont créés immédiatement après que vous avez cliqué sur Enregistrer dans le CPQ configurateur. Lorsque vous entrez dans l’éditeur de ligne de devis, le champ Ligne de devis n’est pas renseigné car il n’a pas encore été créé ou mis à jour. Ce n’est qu’une fois que vous avez enregistré depuis l’éditeur que la ligne de devis apparaît dans le champ.