Désactiver l’enregistrement automatique pour un formulaire ou une organisation
Cette rubrique s’applique à Dynamics 365 Customer Engagement (on-premises). Pour la version Power Apps de cette rubrique, consultez : Désactiver l’enregistrement automatique dans une application pilotée par modèle
L’enregistrement automatique permet aux utilisateurs de se concentrer sur leur travail sans devoir gérer l’enregistrement des données dans le formulaire. La plupart des utilisateurs apprécieront de ne pas devoir explicitement enregistrer les données à chaque mise à jour d’un enregistrement, mais certaines organisations peuvent avoir des personnalisations conçues pour attendre un enregistrement explicite. Ces organisations disposent d’options pour gérer les modalités de l’enregistrement automatique.
Comment fonctionne l’enregistrement automatique
Par défaut, l’enregistrement automatique est actif pour tous les formulaires principaux des entités classiques et des entités mises à jour. Lorsqu’un enregistrement est créé (initialement enregistré), toutes les modifications apportées à un formulaire sont enregistrées automatiquement 30 secondes après la modification. Si aucune modification n’est apportée au formulaire, l’enregistrement automatique ne se produit pas lorsque le formulaire est ouvert. Lorsqu’une modification est apportée, le délai de 30 secondes avant un enregistrement automatique démarre de nouveau. Le champ en cours de modification n’est pas inclus dans un enregistrement automatique. Si un autre utilisateur a mis à jour l’enregistrement que vous modifiez, ces modifications seront récupérées et affichées dans le formulaire lors de l’enregistrement automatique.
Lorsque l’enregistrement automatique est actif, le bouton d’enregistrement apparaît uniquement pour l’enregistrement initial de l’enregistrement. Une fois l’enregistrement créé, le bouton d’enregistrement n’apparaît pas dans la barre de commandes, mais vous pouvez voir le bouton dans l’angle inférieur droit en cas de modifications non enregistrées. Ce contrôle est également affiché si l’enregistrement automatique est désactivé.
Vous pouvez cliquer sur ce bouton pour enregistrer l’enregistrement et actualiser les données dans le formulaire immédiatement. Lorsque la fonction d’enregistrement automatique est activée, l’enregistrement est sauvegardé, dès que vous quittez ce dernier ou que vous fermez une fenêtre distincte qui affiche un enregistrement. Le bouton Enregistrer et fermer ne doit pas nécessairement apparaître dans les formulaires des entités qui ne sont pas mises à jour.
Important
Dans Unified Interface, l’intervalle d’enregistrement automatique d’une page augmentera en cas d’erreur lors de l’enregistrement automatique. De plus, si une valeur d’attribut est modifiée ou si l’enregistrement est réussi, l’intervalle sera réinitialisé à 30 secondes.
Devez-vous désactiver l’enregistrement automatique ?
Si des plug-ins, des workflows ou des scripts de formulaire s’exécutent lorsqu’un enregistrement est enregistré, ils s’exécuteront à chaque enregistrement automatique. Cela peut conduire à des comportements peu souhaitables si ces extensions ne sont pas conçues pour fonctionner avec l’enregistrement automatique. Que l’enregistrement automatique soit activé ou pas, les plug-ins, les workflows et les scripts de formulaire doivent être conçus pour rechercher des modifications spécifiques, et ne doivent pas s’exécuter systématiquement pour chaque événement d’enregistrement.
Si l’audit est configuré pour une entité, chaque enregistrement est traité comme une mise à jour distincte. Si un utilisateur s’attarde sur un formulaire avec des modifications non enregistrées pendant plus de 30 secondes, vous pourrez voir une entrée supplémentaire uniquement s’il ajoute des données après l’enregistrement automatique. Si des rapports dépendent de données d’audit et traitent chaque enregistrement comme une « touche » individuelle d’un enregistrement, vous pouvez constater une augmentation de la fréquence des touches. Si vous utilisez cette approche, vous devez tenir compte du fait que les comportements individuels des utilisateurs rendent cette mesure peu fiable, que l’enregistrement automatique soit actif ou non.
Désactiver l’enregistrement automatique pour l’organisation
Si vous estimez que l’enregistrement automatique pose problème avec les extensions que vous utilisez, vous pouvez le désactiver pour votre organisation. Aucun paramètre ne permet de désactiver l’enregistrement automatique pour des entités ou des formulaires individuels.
Accédez à Paramètres>Administration.
Sélectionnez Paramètres système.
Pour l’option Activer l’enregistrement automatique sur tous les formulaires, sélectionnez Non.
Désactiver l’enregistrement automatique pour un formulaire
Si vous souhaitez désactiver l’enregistrement automatique pour certains formulaires d’entité, vous pouvez ajouter du code à l’événement OnSave
d’une entité.
Note
L’enregistrement automatique sera désactivé pour le formulaire, mais les données seront enregistrées lorsque vous cliquerez sur le bouton dans l’angle inférieur droit. Si vous tentez de naviguer vers une autre page que le formulaire ou de fermer ce dernier, vous serez invité à enregistrer les modifications éventuelles avant d’accéder à une autre page ou de fermer le formulaire.
Sur la barre de navigation, choisissez Microsoft Dynamics 365>Paramètres.
Paramètres apparaît sur la barre de navigation.
Accédez à Paramètres>Personnalisations.
Choisissez Personnaliser le système.
Sous Composants, développez Entités, puis localisez l’entité pour le formulaire.
Développez le nœud d’entité et choisissez Formulaires.
Ouvrez le formulaire que vous souhaitez modifier.
Créez une ressource Web JavaScript et ajoutez-la au formulaire :
Dans l’éditeur de formulaires, dans le groupe Formulaire, choisissez Propriétés du formulaire.
Sous l’onglet Événements sous Bibliothèques de formulaires, choisissez Ajouter.
Dans la boîte de dialogue Rechercher un enregistrement, sélectionnez Nouveau.
Entrez les informations suivantes dans le formulaire de ressource Web :
active Name preventAutoSave Nom d′affichage Empêcher l’enregistrement automatique Type Script (JScript) En regard du champ Type, choisissez Éditeur de texte.
Dans le champ Source, collez le code suivant :
function preventAutoSave(econtext) { var eventArgs = econtext.getEventArgs(); if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) { eventArgs.preventDefault(); } }
Choisissez OK pour fermer l’éditeur de texte.
Choisissez Enregistrer pour enregistrer la ressource Web, puis fermez la fenêtre de la ressource Web.
Dans la boîte de dialogue Rechercher un enregistrement, la nouvelle ressource Web que vous avez créée sera sélectionnée. Choisissez Ajouter pour fermer la boîte de dialogue.
Configurer un événement OnSave :
Dans la fenêtre Propriétés du formulaire, dans la section Gestionnaire d’événements, définissez Événement sur OnSave.
Cliquez sur Ajouter.
Dans la fenêtre Propriétés du gestionnaire, définissez Bibliothèque sur la ressource Web que vous avez ajoutée à l’étape précédente.
Tapez «
preventAutoSave
» dans le champ Fonction. Vous devez respecter la casse. N’incluez pas les guillemets.Vérifiez que Activée est activé.
Activez Transmettre le contexte d’exécution comme premier paramètre.
Important
Sinon, le script ne fonctionnera pas.
La boîte de dialogue Propriétés du gestionnaire doit se présenter comme suit. Le préfixe de personnalisation « new_ » peut varier en fonction du préfixe de personnalisation défini pour l’éditeur par défaut pour votre organisation.
Cliquez sur OK pour fermer la boîte de dialogue Propriétés du gestionnaire.
Si l’événement
OnSave
contient d’autres gestionnaires d’événements, utilisez les flèches vertes pour déplacer celui-ci vers le haut.
Cliquez sur OK pour fermer la boîte de dialogue Propriétés du formulaire.
Cliquez sur Enregistrer et fermer pour fermer le formulaire.
Dans l’explorateur de solutions, cliquez sur Publier toutes les personnalisations.
Après avoir appliqué ce script à l’événement
OnSave
, lorsque les utilisateurs modifient un enregistrement à l’aide de ce formulaire, le message modifications non enregistrées apparaît dans l’angle inférieur droit du formulaire uniquement comme si l’enregistrement automatique n’était pas désactivé. Mais ce message ne disparaîtra pas tant que les utilisateurs n’auront pas cliqué sur le bouton situé à côté.
Voir aussi
Créer et concevoir des formulaires
Considérations en matière de conception des formulaires principaux
Présentation des formulaires principaux dans les différents clients
Optimiser les performances de formulaire