Formulaires qui enregistrent au fil de l'eau
De nombreux formulaires de Flowtly n'ont pas de bouton Enregistrer. Lorsque vous modifiez quelque chose qui existe déjà, chaque modification est enregistrée d'elle-même : un champ de texte lorsque vous le quittez, une sélection dès que vous la faites, et les champs qui n'ont de sens qu'ensemble, comme un montant et sa devise ou les deux bornes d'une période, en une seule modification. Un petit statut à côté du champ indique quand l'enregistrement est en cours et quand la modification est enregistrée.
C'est ainsi que vous modifiez, entre autres, les coordonnées et les contacts d'un client, les détails d'un projet et ses phases, les valeurs d'attributs et l'ensemble d'attributs d'un projet, le rôle et le tarif de facturation d'un membre, les tarifs d'actifs d'un projet, les réservations et les relations commerciales, ainsi que le prix client d'un compteur. Les pages de ces écrans décrivent ce que fait chaque champ ; cette page décrit ce que tous ces formulaires ont en commun.
Annuler la dernière modification
Une fois une modification enregistrée, un bouton Annuler la modification apparaît à côté du statut de ce champ pendant 8 secondes, avec un anneau qui se vide au fil du temps. Tant qu'il est là, vous pouvez aussi appuyer sur Ctrl + Z (⌘ + Z sur Mac) dans ce champ.
- L'annulation réécrit la valeur précédente comme un nouvel enregistrement. Elle passe par les mêmes contrôles que toute modification, et le champ indique qu'elle est en cours d'enregistrement. Un groupe de champs enregistrés ensemble est annulé ensemble.
- Seule la dernière modification peut être annulée. Il y a une annulation par formulaire. Elle prend fin après 8 secondes, dès que vous retapez dans ce champ, de sorte qu'une annulation n'écrase jamais ce que vous venez de saisir, ou lorsque vous enregistrez une modification dans un autre champ, ce qui déplace l'annulation vers celui-ci.
- Une première valeur ne peut pas être annulée ainsi. Si le champ était vide auparavant, il n'y a rien à réécrire. Videz plutôt le champ.
- Une annulation est elle-même une modification, elle peut donc être annulée à son tour tant que ses propres 8 secondes s'écoulent.
En dehors de ces 8 secondes, et dans tout champ sans annulation, Ctrl + Z est l'annulation de texte ordinaire de votre navigateur. Une fois le délai écoulé, l'historique de la fiche est la piste d'audit.
Lorsqu'une modification n'est pas enregistrée
Une modification refusée reste sur son champ. Le champ conserve ce que vous avez saisi, affiche Non enregistré avec le motif donné par le serveur et propose Réessayer. Il ne s'efface pas et n'apparaît pas comme un message ailleurs à l'écran : il reste là où se situe le problème jusqu'à ce que le champ soit enregistré.
Le haut du formulaire les compte. Lorsqu'une ou plusieurs modifications n'ont pas été enregistrées, une ligne en haut du formulaire en indique le nombre, par exemple 2 modifications ne sont pas enregistrées, avec Aller à la première modification non enregistrée à côté. Le saut mène à la première dans l'ordre où le formulaire les présente, et non dans l'ordre où elles ont échoué, et dans un volet fait de sections il ouvre d'abord la section qui la contient. Un groupe de champs enregistrés ensemble compte pour une seule modification. Dès que chaque modification refusée est enregistrée, la ligne disparaît.
Travailler sans connexion
Si votre connexion tombe, une modification que vous faites n'est pas perdue et n'est pas signalée comme un échec. Elle attend :
- Le champ affiche une icône de nuage, lue comme Pas de connexion, en attente d'enregistrement, et conserve la valeur saisie.
- Le haut du formulaire indique Pas de connexion. Vos modifications sont en attente et s'enregistreront d'elles-mêmes., avec Réessayer maintenant à côté.
- Les modifications en attente sont enregistrées dans l'ordre où vous les avez faites, l'une après l'autre : dès que la connexion revient, lorsque vous appuyez sur Réessayer maintenant, lorsque vous faites votre modification suivante, et toutes les 10 secondes tant que votre appareil indique qu'il est en ligne.
- Modifier de nouveau un champ en attente conserve une seule modification en attente avec votre dernière valeur. Ressaisir la valeur enregistrée la retire de la file.
- Une modification que le serveur refuse une fois la connexion revenue reste sur son champ, comme ci-dessus, et ne retient pas les autres.
Les modifications en attente sont conservées tant que le formulaire est ouvert. Elles ne sont pas conservées si la page est rechargée, ce qui explique que le fait de quitter demande d'abord confirmation.
Quitter un formulaire avec des modifications en suspens
Fermer une boîte de dialogue ou un volet enregistre d'abord ce que vous êtes encore en train de saisir, et l'attend. Si une modification est encore en cours d'enregistrement, attend la connexion ou a été refusée, Flowtly demande Toutes les modifications ne sont pas enregistrées avant que quoi que ce soit ne soit perdu. Quitter quand même abandonne ces modifications, y compris celles qui attendaient la connexion, de sorte que rien n'est écrit après que vous avez choisi de partir.
Recharger la page ou fermer l'onglet du navigateur alors que des modifications sont en suspens fait apparaître la propre question de votre navigateur sur le fait de quitter la page. Flowtly retient aussi ses propres rechargements, par exemple lorsqu'une nouvelle version est installée, jusqu'à ce que vos modifications soient enregistrées.
Une fiche que votre rôle vous permet de consulter sans la modifier s'ouvre en lecture seule : il n'y a rien à enregistrer, rien à annuler, et la fermer ne pose jamais de question.
Exemples de cas d'utilisation
- Annuler en quelques secondes une mauvaise devise choisie sur un tarif de facturation, sans retaper le montant.
- Corriger les coordonnées d'un client dans un train à la connexion capricieuse et laisser les modifications s'enregistrer au retour du signal.
- Passer du haut d'un long formulaire de projet directement au seul champ que le serveur a refusé, au lieu de le chercher en faisant défiler.
- Fermer un volet de réservation en sachant que chaque modification a été enregistrée, car Flowtly aurait posé la question sinon.