Activer le modèle de données d'adresses amélioré pour les comptes

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 2 minutes de lecture
  • Utilisez la table Adresse de compte dans la fonctionnalité de modèle de données d'adresses amélioré pour lier un emplacement à plusieurs comptes sans créer d'enregistrements d'emplacements en double.

    Avant de commencer

    Rôle requis : admin

    Procédure

    1. Effectuez une copie de sauvegarde des données d'emplacement associées aux comptes à partir de la table Emplacement [cmn_location].
    2. Créez les champs de relation personnalisés dans la table Adresse de compte [account_address_relationship] s'ils ont déjà été créés dans la table Emplacement.
      Les champs nouvellement créés dans la table Adresse de compte doivent avoir le même nom et le même type que les champs de la table Emplacement. Le système de base fournit deux champs de relation.
      • Type
      • primaire

      Ces champs de relation sont créés dans la table Adresse de compte [account_address_relationship]. Pour plus d’informations sur la création de nouveaux champs dans une table, consultez Ajouter et personnaliser un champ dans une table.

    3. Mettez à jour le code personnalisé qui fait référence à la table Adresse de compte.
      Le code personnalisé peut inclure des éléments qui récupèrent l'adresse des comptes dans la table Adresse de compte. Ces éléments peuvent être des qualificatifs de référence, des scripts includes, des règles métier et des ACL pointant vers la table Emplacement.
    4. Déplacez les données relatives au compte de la table Emplacement vers la table Adresse de compte.
    5. Exécutez le script de migration suivant.
      var customRelationshipFields = []; //Add custom relationship fields (if any).​
      var account = ""; //You must specify the sys_id of the account if you wish to migrate location data for that account (mostly to be used during re-run).​
      var migrateChildAccountLocations = false; // This value must be set to true if you wish to migrate the locations of the child accounts associated with the specified account (mostly to be used during re-run).​
      new sn_cs_base.CSDataFix().migrateLocationDataToAccountAddress(customRelationshipFields, account, migrateChildAccountLocations);​

      Exécutez à nouveau le script s'il existe une différence entre le nombre d'enregistrements qui doivent être migrés et le nombre d'enregistrements déjà migrés. Dans le cas d'une nouvelle exécution, les emplacements déjà migrés ne seront pas migrés à nouveau. Pour exécuter à nouveau la migration pour les emplacements déjà migrés, supprimez les enregistrements correspondants dans la table Adresse de compte.

    6. Empêchez toute saisie de données accidentelle en désactivant les champs Compte et Relation personnalisée de la table Emplacement.
      Remarque :
      Vous ne devez pas désactiver les attributs Type et Primaire.
      Cette désactivation supprimera les champs Compte et Relation personnalisée des formulaires, listes et listes connexes liés à l'emplacement.
    7. Définissez la propriété système enable_account_address_sharing sur true.
      Cette propriété permet l'utilisation de modèles de données d'adresses améliorés pour les comptes. La liste connexe Adresses de compte s'affiche sur le formulaire de compte et d'emplacement.