Aller au contenu principal

Créer ou modifier une application pilotée par modèle

Objectif​

Construire une application pilotée par modèle — une application nommée qui regroupe un ensemble choisi de tables, écrans Studio et rapports de l’environnement dans une navigation (plan de site) dotée d’une page d’accueil, prête à être ouverte par un utilisateur dans le Shell de la plateforme — ou modifier le nom, la navigation ou la page d’accueil d’une application existante.

Prérequis​

  • Vous êtes connecté avec un rôle de créateur (ou d’administrateur de la plateforme).
  • Les tables que l’application affichera existent déjà dans l’environnement (voir Créer une table), de même que les écrans Studio (Dessiner une application Studio) ou les rapports (Créer un rapport) que vous voulez dans sa navigation.
  • Vous connaissez le préfixe de l’éditeur propriétaire (par exemple par). Le nom logique de l’application doit commencer par ce préfixe.

Étapes​

  1. Dans la barre latérale gauche, choisissez l’environnement dans lequel vous travaillez et la solution à laquelle appartient l’application, à l’aide des sélecteurs d’environnement et de solution. Le préfixe de l’éditeur propriétaire apparaît en dessous (par exemple par_) ; l’application est placée dans cet espace de noms.
  2. Ouvrez Applications depuis la navigation de la barre latérale. La page affiche les applications de l’environnement sous forme de liste.
  3. Sélectionnez Nouveau pour créer une application, ou sélectionnez la ligne d’une application existante puis Modifier pour la changer. Dans les deux cas, un panneau s’ouvre sur le côté de l’écran avec les détails de l’application.
  4. Saisissez un nom d’affichage (par exemple Sales).
  5. Pour une nouvelle application, saisissez un nom logique qui commence par le préfixe de l’éditeur — par exemple par_sales_app. Lors de la modification d’une application existante, le nom logique est affiché mais ne peut pas être changé.
  6. Saisissez éventuellement une description (affichée sur la vignette de l’application dans le lanceur) et une clé d’icône.
  7. Construisez la navigation de l’application. Chaque groupe de navigation a un titre, et en dessous une rangée de boutons — un par type de destination : Ajouter une table à la navigation, Ajouter un rapport à la navigation et Ajouter un écran à la navigation. Chaque bouton ouvre une liste avec recherche des éléments de ce type ; tapez pour la restreindre par le nom que vous avez donné à la destination ou par son nom logique, puis sélectionnez-en un pour le placer. Un bouton n’apparaît que si l’environnement a quelque chose à y mettre : un environnement sans rapport n’affiche donc pas de bouton de rapport. Tout élément placé peut recevoir un libellé personnalisé et une icône facultatifs, et peut être retiré. Pour réordonner les éléments d’un groupe, faites glisser une ligne par la poignée située sur son bord d’attaque — l’ordre dans lequel vous les laissez est celui qu’affiche la navigation de l’application. Sans souris : placez le focus sur la poignée, appuyez sur Espace pour saisir la ligne, sur les flèches pour la déplacer, puis de nouveau sur Espace pour la déposer. Sélectionnez Ajouter un groupe pour ajouter un autre groupe de navigation.
  8. Choisissez éventuellement les formulaires et les vues que cette application propose pour une table placée — voir Choisir ce que l’application propose pour une table ci-dessous. Sous le nom de chaque table placée, la ligne indique ce que l’application propose actuellement (« 3 formulaires · 2 vues », ou « 2 formulaires sur 5 » une fois une liste restreinte), et le bouton à curseurs ouvre le choix. La ligne d’un tableau de bord ou d’un rapport indique à la place duquel des trois il s’agit, et n’a pas de bouton à curseurs : aucun des deux n’a de formulaires ou de vues entre lesquels choisir.
  9. Choisissez la page d’accueil de l’application — ce qui s’ouvre quand un utilisateur lance l’application, et la destination de l’entrée Accueil du rail. Il peut s’agir d’une table, d’un écran Studio ou d’un rapport, et la liste ne propose que ce que vous avez placé dans la navigation. Un écran à cet endroit permet à une application de s’ouvrir sur des chiffres en direct plutôt que sur une grille de lignes.
  10. Sélectionnez Ajouter l’application (ou Enregistrer, en modification). Le panneau se ferme et la liste s’actualise avec vos modifications.
  11. Donnez l’application aux personnes qui l’utiliseront. La construire ne la partage pas : une nouvelle application est visible par les créateurs et les administrateurs, et par personne d’autre. Sélectionnez la ligne de l’application puis Partager — voir Donner une application aux personnes qui l’utiliseront.

Écrans et rapports dans une application​

Un élément de navigation est une destination, et il en existe trois types :

  • Une table ouvre sa liste, ainsi que les enregistrements, vues et formulaires qui se trouvent derrière.
  • Un écran Studio occupe toute la zone de contenu — ce que vous avez dessiné est l’écran.
  • Un rapport ouvre la visionneuse de rapports sur toute la table, prête à imprimer. (Un rapport exécuté depuis le formulaire d’un enregistrement ou depuis la barre de commandes d’une vue emporte cet enregistrement ou ce filtre ; ouvert depuis la navigation, il ne le fait pas, puisqu’il n’y a rien à l’écran à emporter.)

Chacun possède sa propre adresse : chacun peut donc être ajouté aux favoris, partagé, actualisé et épinglé : /apps/{app}/{table}, /apps/{app}/dashboard/{name}, /apps/{app}/report/{name}.

Qui peut en ouvrir un est une question d’autorisation. Ouvrir un écran et exécuter un rapport sont des autorisations détenues par un rôle de sécurité, comme n’importe quelle autre. Un utilisateur sans l’autorisation voit l’élément dans le rail et est informé qu’il ne peut pas l’ouvrir, plutôt que de voir les chiffres de quelqu’un d’autre. Par ailleurs, tout ce que lisent un écran et les jeux de données d’un rapport est filtré selon les autorisations sur les enregistrements du lecteur — deux personnes ouvrant le même écran voient donc chacune les enregistrements qu’elles ont le droit de voir.

Les tableaux de bord sont retirés

La plateforme proposait auparavant un tableau de bord — une grille de widgets d’indicateurs, de graphiques et de vues — comme quatrième type de destination, et l’Application Studio l’a remplacé : un écran dessiné fait tout ce que faisait un tableau de bord, et c’est le canevas que vous êtes déjà en train d’apprendre. Il n’y a donc ni liste Tableaux de bord, ni concepteur de tableaux de bord, ni bouton Ajouter un tableau de bord. Une application qui en nomme déjà un l’ouvre toujours et son autorisation s’applique toujours — rien de ce qui est stocké n’a changé —, mais un nouveau se dessine comme un écran Studio. Voir Dessiner une application Studio.

Choisir ce que l’application propose pour une table​

Une table accumule des formulaires et des vues au fil de sa vie — un formulaire d’administration à côté de celui qu’utilise un commercial, une vue « Mes éléments ouverts » qui ne compte que pour une équipe. Une application qui les affiche tous, c’est ainsi qu’une table propre devient une application encombrée.

Sélectionnez le bouton à curseurs sur la ligne d’une table placée (Formulaires et vues pour table) pour ouvrir le choix. Chaque liste est soit :

  • Tous les formulaires de cette table, y compris ceux ajoutés plus tard — l’application suit la table. Un formulaire que vous ajoutez demain à la table apparaît automatiquement dans cette application.
  • Uniquement ceux sélectionnés ci-dessous — un choix figé. Un formulaire ajouté ensuite à la table n’apparaît pas dans cette application tant que vous ne revenez pas le cocher.

Cette différence est toute la raison d’être des deux options, et ce n’est pas la même chose que de cocher toutes les cases : un créateur qui a sélectionné les formulaires d’une application souhaite rarement que le suivant y apparaisse sans prévenir, et un créateur qui n’a rien sélectionné le souhaite toujours. Passer à Uniquement ceux sélectionnés commence avec tout coché : vous retirez ce que vous ne voulez pas au lieu de reconstruire la liste.

Tout décocher ne masque pas la table — une table sans formulaire ne pourrait pas être ouverte — : le choix est donc enregistré comme « tous », et la boîte de dialogue l’indique tant que vous êtes dans cet état.

La sélection décide quels formulaires et vues l’application propose, pas l’ordre dans lequel ils apparaissent ni celui qui s’ouvre en premier. Ces réglages restent ceux de la table.

Les compteurs sous le nom de la table indiquent dans quel état elle se trouve sans ouvrir la boîte de dialogue : 3 formulaires · 2 vues désigne une table que l’application suit, et 2 formulaires sur 5 une liste que vous avez fermée.

Répartir une longue navigation en zones​

À côté du titre de chaque groupe se trouve un champ zone. Donnez la même zone à plusieurs groupes — Accueil pour Réservations et Clients, Paramètres pour la configuration — et dès que deux zones ou plus sont nommées, la navigation de l’application montre une zone à la fois, avec un sélecteur à son pied. Laissez le champ vide pour un groupe que toutes les zones doivent montrer, comme une page d’accueil ou Aujourd’hui. Sans zones, la navigation ne change pas.

Ce qui se passe en coulisses​

L’application est stockée sous forme de métadonnées propres à cet environnement, dans l’espace de noms du préfixe de l’éditeur, comme composant de la solution sélectionnée. Sa navigation référence chaque destination par type et par nom ; avant l’enregistrement, la plateforme vérifie que chaque table, tableau de bord et rapport référencé existe — dans le magasin que désigne son type — et que la page d’accueil fait partie des destinations de la navigation. L’application elle-même ne contient aucune donnée : c’est une vue organisée des composants de l’environnement.

Dépannage​

  • « … must be lower snake-case and start with the publisher prefix. » — le nom logique doit commencer par {prefix}_ et n’utiliser que des lettres minuscules, des chiffres et des traits de soulignement.
  • « Entity … is not defined in this environment. » — une table de la navigation n’existe pas dans cet environnement ; créez d’abord la table, ou retirez-la de la navigation.
  • « Dashboard … is not defined in this environment. » (ou Report …) — la navigation en nomme un qui a été supprimé ou n’a jamais été importé ici. Construisez-le, importez-le, ou retirez l’élément.
  • « The home page … must appear in the app's navigation. » — choisissez une page d’accueil que vous avez ajoutée à la navigation. Un accueil vers lequel personne ne peut revenir est un écran sans point d’entrée dès que l’utilisateur a cliqué ailleurs.
  • « An app named … already exists in this environment. » — choisissez un autre nom logique ; les noms logiques des applications sont uniques au sein d’un environnement.
  • « You do not have permission to open the dashboard … » (ou … run the report …) — la destination existe, mais votre rôle de sécurité ne détient aucune autorisation dessus. Un administrateur accorde <name>.Open pour un tableau de bord ou <name>.Run pour un rapport, ou le caractère générique *.Open / *.Run pour couvrir tout ce qui sera construit ensuite.
  • « Form … is not defined on entity … » (ou View …) — l’application sélectionne un formulaire ou une vue que la table n’a plus, généralement parce qu’il a été renommé ou supprimé après la construction de l’application. Ouvrez la boîte de dialogue Formulaires et vues de la table et cochez les éléments actuels.
  • Un formulaire ajouté à une table n’apparaît pas dans une application. — cette application sélectionne des formulaires précis : un nouveau n’est donc pas inclus tant que vous ne l’ajoutez pas. La ligne indique « 2 formulaires sur 5 » plutôt qu’un simple nombre. Ouvrez l’application, sélectionnez le bouton Formulaires et vues de la table, et cochez le nouveau formulaire ou repassez la liste sur tous les formulaires de cette table.

Scénarios associés​

  • Donner une application aux personnes qui l’utiliseront.
  • Créer une table.
  • Créer un formulaire.
  • Créer une vue.
  • Créer un rapport.