Gestionnaire des transactions : champs de date et d’heure

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 5 minutes de lecture
  • Découvrez les champs du Gestionnaire des transactions pour les heures et les dates.

    Dans CPQ, les dates et les heures sont essentielles pour déterminer la durée d’un contrat ou d’un abonnement, la date d’échéance des renouvellements et la manière dont la tarification est appliquée dans le temps.

    Un nouveau champ de date ou de date/heure peut être introduit pour prendre en charge les calculs de termes ou pour auditer des événements.

    Les calculs de durée calculent les termes du contrat, les dates de début et de fin, les renouvellements et les durées. Les dates vides ou nulles peuvent affecter l’exactitude des termes. Les valeurs par défaut du système, telles que la date actuelle, ou les marqueurs d’erreur peuvent gérer les dates manquantes.

    Les événements d’audit peuvent suivre des activités telles que les estimations, les paiements et les signatures de contrats. Les dates manquantes peuvent indiquer des données incomplètes et doivent être signalées pour examen.

    Les exemples suivants montrent comment les champs de date et d’heure apparaissent dans l’interface utilisateur de l’utilisateur final.

    • Affichage du calendrier à date uniquement : écran du calendrier de janvier
    • Entrée de date et d’heure : sélectionner un créneau horaire
    • Date uniquement : JJ-MM-AAAA (par exemple, 07/11/2024)
    • Date et heure (facultative) : AAAA-MM-JJTHH :MM :SS (par exemple, 2024-10-22T14:30:00)

      Les administrateurs peuvent décider d’inclure ou non la composante temps.

    Les champs de date uniquement sont indépendants des fuseaux horaires. Pour éviter les différences de fuseau horaire, les dates et les heures sont stockées en heure universelle coordonnée (UTC).

    Créer un champ de date et d’heure

    1. Dans Admin, cliquez sur Transactions, sur Champs associés, puis sur + Créer un champ.

      Créer un champ

    2. Dans la boîte de dialogue, entrez le nom du champ. Définissez le type sur Date/Heure, puis cliquez sur Enregistrer.

      Sélectionner le type

    3. Ouvrez le champ, définissez l’accès en fonction de votre cas d’utilisation, puis cliquez sur Enregistrer.

      Accès par défaut

    Afficher le nouveau champ de date et d’heure dans l’interface buyside

    Pour apparaître dans l’interface utilisateur de l’utilisateur final, le champ doit être inclus dans la mise en page du plan. La mise en page est définie par le fichier d’entrée JSON. Des changements peuvent être apportés à l’interface utilisateur de l’utilisateur final en modifiant ce fichier.

    Exemple de fichier JSON

    Pour ajouter un champ « Document de date de test » à la mise en page, procédez comme suit.

    1. Dans Admin, cliquez sur Transaction, sur Mises en page, puis sur le nom de l’étape.

      Écran de transaction

    2. Le JSON de mise en page doit être modifié à deux endroits.
      • Dans la section Champs , ajoutez le nouveau champ de date avec les paramètres type, label et variableName. Dans l’exemple ci-dessous, nous ajoutons « Document de date de test » sous le champ existant « Date de début ». Lorsque vous écrivez le code pour le nouveau champ, assurez-vous que le nom de variable correspond exactement au nom de variable du champ associé.
        Remarque :
        Dans cet exemple, nous utilisons un champ qui affiche uniquement la date, de sorte que le type dans le JSON de mise en page est « type » : « Date ». Pour créer un champ qui affiche également l’heure, le type doit être « type » : « DateTime ».

        Code de

      • Dans la section « layout » : « tiers » : « columnSets » : définissez l’ordre des colonnes du nouveau champ dans la section « éléments ». Assurez-vous que le nom de la variable est exactement le même.

        Column (Colonne)

    3. Cliquez sur Enregistrer, puis sur Déployer.
    4. Créez une transaction, puis cliquez sur Modifier la transaction. Le nouveau champ ressemble à ce qui suit.

      Code de colonne

    Calcul des dates dans les règles

    Les calculs de durée peuvent déterminer la durée d’un contrat, d’un abonnement ou d’un accord de tarification. Parfois, nous pouvons avoir besoin de calculer les données et d’afficher la sortie dans un autre champ à des fins d’audit. Dans l’exemple suivant, nous considérons la date de début et la date de fin disponibles dans l’interface utilisateur buyside et calculons la différence entre les dates en termes de mois et de jours. Nous affichons la valeur dans un autre champ appelé « Durée de l’abonnement ».

    1. Dans CPQ Admin, cliquez sur Règles connexes, puis sur Nouvelle règle. Saisissez le nom de la règle et définissez les conditions. Dans cet exemple, nommez la règle « Calculer la date de durée de l’abonnement » et sa condition « Date de début ». La « date de fin » ne doit pas être nulle.

      Écran Calculer l’abonnement

    2. Pour déterminer la valeur d’un autre champ, ajoutez une action de détermination et fournissez un fichier de script dans la section de script avancé. L’extrait de script suivant effectue le calcul.
      // Script calculates the difference between start and end dates in months and days and displays the output in Subscription Term (Months).
      
      var yearsDiff = txn.custom.endDate.getFullYear() - txn.custom.startDate.getFullYear();
      var monthsDiff = txn.custom.endDate.getMonth() - txn.custom.startDate.getMonth();
      var totalMonths = yearsDiff * 12 + monthsDiff;
      
      var startDay = txn.custom.startDate.getDate();
      var endDay = txn.custom.endDate.getDate();
      var daysInMonth = new Date(txn.custom.endDate.getFullYear(), txn.custom.endDate.getMonth() + 1, 0).getDate();
      var dayFraction = (endDay - startDay + 1) / daysInMonth;
      
      totalMonths += dayFraction;
      
      return Math.floor(totalMonths * 1000) / 1000;

      Saisissez le script dans l’éditeur de script, puis cliquez sur Enregistrer.

      Écran Date d’échéance

    3. Associez la règle nouvellement créée au plan. Accédez aux regroupements de règles, puis au nom de l’étape où la règle doit être appliquée (dans ce cas, draftStageRuleGroup). Cliquez sur Associer des règles et recherchez le nom de la règle. Faites glisser la règle vers le volet de gauche, puis cliquez sur Terminé pour le déploiement.

      Écran de date d’échéance

    4. Testez la fonctionnalité dans l’interface buyside en fournissant des valeurs pour la date de début et la date de fin. La durée de l’abonnement est remplie automatiquement en fonction du script.

      Écran d’informations sur le contrat

    Comportement des champs de date et d’heure dans les scripts

    Les dates vides/nulles sont comparées comme FAUX, sauf comparaison avec une autre valeur vide.

    • date123 = «  » : VRAI
    • date123 != «  » : FAUX

    Les comparaisons <, <=, >, >=, =, != sont prises en charge. Les comparaisons impliquant des dates vides ou nulles sont toujours évaluées à FAUX. Les valeurs par défaut des champs de date sont vides (nulles) sauf indication contraire.

    Opérations d’agrégats :

    • Max : trouver la dernière date
    • Min : trouver la date la plus ancienne
    • Nombre : compte les valeurs de date non vides

    Les valeurs Sum et Avg ne sont pas recommandées, car elles peuvent déclencher des erreurs de compilation.