Skip to main content

Foire aux questions

Des réponses courtes aux questions que l'on nous pose le plus souvent, chacune avec un lien vers la page qui traite le sujet en détail. Les réponses décrivent SoftyFlow 8.6.

GénéralLien direct vers Général

Où sont les menus de l'IDE depuis la version 8.6 ?Lien direct vers Où sont les menus de l'IDE depuis la version 8.6 ?

L'IDE n'a plus de barre de menu en haut : tout part du dock, la barre flottante à gauche de l'écran. Ressources regroupe Projets, Fichiers, Bases externes (EDS), Collections et Tâches planifiées ; Compte regroupe Utilisateurs, Rôles et Paramètres (icône d'engrenage) ; Surveillance regroupe Suivi des instances, Utilisation, Logs et Exécutions Flowy. Le logo SoftyFlow ouvre le Hub (Ctrl + /), une vue plein écran de toutes les destinations, et Ctrl + K cherche dans toutes les ressources de tous les projets. Dans un projet, la barre Design / Build / Deploy / Run en haut à droite fait passer d'un mode du projet à l'autre.

Voir Se repérer dans l'IDE et Configuration du projet.

SoftyFlow peut-il construire une application à partir d'une description ?Lien direct vers SoftyFlow peut-il construire une application à partir d'une description ?

Oui, avec Flowy AI, la page d'accueil de l'IDE. Décrivez l'application ou la modification voulue : Flowy trouve le projet (ou le crée), construit les interfaces, processus, collections, rapports et menus, et les essaie en TEST. Le déploiement en UAT et en PROD reste votre décision : Flowy ne crée ni ne déploie jamais de version. Flowy est disponible pour les utilisateurs qui ont accès à l'IDE.

Voir Flowy AI.

Utilisateurs et paramètresLien direct vers Utilisateurs et paramètres

Que sont les attributs utilisateur, et comment en créer un ?Lien direct vers Que sont les attributs utilisateur, et comment en créer un ?

Les attributs utilisateur (appelés Métadonnées avant la version 8.6) sont vos propres champs sur chaque compte utilisateur : service, manager, matricule, région… Un administrateur qui a le droit Paramètres les crée dans Paramètres › Attributs utilisateur (Ajouter un attribut…) : un nom et un type de champ (Texte, Nombre, Oui / non, Liste personnalisée, Document d'une collection, Utilisateur…). Chaque attribut apparaît ensuite comme un champ de la fiche utilisateur.

Voir Paramètres › Attributs utilisateur.

Comment associer une information à un utilisateur, comme le nom de son manager ou son âge ?Lien direct vers Comment associer une information à un utilisateur, comme le nom de son manager ou son âge ?

  1. Créez un attribut utilisateur pour cette information (voir la question précédente), par exemple manager de type Utilisateur ou department de type Texte.
  2. Saisissez la valeur dans Utilisateurs › l'utilisateur › onglet Métadonnées. Les valeurs dépendent de l'environnement : choisissez Test, UAT ou Prod en haut de l'onglet. Pour renseigner de nombreux utilisateurs d'un coup, utilisez l'export et l'import Excel de la page Utilisateurs.
  3. Utilisez la valeur :
    • dans une interface, via l'utilisateur connecté, par exemple la valeur par défaut ={{SF_connectedUser.metadata.department}} ;
    • dans un script de processus, avec SF.user.getUserMetadata(userId) ;
    • dans une règle de redirection de l'accueil classique, avec SF_connectedUser.metadata.

Voir Gestion des utilisateurs › Métadonnées, Redirection selon les attributs utilisateur et getUserMetadata.

Comment créer ou modifier de nombreux utilisateurs à la fois ?Lien direct vers Comment créer ou modifier de nombreux utilisateurs à la fois ?

Cliquez sur Exporter Excel sur la page Utilisateurs : un seul classeur contient les utilisateurs, leurs rôles et leurs attributs par environnement, avec des listes déroulantes. Modifiez-le dans Excel puis réimportez-le : SoftyFlow affiche un rapport de validation et n'applique que ce que vous avez changé.

Voir Exporter et importer les utilisateurs avec Excel.

Un utilisateur peut-il recevoir ses e-mails de processus regroupés en un seul e-mail plutôt qu'un e-mail par notification ?Lien direct vers Un utilisateur peut-il recevoir ses e-mails de processus regroupés en un seul e-mail plutôt qu'un e-mail par notification ?

Oui, depuis la version 8.6, avec le récapitulatif des e-mails :

  1. Un administrateur active la fonction pour la plateforme : Paramètres › E-mails › E-mails des processus › Envoi individuel et regroupement (désactivé par défaut).
  2. Chaque utilisateur choisit son récapitulatif dans le portail des applications : Mes paramètres › Notifications e-mail › Regrouper mes notifications e-mail, avec la fréquence (chaque jour, tous les N jours ou certains jours de la semaine), l'heure et le fuseau horaire.
  3. Un administrateur peut régler la même chose pour n'importe quel compte dans l'IDE : Utilisateurs › l'utilisateur › onglet Notifications.
Mes paramètres › Notifications e-mail, dans le portail des applications : un récapitulatif chaque lundi à 08:00.
Mes paramètres › Notifications e-mail, dans le portail des applications : un récapitulatif chaque lundi à 08:00.

Les deux écrans indiquent le prochain envoi et les e-mails en attente ; Recevoir maintenant dans le portail (Envoyer maintenant les e-mails en attente dans l'IDE) les envoie tout de suite. Seuls les e-mails de processus de l'environnement de production attendent le récapitulatif. Les e-mails de priorité Very High ou Critical, les e-mails de mot de passe, de bienvenue et d'erreur, et les e-mails de TEST et d'UAT partent toujours tout de suite.

Voir E-mails des processus et récapitulatif, Mes paramètres › Notifications e-mail et Gestion des utilisateurs › Notifications.

ProcessusLien direct vers Processus

Quelle est la relation entre une interface et un processus ?Lien direct vers Quelle est la relation entre une interface et un processus ?

L'interface est ce que voit l'utilisateur ; le processus est le workflow qui suit. Ils se rejoignent à trois endroits :

  • Le démarrage du processus : un bouton d'une interface exécute l'action startProcess. Les données de la page deviennent les variables de la nouvelle instance.
  • Les tâches utilisateur : chaque tâche utilisateur du processus indique une Interface et un Écran (Screen). L'utilisateur qui ouvre la tâche voit cet écran avec les données de l'instance ; l'action update valide la tâche, enregistre les modifications dans l'instance et fait avancer le processus.
  • La page d'une instance : les paramètres du processus indiquent l'interface et l'écran qui affichent une instance.

Voir Composants de processus › Tâche utilisateur, Écrans et Actions de processus et de workflow.

Ai-je besoin d'une base de données pour stocker les données d'un processus ?Lien direct vers Ai-je besoin d'une base de données pour stocker les données d'un processus ?

Non. SoftyFlow conserve lui-même les données de chaque instance. Utilisez une collection ou une base externe (EDS) seulement pour les données qui vivent au-delà d'une demande : données de référence, données de base, ou données partagées avec d'autres processus ou d'autres systèmes.

Voir Bases de données.

Où sont stockées les données d'un processus ?Lien direct vers Où sont stockées les données d'un processus ?

Dans la base de données de SoftyFlow, avec chaque instance, séparément pour TEST, UAT et PROD :

  • les variables de l'instance : les données des formulaires envoyés au démarrage et à chaque tâche, et les valeurs fixées par les scripts ;
  • ses mesures, calculées à partir de ces variables ;
  • ses tâches, son historique et ses erreurs.

Ouvrez une instance depuis le mode Run du projet pour voir ses vues Variables et Mesures, et utilisez les rapports pour lister les instances et les tâches avec leurs données.

Voir Suivi et exécution › Vues détaillées de l'instance.

À quoi servent les mesures ?Lien direct vers À quoi servent les mesures ?

Les mesures sont des valeurs calculées à partir des variables d'une instance (un montant, un statut, une durée, un service…) et stockées avec l'instance. Elles sont recalculées pendant l'exécution de l'instance (au démarrage, avant les tâches utilisateur, après chaque tâche, à la fin). Elles servent surtout au reporting : les mesures deviennent les colonnes, les filtres et les tris des rapports d'instances et de tâches.

Voir Mesures.

Qu'est-ce qu'un sous-processus ?Lien direct vers Qu'est-ce qu'un sous-processus ?

Un sous-processus est une étape qui exécute un autre processus. Le processus parent lui transmet des variables d'entrée, attend qu'il se termine, puis récupère ses variables de sortie. Il peut aussi lancer un sous-processus par élément d'un tableau, en parallèle. Sur la page de l'instance parente, la vue Sous-processus liste les instances enfants.

Voir Sous-processus.

J'ai ajouté une mesure : pourquoi est-elle vide sur les instances existantes ?Lien direct vers J'ai ajouté une mesure : pourquoi est-elle vide sur les instances existantes ?

Les mesures ne sont pas versionnées : elles appartiennent au processus lui-même. Une mesure ajoutée ou modifiée est donc utilisée tout de suite en TEST, en UAT et en PROD, quelle que soit la version que suit l'instance. Mais une mesure n'est calculée que quand l'instance avance (au démarrage, avant et après chaque tâche utilisateur, à la fin) : une instance en cours la reçoit à sa prochaine étape, et les instances déjà terminées gardent leurs anciennes valeurs. Pour la remplir :

  1. Ouvrez le mode Run du projet.
  2. Cliquez sur Mesures dans le dock.
  3. Choisissez le Processus, les Mesures à recalculer (ou Toutes) et l'Environnement, cliquez sur Recalculer, puis sur Confirmer.

Les mesures sont recalculées sur toutes les instances du processus dans cet environnement, quels que soient leur statut et leur version, avec une barre de progression.

Voir Suivi et exécution › Recalculer les mesures.

RapportsLien direct vers Rapports

Quelle est la différence entre les rapports d'instances et les rapports de tâches ?Lien direct vers Quelle est la différence entre les rapports d'instances et les rapports de tâches ?

  • Un rapport d'instances a une ligne par instance de processus : il suit les demandes de bout en bout (statut, dates, mesures). Exemple : « Toutes les demandes », « Mes demandes ».
  • Un rapport de tâches a une ligne par tâche utilisateur : il suit le travail des personnes (qui doit faire quoi, depuis quand, à quelle étape). Exemple : « Mes tâches ».

Une interface de type Report crée d'un coup les tableaux habituels (My Tasks, My Requests, All Requests, My Drafts).

Voir Rapports de tâches et d'instances.

InterfacesLien direct vers Interfaces

Que sont les back offices ?Lien direct vers Que sont les back offices ?

Un back office est une interface qui gère les données d'une collection : une liste avec un formulaire pour créer, consulter, modifier et supprimer ses enregistrements. Choisissez le type Back office en créant l'interface, puis le Edit mode (formulaire In a popup ou In a separate page), la Collection (nouvelle ou existante) et les Form fields. SoftyFlow crée l'interface (deux interfaces, la Liste et le Formulaire, avec In a separate page), la nouvelle collection et une liste personnalisée pour chaque champ qui a des options.

Voir Créer une interface.

Que sont les écrans d'une interface ?Lien direct vers Que sont les écrans d'une interface ?

Un écran est une déclinaison de la même interface pour une étape d'un processus. Tous les écrans partagent les mêmes widgets ; pour chaque écran, vous décidez quels widgets sont disponibles, visibles, obligatoires ou désactivés. Chaque tâche utilisateur ouvre ensuite l'interface sur son propre écran : par exemple, l'employé remplit la demande sur le premier écran, et le manager la voit en lecture seule avec un champ de validation sur un autre. Gérez les écrans avec le sélecteur All Screens du builder.

Voir Écrans.

Comment rendre un champ visible, désactivé ou obligatoire selon une règle ?Lien direct vers Comment rendre un champ visible, désactivé ou obligatoire selon une règle ?

Sélectionnez le widget dans le builder et ouvrez la carte Validation du panneau de configuration. Pour chaque écran, activez ou désactivez Available, Visible, Required et Disable, ou cliquez sur le crayon à côté d'un interrupteur pour écrire une condition, par exemple pour n'afficher un champ que si un autre champ a une valeur donnée. Dans les actions, show, hide, setRequired et setDisable font de même pendant l'exécution.

Voir Règles de validation et Actions de manipulation de l'IU.

Comment ajouter une règle de validation ou un masque sur un champ ?Lien direct vers Comment ajouter une règle de validation ou un masque sur un champ ?

  • Règle de validation : dans la carte Rules du widget, cliquez sur Add rule, choisissez le type (Min (Char), Max (Char), Type, Email, Regex ou Custom), sa valeur et le message d'erreur.
  • Masque : sur un widget Input de type String, remplissez le champ Mask de la carte Global, par exemple + ## # ## ## ## ## pour un numéro de téléphone (# est un chiffre).

Voir Widget Input › Masquage de saisie et Validation et règles.

Comment remplir automatiquement des champs à partir de l'élément choisi dans une liste déroulante, une case à cocher ou un bouton radio liés à une collection ?Lien direct vers Comment remplir automatiquement des champs à partir de l'élément choisi dans une liste déroulante, une case à cocher ou un bouton radio liés à une collection ?

Ajoutez une Action on field change dans la carte Global de la liste déroulante (ou de la case à cocher, ou du bouton radio). Dans l'action, SF_input.value est la valeur choisie et SF_input.SF_data est l'enregistrement complet de la collection qui se trouve derrière (un tableau pour une case à cocher ou une liste à choix multiple). Copiez les champs utiles dans la page, par exemple avec setModel ou dans un script : model.customer_email = SF_input.SF_data.email.

Voir Widget Select › Travailler avec les actions et SF_input et Remplissage de formulaires avec des données de base de données.

Comment permettre à quelqu'un de soumettre une interface sans compte SoftyFlow ?Lien direct vers Comment permettre à quelqu'un de soumettre une interface sans compte SoftyFlow ?

Rendez l'interface Public : choisissez Public dans Access rights à sa création, ou plus tard dans Paramètres de la page › Access (Allowed roles). Toute personne ayant le lien peut alors l'ouvrir sans se connecter. Si la page lance un processus, ajoutez Public à Qui peut le lancer dans les paramètres du processus, et activez-y le reCAPTCHA pour le protéger du spam (ses clés se règlent dans Paramètres › Clés et secrets). Déployez en Prod la version qui contient la page et le processus avant de partager le lien.

Voir Paramètres de la page › Access et Paramètres du processus.

Je ne vois pas ma modification sur l'interface de production. Pourquoi ?Lien direct vers Je ne vois pas ma modification sur l'interface de production. Pourquoi ?

SoftyFlow a trois environnements. TEST exécute toujours les dernières ressources enregistrées : View interface dans le builder ouvre la page en TEST. UAT et PROD exécutent les ressources de la version qui y est déployée, chacune à une version de ressource fixe. Pour amener une modification en production :

  1. Vérifiez que l'interface est enregistrée (le builder affiche Saved).
  2. Dans le mode Deploy du projet, créez une version (ou dupliquez la version actuelle) et passez l'interface à sa dernière version de ressource (Rafraîchir), puis Enregistrer.
  3. Utilisez Passer en UAT pour la vérifier, puis Passer en Prod.

Les instances déjà en cours en PROD continuent de suivre leur version ; Migrer les instances les fait passer sur la nouvelle.

Voir Test et déploiement › Environnements, Sélection des ressources et Migrer des instances.

Chaque utilisateur peut-il garder ses propres filtres et colonnes dans un tableau ?Lien direct vers Chaque utilisateur peut-il garder ses propres filtres et colonnes dans un tableau ?

Oui, depuis la version 8.6 : activez l'option User views du tableau (carte Data source). Chaque utilisateur enregistre alors des vues nommées avec ses filtres, son tri, l'ordre et la largeur des colonnes, et choisit une vue par défaut.

Voir Widget Table › Vues utilisateur.

InstancesLien direct vers Instances

Comment déboguer une instance en erreur ?Lien direct vers Comment déboguer une instance en erreur ?

  1. Trouvez l'instance : ouvrez le mode Run du projet (ou Suivi des instances dans le dock, pour tous les projets), dans le bon environnement (Test, UAT ou Prod). Une instance en erreur a une bande rouge et une pastille En erreur ; cliquez sur la carte En erreur pour n'afficher qu'elles.
  2. Lisez l'erreur : ouvrez l'instance. L'étape en échec est rouge sur le diagramme et listée En erreur dans la carte Avancement, et la vue Erreurs (groupe Suivi, à gauche) montre chaque erreur avec son type, son message, l'élément ou la date, et son détail technique.
La vue Erreurs d’une instance : la carte de l’erreur et son bouton Analyser cette erreur.
La vue Erreurs d’une instance : la carte de l’erreur et son bouton Analyser cette erreur.
  1. Demandez à Flowy AI : quand vous ouvrez une instance en erreur, Flowy propose de l'investiguer (Lancer l'investigation) ; dans la vue Erreurs, Analyser cette erreur fait de même pour une erreur. Flowy lit l'historique, les variables et les erreurs de l'instance et de son processus, puis propose une cause et une correction. Rien ne change avant que vous cliquiez sur Accepter et appliquer la solution sous la proposition, et l'instance n'est jamais relancée à votre place. Vous pouvez aussi demander depuis la page d'accueil Flowy AI de l'IDE, par exemple « L'instance Xy-58787 ne marche pas : trouve pourquoi ».
  2. Corrigez la cause : corrigez une valeur dans la vue Variables et enregistrez-la, ou corrigez le processus. Le TEST exécute le dernier processus ; en UAT et en PROD, déployez une nouvelle version et migrez-y l'instance.
  3. Relancez l'étape : dans la vue Schéma, cliquez sur Relancer d'ici sur l'étape en échec, choisissez Relancer cette étape (ou Passer cette étape), puis cliquez sur Relancer (ou Passer l'étape).
Relancer d’ici, sur les étapes par lesquelles l’instance est déjà passée.
Relancer d’ici, sur les étapes par lesquelles l’instance est déjà passée.

Voir Suivi et exécution › Identification des erreurs, Relancer d'ici, Migrer des instances et Flowy AI.