Fichiers et Structures
Le noeud de base du fichier de configuration. Il regroupe tous les dashboards déclarés pour la chaîne.
<dashboards>
<dashboard id="ADR_GENERIC" label="Tableau de bord">
<visual>
<dashboardSize>FullScreen</dashboardSize>
<align>Center</align>
</visual>
<group id="1" column="0" row="0" width="18" height="12">
<config>
<label>Dossiers et journal de bord</label>
</config>
<!-- ================== Tuiles de filtre ===================== -->
<tile id="DOSSIERS_SELECTION" type="Filter" presentation="Grid" row="0" column="0" width="9" height="6">
<config>
<label>Mes dossiers</label>
<taskId>ADR02</taskId>
<gridId>ADR02_MSP_SYNTHESE</gridId>
</config>
<action type="Task">
<taskId>ADRX2</taskId>
</action>
</tile>
<!-- ================ Tuiles de grille ======================= -->
<tile id="JOURNAL_BORD" type="Grid" presentation="Grid" row="0" column="9" width="9" height="3">
<config>
<label>Journal de bord</label>
<taskId>ADR40</taskId>
<gridId>ADR40_DERNIERES_SAISIES</gridId>
<filterId>ADR40_DERNIERES_SAISIES</filterId>
<filteredBy>
<tileId>DOSSIERS_SELECTION</tileId>
<filterValue>ADRHIS.NODOSS : $ADRDOS.ID_PK</filterValue>
</filteredBy>
</config>
<action type="Task" />
</tile>
<tile id="TASKS" type="Grid" presentation="Grid" row="3" column="9" width="9" height="3">
<config>
<label>Rappel des tâches</label>
<taskId>ADR40</taskId>
<gridId>ADR40_PROCHAIN_RAPPELS</gridId>
<filterId>ADR40_PROCHAIN_RAPPELS</filterId>
<filteredBy>
<tileId>DOSSIERS_SELECTION</tileId>
<filterValue>ADRHIS.NODOSS : $ADRDOS.ID_PK</filterValue>
</filteredBy>
</config>
<action type="Task" />
</tile>
<!-- =============== Tuiles de planning ======== -->
<tile id="PLANNING" type="Agenda" presentation="ByConfig" row="6" column="0" width="15" height="4">
<config>
<label>Planning de la semaine</label>
<taskId>GTP40</taskId>
<gridId>GTPEV_DASHBOARD</gridId>
<filterId>GTPEV_DASHBOARD_WEEK_REFERENT</filterId>
<agendaConfig>GTPEV_SectionSemaine.chv</agendaConfig>
<filteredBy>
<tileId>DOSSIERS_SELECTION</tileId>
<filterValue>GTPEVT.STATECLIENT: $ADRDOS.ID_PK</filterValue>
</filteredBy>
</config>
<action type="Notification">
<notification>GTP40_OPEN_MONTH</notification>
</action>
</tile>
<!-- ======================= Events et suivi ================= -->
<tile id="NEW_EVENT" type="Task" presentation="Icon" row="6" column="15" width="3" height="2">
<config>
<label>Nouvelle entrée journal</label>
<taskId>ADR40</taskId>
<filteredBy>
<tileId>DOSSIERS_SELECTION</tileId>
<visibleOnFilter>VisibleOnNoFilter</visibleOnFilter>
<visibleOnFilter>VisibleOnMultipleValues</visibleOnFilter>
</filteredBy>
</config>
<visual>
<titlePosition>Bottom</titlePosition>
<showIcon>1</showIcon>
<icon>Grid 60x60.png</icon>
<iconShading>Monochrome</iconShading>
<iconColor>base4</iconColor>
<useSecondaryIcon>false</useSecondaryIcon>
<backgroundType>Color</backgroundType>
<backgroundColor>white</backgroundColor>
<backgroundAlpha>0.9</backgroundAlpha>
</visual>
<action type="Notification">
<notification>ADR40_NEW_EVENT</notification>
</action>
</tile>
</group>
</dashboard>
</dashboards>
- dashboard (Dashboard) - Un dashboard est le descripteur de l’écran de dashboard affiché à l’utilisateur. Plusieurs dashboards peuvent être disponibles mais seul un dashboard est affiché à la fois à l’écran. Il n’existe pas de relations directe entre les dashboards.
Un dashboard est le descripteur de l’écran de dashboard affiché à l’utilisateur. Plusieurs dashboards peuvent être disponibles mais seul un dashboard est affiché à la fois à l’écran. Il n’existe pas de relations directe entre les dashboards.
- id * {string} -
- label * {string} -
- width {positiveInteger} - Largeur du dashboard pour le client C++. Ignorée par la WebUI : la taille découle du contenu.
- height {positiveInteger} - Hauteur du dashboard pour le client C++. Ignorée par la WebUI.
- config {0-1} (DashboardConfig) - Paramètres du dashboard lus par la WebUI. Le client C++ ignore ce noeud.
- visual {1-1} (VisualConfig) - Configuration visuelle du client C++. Ignorée par la WebUI, dont le
tableau de bord occupe toujours la page, sur le fond du thème. Un
noeud vide (
<visual />) suffit à un tableau de bord écrit pour la WebUI. - group {1-∞} (Group) - Groupe de tuiles. Un groupe permet d’afficher un titre et de regrouper les tuiles similaires afin de les placer plus facilement à l’écran. Le système affiche des marges spéciales autour des groupes de façon à proposer à l’utilisateur un visuel cohérent pour l’aider à se repérer sur le bureau. Tout comme dans les tâches, il est également possible de n’utiliser qu’un seul groupe contenant toutes les tuiles. Chaque groupe réinitialise l’origine (0,0) des tuiles qu’il contient en haut à gauche du groupe.
Paramètres du dashboard lus par la WebUI. Le client C++ ignore ce noeud.
- summary {0-1} (DashboardSummary) - La ligne de synthèse en tête du dashboard (« 28 éléments attendent une action, dans 7 étapes sur 10 »), avec un raccourci vers chaque groupe concerné.
- audience {0-1} (xs:string) - À qui s’adresse le dashboard, en mots (« Comptabilité clients »,
« Direction ») : distingue deux dashboards homonymes dans le menu,
au lieu de leur identifiant. Clé
.properties<id>.audience. - asOf {0-1} (xs:string) - La date de valeur des chiffres du dashboard, fournie par le serveur (« Données au ${DATE_SITUATION} ») : affichée une seule fois, dans l’en-tête, à la place de l’heure de lecture.
- periods {0-1} (DashboardPeriods) - Les périodes sur lesquelles le dashboard se lit : un sélecteur dans son
en-tête. La période choisie part au serveur dans la variable de session
DASHBOARD_PERIOD(seul un identifiant déclaré ici est accepté) ; UNI16 calcule les valeurs pour elle, la WebUI ne calcule rien. Les tuiles de données la reçoivent aussi et la nomment sous leur titre, saufperiodScope="fixed". La première est celle de l’ouverture. Libellé : texte ou clé<id>.period.<période>.
<periods>
<period id="MONTH">Octobre</period>
<period id="YEAR">Année</period>
</periods>
- scopes {0-1} (DashboardScopes) - Les périmètres sur lesquels le dashboard se lit (une société, toutes
les sociétés ou tous les mandats d’une fiduciaire) : un sélecteur dans
son en-tête. Le choix part au serveur dans la variable de session
DASHBOARD_SCOPE(seul un identifiant déclaré ici est accepté), pour les variables comme pour les tuiles de données : le serveur consolide, la WebUI n’additionne rien.
<scopes>
<scope id="CURRENT">Société courante</scope>
<scope id="ALL">Toutes les sociétés</scope>
</scopes>
- subscription {0-1} - Un envoi du dashboard en PDF par e-mail, programmé par le SERVEUR :
un bouton « Recevoir par e-mail » propose les fréquences (
daily,weekly,monthly) ; le choix lance la notification distantenotification(servie partask) avec l’argumentfrequency=<fréquence>, qui enregistre l’abonnement pour l’utilisateur seul et ses droits.
<subscription notification="DASHBOARD_SUBSCRIBE" task="UNI16" frequencies="weekly,monthly" />
- defaultView {0-1} (DashboardDefaultView) - La vue à l’ouverture :
all(défaut) tout le dashboard,todoles seules étapes à traiter ou bloquées (« À faire »). L’utilisateur bascule d’un clic ; son choix est retenu sur l’appareil. - filter {0-1} - WebUI. Le filtre de page proposé dans l’en-tête (« Groupe : Tous ») :
columnla colonne (celle detile@filterableet demetric@filter),labelson nom, unoptionpar valeur. Le choix part au serveur comme le filtre croisé.
<filter column="GROUPE" label="Groupe">
<option>Les Lutins</option>
</filter>
- previewAs {0-1} - WebUI. L’aperçu « voir comme » demandé à la direction : le serveur
donne le rôle prévisualisé en mots (contenu,
${VAR}, vide hors aperçu) et ses rôles (roles) ; la page le dit en bandeau collant, masque les groupes réservés à d’autres rôles (group@roles) et offre d’en sortir (notification).
<previewAs roles="${PREVIEW_ROLES}" notification="DASHBOARD_VIEW_AS_END">${PREVIEW_AS}</previewAs>
- offline {0-1} - WebUI. Hors réseau, le dashboard garde son dernier état lisible
(sur l’appareil) et le dit : « Hors ligne · dernier état de 14:00 ;
les actions attendent le réseau ». Contenu :
readonly. - menu {0-1} - WebUI. Les actions du dashboard rangées dans son menu « ⋯ » (une
liste d’évacuation, un rapport) : chacune lance une notification
serveur ou ouvre une tâche ;
glyphson icône (print,exit,report).
<menu>
<item label="Liste d'évacuation" notification="CRE_EVACUATION_LIST" taskId="GTP40" glyph="exit" />
</menu>
- suggestions {0-1} - WebUI. Les questions fréquentes, en pastilles sous le récit : chacune
ouvre une vue paramétrée (
taskId,gridIdoufilterId) ou lance une notification serveur (notification,arguments).
<suggestions>
<question label="Qui relancer cette semaine ?" taskId="DEB43" filterId="DEB43_WEEK" />
</suggestions>
- brief {0-1} (DashboardBrief) - WebUI. Le récit en tête du dashboard : quelques phrases écrites par le serveur (dans la langue de la session) sur ce qui s’est passé depuis la dernière visite, surtout ce qui a été traité sans l’utilisateur. Une ligne vide n’est pas affichée.
<brief label="${BRIEF_LABEL}">
<line attention="done" tile="INVOICES_VALIDATE">${BRIEF_1}</line>
</brief>
- next {0-1} (NextStep) - La prochaine étape, désignée par le serveur : une variable
${VAR}qui vaut l’identifiant d’une tuile. Son action est la seule en bouton plein, marquée « Prochaine étape » et reprise dans la ligne de synthèse. Sans elle, la première tuile à traiter dans l’ordre de lecture.
Les périodes sur lesquelles le dashboard se lit : un sélecteur dans son
en-tête. La période choisie part au serveur dans la variable de session
DASHBOARD_PERIOD (seul un identifiant déclaré ici est accepté) ; UNI16
calcule les valeurs pour elle, la WebUI ne calcule rien. Les tuiles de
données la reçoivent aussi et la nomment sous leur titre, sauf
periodScope="fixed". La première est
celle de l’ouverture. Libellé : texte ou clé <id>.period.<période>.
<periods>
<period id="MONTH">Octobre</period>
<period id="YEAR">Année</period>
</periods>
- custom {boolean} - WebUI. Une plage libre (« du … au … ») en plus des périodes déclarées :
elle part au serveur comme
DASHBOARD_PERIOD=CUSTOMavecDASHBOARD_FROMetDASHBOARD_TO(dates ISO), seule forme libre acceptée.
- period -
- compare {0-∞} - WebUI. Une comparaison au choix (« même période l’an dernier »,
« budget ») : le choix part au serveur dans
DASHBOARD_COMPARE, qui calcule les écarts et les traits de référence pour elle.
Les périmètres sur lesquels le dashboard se lit (une société, toutes
les sociétés ou tous les mandats d’une fiduciaire) : un sélecteur dans
son en-tête. Le choix part au serveur dans la variable de session
DASHBOARD_SCOPE (seul un identifiant déclaré ici est accepté), pour
les variables comme pour les tuiles de données : le serveur consolide,
la WebUI n’additionne rien.
<scopes>
<scope id="CURRENT">Société courante</scope>
<scope id="ALL">Toutes les sociétés</scope>
</scopes>
- scope -
La vue à l’ouverture ; l’attribut mobile donne celle d’un téléphone
(todo par défaut : le travail d’abord quand l’écran est court).
L’identifiant de la tuile de la prochaine étape ; l’attribut reason
dit pourquoi le serveur la choisit (l’impact : un montant, une
échéance, un risque), affiché à côté du bouton : « Pourquoi : 22’915 CHF
échus ».
<next reason="${NEXT_REASON}">${NEXT_STEP}</next>
Configuration visuelle du dashboard. Les différentes options permettent de personnaliser l’affichage de celui-ci.
-
backgroundColor {0-1} (HtmlColor) - Couleur de fond du dashboard. Cette couleur doit être au format hexadécimal HTML (
#023C50par exemple). -
backgroundAlpha {0-1} (xs:string) - Transparence de la couleur de fond. 1 signifie opaque et 0 signifie transparent complet. Sous le fond du dashboard s’affiche le fond d’écran du bureau de l’utilisateur.
-
dashboardSize {0-1} (VisualConfigSize) - Valeurs possibles:
- FullScreen - Affichage plein-écran. Le dashboard couvre le bureau SAINet en entier. La barre de menu ainsi que la barre de navigation à gauche ne sont pas couvertes.
-
align {0-1} (VisualConfigAlignment) - Valeurs possibles:
- Center - Positionnement du dashboard au centre du bureau de l’utilisateur.
-
gridUnitRatio {0-1} (xs:float) -
Groupe de tuiles. Un groupe permet d’afficher un titre et de regrouper les tuiles similaires afin de les placer plus facilement à l’écran. Le système affiche des marges spéciales autour des groupes de façon à proposer à l’utilisateur un visuel cohérent pour l’aider à se repérer sur le bureau. Tout comme dans les tâches, il est également possible de n’utiliser qu’un seul groupe contenant toutes les tuiles. Chaque groupe réinitialise l’origine (0,0) des tuiles qu’il contient en haut à gauche du groupe.
- id * {string} - Identifiant du groupe. Celui-ci doit être unique dans le dashboard.
- column * {integer} - Colonne de début du groupe. Les colonnes sont numérotées à partir
de zéro et font une largeur identique aux lignes, qui est
définie par le paramètre
DASHBOARD_SQUARE_UNITretourné par les propriétés client. Cette largeur fait 64 pixels par défaut. - row * {integer} - Ligne de début du groupe. Les lignes sont numérotées à partir
de zéro et font une largeur identique aux colonnes, qui est
définie par le paramètre
DASHBOARD_SQUARE_UNITretourné par les propriétés client. Cette hauteur fait 64 pixels par défaut. - width * {integer} - Largeur du groupe en nombre de colonnes.
- height * {integer} - Hauteur du group en nombre de lignes. Ignorée par la WebUI : la hauteur découle du contenu.
- roles {string} - WebUI. Les rôles (catégories d’utilisateurs, séparées par des virgules) qui reçoivent ce groupe : le serveur ne le transmet qu’à eux (une éducatrice ne reçoit pas la facturation), et sa mention de confidentialité devient la conséquence de ce filtre.
- rank {string} - WebUI. Le rang du groupe pour cet utilisateur, fourni par le serveur
(nombre ou variable, par exemple selon l’usage) : les groupes classés
passent dans cet ordre, les autres gardent l’ordre de
row. - presentation {GroupPresentation} - Rendu du groupe dans la WebUI. Ignoré par le client C++.
Valeurs possibles:
- tiles - Par défaut. Les lanceurs principaux en cartes, les autres en liste compacte sous « Autres tâches ».
- flow - Les tuiles sont les étapes d’un processus, dans l’ordre de lecture
(
rowpuiscolumn), reliées par des flèches : chacune avec son numéro (« Étape 2 »), son compteur, son état et son action. Sur un téléphone, les étapes s’empilent.
- config {0-1} (GroupConfig) - Paramètres d’un groupe.
- tile {1-∞} (Tile) - Une tuile est une case rectangulaire affichange de l’information et/ou permettant de lancer des tâches ou des notifications. Chaque tuile possède une configuration technique permettant de définir comment les données sont récupérées si il y a lieu d’être, une configuration visuelle permettant au paramétreur d’apporter une touche cohérente par rapport au produit qu’il propose, et une configuration d’action qui définit ce qu’il se passe lorsque l’utilisateur clique sur une tuile.
Le texte de l’échéance ; l’attribut attention (une variable ${VAR}
qui vaut todo ou blocked) dit, côté serveur, qu’elle approche ou
qu’elle est dépassée : l’échéance prend alors la couleur de cet état.
<deadline attention="${PAY_DEADLINE_STATE}">${PAY_DEADLINE}</deadline>
Paramètres d’un groupe.
- label {0-1} (xs:string) - Libellé du groupe. Celui-ci est affiché au dessus du groupe.
- description {0-1} (xs:string) - Une phrase sous le titre du groupe (« les étapes du traitement d’une
facture »). Accepte les variables
${VAR}. Lue par la WebUI seulement ; remplace les tuilesTitle. - privacy {0-1} - WebUI. La nature des données du groupe et qui les voit (comme
privacyd’une tuile) : héritée par chaque tuile qui n’en dit pas d’autre. - deadline {0-1} (Deadline) - WebUI. L’échéance du groupe, fournie par le serveur (« Virement le
${DATE_PAIEMENT} · J-9 »), affichée sous le titre. Un groupe
flowy ajoute sa progression (« 1 étape terminée sur 5 »), comptée sur l’attentionde ses étapes. L’échéance la plus proche (la première dans l’ordre de lecture) est reprise dans la ligne de synthèse.
Une tuile est une case rectangulaire affichange de l’information et/ou permettant de lancer des tâches ou des notifications. Chaque tuile possède une configuration technique permettant de définir comment les données sont récupérées si il y a lieu d’être, une configuration visuelle permettant au paramétreur d’apporter une touche cohérente par rapport au produit qu’il propose, et une configuration d’action qui définit ce qu’il se passe lorsque l’utilisateur clique sur une tuile.
- id * {string} - Identifiant de la tuile. Cet identifiant doit être unique dans un dashboard.
- type * {TileType} -
Valeurs possibles:
- Task - Une tuile de type
Taskest un lanceur permettant de lancer une tâche SAINet. - Grid - Une tuile de type grid permet d’avoir un rendu autour d’une
ou plusieurs lignes de donnéés.
L’attribut présentation peut prendre trois valeurs : soit
Gridqui affiche une grille en colonnes, soitTodoListqui affiche les entrées sous forme de liste à points, soitGalleryqui fait défiler les informations de la ligne. - Agenda - Une tuile de type agenda permet d’afficher un planning ou un historyViewer. Ce type de tuile n’a qu’une seule présentation. La définition de ce qu’elle affiche dépend de sa configuration. Par exemple,
<tile type="Agenda" id="PLANNING_DU_JOUR" column="0" row="0" width="4" height="4"> <config> <taskId>ADR02</taskId> <gridId>ADR02_MSP_MAIN_GRID</gridId> <filterId>ADR02_REFERENT_FILTER</filterId> <agendaConfig>PlanificationAssuresSemaine</agendaConfig> </config> </tile>- Graph - Une tuile de type graph permet d’afficher un graphique. Ce type de tuile n’a qu’une seule présentation. La définition de ce qu’elle affiche dépend de sa configuration. Par exemple,
<tile type="Graph" id="PLANNING_DU_JOUR" column="0" row="0" width="4" height="4"> <config> <taskId>ADR02</taskId> <gridId>ADR02_MSP_MAIN_GRID</gridId> <filterId>ADR02_REFERENT_FILTER</filterId> <graphConfig>PlanificationAssuresGraph</graphConfig> </config> </tile>- Filter - Une tuile de type Filter permet de proposer à l’utilisateur sous forme de liste multi-selectionnable ou non, d’appliquer un filtre global simple à une partie ou à toutes les tuiles qu’il voit sur son dashboard. Par exemple,
<tile type="Filter" id="ASSURES_FILTER" column="0" row="0" width="4" height="4"> <config> <taskId>ADR02</taskId> <gridId>ADR02_MSP_ASSURES</gridId> <filterId>ADR02_REFERENT_FILTER</filterId> <multiselection>true</multiselection> <noDataText>Pas d'assuré</noDataText> </config> </tile>- Title - Une tuile de type Titre permet d’afficher un titre, potentiellement dynamique en fonction d’une autre tuile de filtre. Par exemple,
<tile type="Title" id="TITRE" presentation="Largest" row="0" column="0" width="19" height="2"> <config> <label>Dashboard $REGIMM.DLABEL</label> <shortLabel>$REGIMM.DLABEL</shortLabel> <veryShortLabel>Dashboard</veryShortLabel> <filteredBy><!-- cas particulier, pour que la tuile soit mise jour quand le filtre change --> <tileId>IMMEUBLE_SELECTION</tileId> </filteredBy> </config> </tile> - Task - Une tuile de type
- presentation * {TilePresentation} -
Valeurs possibles:
- Icon - Concerne les tuiles de type ‘Task’. Présentation classique (Windows 10), affiche l’icône de la tâche ou de la table, avec le texte de la tuile en dessous.
- IconAndValues - Concerne les tuiles de type ‘Task’. En plus de l’icône de la tâche, affiche à droite de l’icône une liste des 3-4 premières entrées, selon la place disponible.
- IconsAndValues - Concerne les tuiles de type ‘Task’. Affiche les premiers éléments du navigateur sous forme de liste avec les icônes des records.
- NotesImagesAndValues - Concerne les tuiles de type ‘Task’. Affiche les premiers éléments du navigateur sous forme de liste avec l’image de la note attachée à chaque record si elle existe.
- LargeNotesImages - Concerne les tuiles de type ‘Task’. Affiche les notes des premiers éléments du navigateur sous forme de “tuiles” dans la tuile. Si un seul record est présent l’image prend par défaut tout l’espace de la tuile.
- Small - Pour les tuiles de type
Title, affiche le texte en petit, prenant environ 1/3 de la hauteur de la tuile. - Medium - Pour les tuiles de type
Title, affiche le texte en moyen, prenant environ 1/2 de la hauteur de la tuile. - Large - Pour les tuiles de type
Title, affiche le texte en grand, prenant environ 2/3 de la hauteur de la tuile. - Huge - Pour les tuiles de type
Title, affiche le texte en grand, prenant environ toute la hauteur de la tuile. - Grid - Pour les tuiles de type
Grid, affiche les données sous forme de grille en colonnes. - TodoList - Pour les tuiles de type
Grid, affiche les données sous forme de liste à points. - Gallery - Pour les tuiles de type
Grid, affiche les données sous forme de gallerie qui fait défiler les informations de la ligne. - ByConfig -
- Matrix - WebUI, tuile
Grid: une vue portefeuille, une ligne par société (ou par mandat), une colonne par étape, chaque cellule son compteur et l’état fourni par le serveur ; voirmatrix.
- column * {integer} - Colonne de début du groupe. Les colonnes sont numérotées à partir
de zéro et font une largeur identique aux lignes, qui est
définie par le paramètre
DASHBOARD_SQUARE_UNITretourné par les propriétés client. Cette largeur fait 64 pixels par défaut. - row * {integer} - Ligne de début du groupe. Les lignes sont numérotées à partir
de zéro et font une largeur identique aux colonnes, qui est
définie par le paramètre
DASHBOARD_SQUARE_UNITretourné par les propriétés client. Cette hauteur fait 64 pixels par défaut. - width * {integer} - Largeur du groupe en nombre de colonnes.
- height * {integer} - Hauteur du group en nombre de lignes.
Dans la WebUI,
rowetcolumnne donnent plus qu’un ordre de lecture, etwidth×heightle rang par défaut d’un lanceur : une tuile de 4 unités ou plus (2 × 2) est principale, une plus petite secondaire (voiremphasis). - emphasis {TileEmphasis} - Le rang d’un lanceur dans la WebUI, dit explicitement. Absent, la
taille de la tuile décide. Ignoré par le client C++.
Valeurs possibles:
- primary - Lanceur principal : une carte avec son nom, sa description, son compteur, son état et son action.
- secondary - Lanceur secondaire : une ligne compacte sous « Autres tâches ».
- scopes {string} - WebUI. Les périmètres (identifiants de
config/scopes, séparés par des virgules) sur lesquels la tuile s’affiche : une matrice portefeuille n’apparaît qu’en lecture consolidée (scopes="ALL"). - periodScope {TilePeriodScope} - WebUI, tuile de données :
dashboard(défaut) suit la période choisie dans l’en-tête et la nomme sous son titre ;fixedgarde sa propre période (« 7 derniers jours ») et le dit (« période fixe »). Valeurs possibles:- dashboard -
- fixed -
- snapshot - Un état à date (les postes ouverts au 16/10), qui ne dépend d’aucune période : la tuile le dit (« état à date, indépendant de la période »).
- periods {string} - WebUI. Les périodes (identifiants de
config/periods, séparés par des virgules) sur lesquelles la tuile s’affiche : une courbe mensuelle n’apparaît qu’en lecture annuelle (periods="YEAR"). - optional {boolean} - WebUI. Une tuile du catalogue, masquée par défaut : l’utilisateur l’ajoute à sa vue (« Ajouter une tuile ») et la retire ; le choix est retenu sur son appareil.
- filterable {string} - WebUI. La colonne sur laquelle la tuile suit le filtre croisé de la
page (
metric@filter) : le filtre part au serveur (DASHBOARD_FILTER_COLUMN/DASHBOARD_FILTER_VALUE), qui calcule la tuile pour cette valeur ; une tuile sansfilterabledit « non filtré ». - roles {string} - WebUI. Les rôles qui reçoivent cette tuile (comme
group@roles) : le serveur ne la transmet qu’à eux, l’aperçu « voir comme » la masque aux autres et le compte. - refresh {positiveInteger} - WebUI. Une tuile en temps réel : ses valeurs sont relues toutes les
refreshsecondes (le dashboard se relit au plus court de ses tuiles) et la carte porte la marque « En direct ». - locked {boolean} - WebUI. La tuile est imposée par le paramétrage : l’utilisateur ne peut ni la masquer ni la déplacer (il peut l’épingler). Une étape à traiter ou bloquée ne se masque jamais, verrouillée ou non.
- placement {TilePlacement} - Où la tuile s’affiche dans la WebUI. Absent, une tuile de données
(
Grid,Graph,Agenda) monte dans l’aperçu, un lanceur reste dans son groupe. Ignoré par le client C++. Valeurs possibles:- overview - La tuile monte dans la bande « Aperçu » en tête du dashboard.
- group - La tuile reste dans son groupe.
- config {1-1} (TileConfig) - Le noeud config contient les paramètres de configuration des données
qui sont affichées dans les tuiles.
La plupart des propriétés X de valeur Y sont définies sous la forme
<X>Y</X>. - visual {1-1} (TileVisual) - Configuration des paramètres d’affichage de la tuile, pour le client
C++. La WebUI n’en lit que
icon(ByTaskType,ByRecord: l’icône de la famille de la tâche) etshowIcon; couleurs, polices, images et positions de titre sont ignorées : la couleur et l’icône viennent de la famille de la tâche, un état s’écrit avecattention. Un noeud vide (<visual />) suffit à une tuile écrite pour la WebUI. - action {0-1} (TileAction) - Configuration de l’action à lancer lorsque l’utilisateur clique sur la tuile. Par défaut, aucune action n’est lancée.
Le noeud config contient les paramètres de configuration des données
qui sont affichées dans les tuiles.
La plupart des propriétés X de valeur Y sont définies sous la forme
<X>Y</X>.
- label {1-1} (xs:string) - Texte de la tuile
- shortLabel {0-1} (xs:string) - Texte raccourci de la tuile. Celui-ci est affiché si le texte
venant de l’attribut
labelne rentre pas en largeur dans la tuile. - veryShortLabel {0-1} (xs:string) - Texte raccourci de la tuile. Celui-ci est affiché si ni le texte
venant de l’attribut
labelni celui venant deshortLabelne rentrent en largeur dans la tuile. - taskId {1-1} (xs:string) - Identifiant de la tâche associée aux données de la tuile. Dans le cas d’une tuile affichant une grille, la tâche sur laquelle l’appel doit s’effectuer pour récupérer les données. Dans le cas d’une tuile de raccourcis, la tâche devant s’ouvrir.
- gridId {0-1} (xs:string) - Identifiant de la grille de données qui doit être affichée dans
le cas de tuiles de type
GridouFilter. Dans le cas de tuiles avec une action de typeTask, cette grille sera utilisée pour redéfinir la grille de la tâche lancée. - formatterId {0-1} (xs:string) - Identifiant du formatteur de données le cas de tuiles de type
Grid. - filterId {0-1} (xs:string) - Identifiant du filtre à appliquer sur la récupération des données
affichées dans la tuile dans le cas de tuiles de type
GridouFilter. Dans le cas de tuiles avec une action de typeTask, ce filtre sera utilisée pour redéfinir le filtre de la tâche lancée. - initialSelection {0-1} (InitialSelectionType) - Permet de pré-sélectionner un élément à l’ouverture dans les tuiles de filtre dynamique.
- agendaConfig {0-1} (xs:string) - Identifiant de la configuration d’historyViewer à utiliser pour
afficher les données dans une tuile de type
Agenda. - graphConfig {0-1} (xs:string) - Identifiant de la configuration d’agenda à utiliser pour
afficher les données dans une tuile de type
Graph. - filteredBy {0-1} (FilteredByConfig) - Configuration du filtre entre les tuiles. Ceci permet d’utiliser
la sélection d’une ou plusieurs tuiles de type
Filterafin de définir un filtre supplémentaire sur les données affichées dans la tuile. Par exemple, en supposant que la tuileDOSSIERS_SELECTIONsoit une tuile de filtre avec une grille surADRDOS, il est possible de filtrer les entrées de journal pour n’afficher que les entrées correspondant à un enregistrement sélectionné dans cette dernière.
<filteredBy>
<tileId>DOSSIERS_SELECTION</tileId>
<filterValue>ADRHIS.NODOSS : $ADRDOS.ID_PK</filterValue>
</filteredBy>
- description {0-1} (xs:string) - WebUI. Une ligne sous le nom d’un lanceur (« dossiers », « semaine
en cours »), à laquelle la famille de la tâche est ajoutée ; sous le
titre d’une tuile de données, sa période ou son périmètre. Accepte
les variables
${VAR}. - value {0-1} (xs:string) - WebUI. Le compteur de la tuile, affiché en grand, séparé du
libellé : en général une variable
${VAR}fournie par UNI16. Une variable absente (tâche non autorisée, refus du serveur) s’affiche « - », jamais un zéro. - valueUnit {0-1} (ValueUnit) - WebUI. Ce que compte la valeur, à côté du nombre (« factures »,
« lots », « h »). Sur une tuile
Graph, l’unité des valeurs, écrite au bout des barres et dans le tableau des données. - valueDetail {0-1} (ValueDetail) - WebUI. Une précision sous le nombre (« dont ${OPEN_SUBMITTED} soumises », un montant déjà formaté par le serveur).
- attention {0-1} (AttentionState) - WebUI. L’état de l’étape, donné par le SERVEUR : une variable
${VAR}d’UNI16 qui vauttodo,blocked,pending,ok,done,upcomingouinfo. Le client ne déduit rien du compteur.
todo: « À traiter », un filet de couleur ET le mot, l’action en bouton contour (plein pour la prochaine étape, voirdashboard/config/next) ;blocked: « Bloqué », filet rouge ET le mot (un rappel bloqué, une erreur à lever) ;pending: « En attente de validation » (une action soumise à la validation à quatre yeux) ;ok: « Rien en attente », la carte en retrait, le nombre grisé ;done: « Terminé » avec une coche (étape finie d’un flux) ;upcoming: « À venir », carte en pointillés (étape qui attend la précédente) ;infoou absent : neutre. La ligne de synthèse du dashboard additionne lesvaluedes tuiles à l’étattodo.
- list {0-1} (TileList) - WebUI, tuile
Grid/TodoList: ce que montre chaque ligne, par identifiant de colonne de la grille. Une colonneDates’écrit en relatif (« hier », « 28/09 ») ; l’avatar porte les initiales. Sans<list>, les deux premières colonnes.
<list>
<title>NOM</title>
<detail>LIEU</detail>
<date>DATE</date>
<avatar>NOM</avatar>
</list>
- chartType {0-1} (ChartTypeConfig) - WebUI, tuile
Graph: la forme du graphique, qui prime sur celle de la configuration.cgc. Des classes ordonnées (tranches d’ancienneté, mois) se lisent en barres, jamais en secteurs. - chartPalette {0-1} (ChartPalette) - WebUI, tuile
Graph: les couleurs du graphique. Les couleurs du.cgcne sont pas reprises (elles ne tiennent pas les contrastes des trois thèmes). - chartAside {0-1} (xs:string) - WebUI, tuile
Graph: le libellé d’une classe sortie de l’échelle et donnée en chiffre sous le graphique (« Hors échelle : 126 postes non échus »). Une référence qui écraserait les classes sur lesquelles on agit (les tranches de retard). - expected {0-1} (xs:string) - WebUI. Quand ou à quelle condition l’étape s’ouvre, fourni par le
serveur (« Après le calcul des salaires », « Prévu le 24/10 »),
affiché sous le nom : une étape
upcomingdit ce qu’elle attend. - reason {0-1} (StepReason) - WebUI. Pourquoi l’étape est dans son état, fourni par le serveur :
surtout la cause d’un blocage (« 1 débiteur sans adresse de
relance »). Affiché sur la carte, et repris dans la ligne de
synthèse pour une étape
blocked. - glyph {0-1} (TileGlyph) - WebUI. L’icône métier de la tuile (ce dont parle l’étape : une facture, un rappel, un paiement), à la place de celle de la famille de la tâche. La couleur reste celle de la famille.
- trend {0-1} (ValueTrend) - WebUI. Une tendance à côté de la valeur, fournie par le serveur
(« +3 depuis septembre ») ;
direction(up,down,flat) donne la flèche,attention(todo,blocked,ok) la couleur : une hausse n’est pas toujours une mauvaise nouvelle, c’est le serveur qui le dit.
<trend direction="${OVERDUE_TREND_DIRECTION}" attention="${OVERDUE_TREND_STATE}">${OVERDUE_TREND}</trend>
- since {0-1} (ValueTrend) - WebUI. Ce qui a changé depuis la dernière visite de l’utilisateur,
calculé par le serveur (« +2 depuis hier 17:10 ») : un badge à côté
du chiffre. Mêmes attributs que
trend. - progress {0-1} (ValueProgress) - WebUI. Un avancement mesuré par le serveur :
valuesurmax(deux nombres, en général des variables), dessiné en barre et dit par le texte de l’élément (sinon le pourcentage).
<progress value="${RECEIVED}" max="${EXPECTED}">${RECEIVED_TEXT}</progress>
- metric {0-∞} (TileMetric) - WebUI. Une mesure de plus sur la carte, avec sa propre tendance : une tendance appartient au chiffre qu’elle concerne.
<metric label="Masse salariale" trend="${PAYROLL_TREND}" direction="up" attention="info">${PAYROLL}</metric>
- shortcut {0-∞} - WebUI, tuile
Task: un raccourci secondaire au pied de la carte (« Liste d’évacuation (27) »), à côté de son action : une notification serveur ou une tâche ;glyphson icône (exit,print,report).
<shortcut label="Liste d'évacuation (${PRESENT_NOW})" notification="CRE_EVACUATION_LIST" taskId="GTP40" glyph="exit" />
- definition {0-1} - WebUI. Ce que mesure le chiffre de la tuile, en mots métier, avec sa
sourceet sonowner(le responsable de la définition) : un ⓘ à côté du chiffre l’ouvre, avec la fraîcheur.
<definition source="DEBOF, postes non soldés à date d'échéance dépassée" owner="Comptabilité clients">Postes dont l'échéance est passée et qui ne sont pas soldés.</definition>
- chartMeasure {0-1} - WebUI, tuile
Graph: une seconde mesure à laquelle basculer (numéro de la série, 1 = la première ;labelle nom du bouton,unitson unité) : « Nombre | Montant » - les barres se redessinent sur la mesure choisie, l’autre s’écrit à côté. - alert {0-∞} - WebUI. Une alerte sur condition proposée dans le menu de la tuile
(« M’alerter : si les postes à plus de 90 jours dépassent
5’000 CHF ») : la condition est déclarée et évaluée par le serveur,
la notification l’enregistre (
condition=<id>).
<alert notification="DASHBOARD_SUBSCRIBE" condition="OVER90">Si les plus de 90 jours dépassent 5'000 CHF</alert>
- comments {0-1} - WebUI. Le fil de commentaires accroché à la tuile : le nombre (
${VAR}) et le dernier mot, fournis par le serveur, en badge dans l’en-tête ;notificationouvre le fil.
<comments count="${COMMENTS_N}" notification="TILE_COMMENTS">${COMMENTS_LAST}</comments>
- privacy {0-1} - WebUI. La nature des données de la tuile (
kind:childdonnées d’enfants,personaldonnées personnelles,financialdonnées financières) et qui les voit, en mots du serveur : la tuile le dit, et son export rappelle qu’il est tracé. Le filtrage par rôle reste celui du serveur.
<privacy kind="child">${ABSENTS_AUDIENCE}</privacy>
- automation {0-1} (TileAutomation) - WebUI. Ce que le serveur a traité sans l’utilisateur (« 26 validées
automatiquement cette nuit, montant conforme au contrat ») : la
valeur de la tuile ne compte plus que les exceptions.
notificationetlabeloffrent l’annulation.
<automation notification="UNDO_AUTO" taskId="STO3V" label="Annuler">${AUTO}</automation>
- lastAction {0-1} (xs:string) - WebUI. La dernière action sur l’étape, gardée par le serveur (« Dernier renvoi : Marie Favre, 15/10 à 16:20 ») : qui a fait quoi, sur la carte.
- matrix {0-1} - WebUI, tuile
Grid/Matrix:rowla colonne du nom de la ligne, l’attributscopela colonne de son périmètre (un clic sur le nom relit tout le dashboard sur ce périmètre), et uncellpar colonne affichée :valuela colonne du compteur,attentioncelle de son état (todo,blocked,pending,ok),labell’en-tête.
<matrix scope="SCOPE">
<row>SOCIETE</row>
<cell value="PREP" attention="PREP_STATE" label="Préparer" />
</matrix>
- chartCompare {0-1} - WebUI, tuile
Graph: le numéro (à partir de 1) d’une série dessinée en référence : un trait en travers de chaque barre à sa valeur (la barre est la mesure, le trait l’étalon), sans valeur écrite.kind(previous,budget,target) etlabelsont repris dans la légende.
<chartCompare label="fin septembre" kind="previous">3</chartCompare>
- chartDrill {0-1} - WebUI, tuile
Graph: une barre (et la ligne du tableau des données, au clavier) ouvre ses enregistrements : la notification distantenotification, servie par la tâchetask, reçoit l’argumentclass=<libellé de la classe>et ouvre la tâche filtrée.
<chartDrill notification="DEBOF_OPEN_CLASS" task="DEBOF" />
- assignee {0-1} (Assignee) - WebUI. Qui traite l’étape, fourni par le serveur (« Marie Favre ») :
un badge d’initiales et le nom sur la carte. L’attribut
user(l’identifiant de l’utilisateur) alimente le filtre « À moi ». - chartHighlight {0-1} - WebUI, tuile
Graph: la classe à distinguer (valeur ou variable, « Vendredi ») : sa barre est cerclée et son étiquette portelabel(par défaut « aujourd’hui »). - chartAlert {0-1} - WebUI, tuile
Graph: les classes signalées par le serveur (libellés séparés par des virgules, ou variable), « Mardi » : un ⚠ sur leur barre, etlabelen légende (« encadrement hors norme ce jour-là »). - chartReconcile {0-1} - WebUI, tuile
Graph: la valeur d’une autre tuile que le total des barres doit retrouver (${VAR}du serveur,labelson nom) : sous le graphique, « Total 17 postes = Postes échus ✓ », ou « ne se recoupe pas » - deux chiffres du serveur comparés, rien d’inventé.
<chartReconcile label="Postes échus">${OVERDUE_ITEMS}</chartReconcile>
- chartForecastRange {0-1} - WebUI, tuile
Graph: les séries (numéros, 1 = la première) du bas et du haut de la prévision : une moustache sur chaque barre prévue, jamais une valeur prévue sans sa fourchette. - chartForecast {0-1} (xs:string) - WebUI, tuile
Graph: le libellé de la première classe qui est une prévision et non une mesure (« Vendredi ») ; elle et les suivantes sont dessinées creuses et dites « prévus ». - chartDetail {0-1} (ChartDetail) - WebUI, tuile
Graph: le numéro (à partir de 1) d’une série du graphique écrite à côté de chaque valeur au lieu d’être dessinée (« 9 postes · 9’840 CHF »), avec son unité.
<chartDetail unit="CHF">2</chartDetail>
- asOf {0-1} (xs:string) - WebUI. La date de valeur des chiffres de la tuile, fournie par le serveur (« Situation au ${DATE_SITUATION} »), affichée au pied de la tuile.
- emptyLabel {0-1} (xs:string) - WebUI. Ce que dit une liste vide (« Les messages envoyés aux familles apparaîtront ici. »). Sans lui, « Aucune donnée ».
- noDataText {0-1} (xs:string) - Ancien nom de
emptyLabel, encore lu.
L’unité, au pluriel ; l’attribut one donne le singulier, pris pour une
valeur de 1 (« 1 poste », jamais « 1 postes »).
<valueUnit one="facture">factures</valueUnit>
La colonne de la cause ; l’attribut kind nomme une colonne qui vaut
expected (un écart prévu, atténué avec une coche) ou check (à
vérifier). L’en-tête compte alors « 2 à vérifier · 1 prévue ».
- label {string} - Le titre du récit (« Depuis votre dernière visite, hier à 17:10 »).
- line {1-∞} (BriefLine) -
WebUI, tuile Grid / TodoList : ce que montre chaque ligne, par
identifiant de colonne de la grille. Une colonne Date s’écrit en
relatif (« hier », « 28/09 ») ; l’avatar porte les initiales. Sans
<list>, les deux premières colonnes.
<list>
<title>NOM</title>
<detail>LIEU</detail>
<date>DATE</date>
<avatar>NOM</avatar>
</list>
- rows {positiveInteger} - Le nombre de lignes montrées (5 par défaut) ; le total est dit dans le lien d’action. Une liste qui en a moins garde la hauteur de son contenu.
- title {0-1} (xs:string) -
- detail {0-1} (xs:string) -
- date {0-1} (xs:string) -
- avatar {0-1} (xs:string) -
- value {0-1} (xs:string) - Une colonne affichée à droite de la ligne, en gras (un montant).
- previous {0-1} (xs:string) - La colonne de la valeur précédente, écrite avant
value(« 4’820 → 5’000 CHF ») : un écart se lit depuis là d’où il part. - delta {0-1} (xs:string) - La colonne de l’écart (« +18 % »), sous la valeur.
- reason {0-1} (ListReason) - La colonne de la cause de la ligne (« Heures supplémentaires +14 h »), sous le détail.
- scope {0-1} (xs:string) - La colonne de la société de la ligne : une pastille devant le détail, en lecture consolidée.
- cause {0-1} (xs:string) - WebUI. La colonne qui dit pourquoi la ligne est en échec ou à revoir (« Participant eBill non inscrit ») : le diagnostic du serveur, affiché sous le titre.
- fix {0-1} (ListFix) - WebUI. La correction d’une ligne : la colonne nommée dit si elle
s’applique (valeur non vide),
taskIdouvre la tâche sur la ligne, ounotificationla corrige sur place ;labelle texte.
<fix taskId="ADR02" label="Corriger l'adresse">FIX</fix>
phone nomme la colonne d’un numéro : la correction devient un lien
tel: (« Appeler Mme Bernasconi »), actif même hors réseau de données.
- attention {0-1} (xs:string) - WebUI. La colonne de l’état de la ligne, donné par le serveur
(
blocked,todo) : une ligne urgente passe en tête, marquée, et sa correction devient le bouton principal. - flag {0-1} - WebUI. La colonne d’un signalement à ne pas manquer sur la ligne
(« Allergie : arachides ») : un badge avec son icône, jamais la
couleur seule.
levelnomme la colonne de sa gravité (severe: badge plein, mis en avant). - evidence {0-1} - WebUI. La colonne qui prouve le motif (« 14 h badgées en septembre »,
« prime saisie par J. Roy le 02/10 ») : sous le motif, et dans
l’aperçu d’une action en lot.
taskIdouvre la tâche où la preuve se vérifie, sur la ligne (les pointages, le journal). - rowAction {0-1} - WebUI. Une action sur la ligne, à côté de sa correction (« Marquer
excusé ») : une notification serveur sur la ligne, après une
confirmation qui demande un motif (
reason, gardé au journal). - bulk {0-1} - WebUI. Une action en lot sur les lignes prêtes (
ready) de la liste, en tête de tuile (« Confirmer les écarts (2) ») : la confirmation montre l’aperçu ligne à ligne, les lignes retenues partent avec la notification. - groupBy {0-1} (xs:string) - WebUI. La colonne par laquelle regrouper les lignes reçues (la société en lecture consolidée) : un intertitre par valeur, avec son nombre de lignes ; sans valeur (une seule société), pas de groupe.
- sort {0-1} (SortList) - WebUI. Les tris offerts au lecteur sur les lignes reçues :
value(montant décroissant),date(plus récent d’abord), séparés par des virgules ; le premier est celui du serveur. - ready {0-1} (xs:string) - WebUI. La colonne qui dit si l’action en lot peut traiter la ligne
telle quelle (
true) ou si elle est à revoir (false) : l’aperçu de l’action (action@preview) sépare les deux. - total {0-1} (xs:string) - Une ligne au pied de la liste, fournie par le serveur (« Total ${ECHECS_TOTAL} »).
La cause de l’état, fournie par le serveur. Les attributs taskId et
label proposent le correctif : un lien vers la tâche qui lève le
blocage, sur la carte même.
<reason taskId="ADR02" label="Compléter l'adresse">${REMINDERS_REASON}</reason>
WebUI. Une tendance à côté de la valeur, fournie par le serveur
(« +3 depuis septembre ») ; direction (up, down, flat) donne la
flèche, attention (todo, blocked, ok) la couleur : une hausse
n’est pas toujours une mauvaise nouvelle, c’est le serveur qui le dit.
<trend direction="${OVERDUE_TREND_DIRECTION}" attention="${OVERDUE_TREND_STATE}">${OVERDUE_TREND}</trend>
La précision sous le nombre ; l’attribut attention (variable serveur,
todo ou blocked) la signale avec une icône : une donnée dont dépend
la valeur est périmée (« Paiements non importés depuis 6 jours »).
taskId et label proposent le correctif (« Importer les paiements ») ;
signalée, la précision est aussi reprise en avertissement dans la
ligne de synthèse.
WebUI. Une mesure de plus sur la carte, avec sa propre tendance : une tendance appartient au chiffre qu’elle concerne.
<metric label="Masse salariale" trend="${PAYROLL_TREND}" direction="up" attention="info">${PAYROLL}</metric>
WebUI. Un avancement mesuré par le serveur : value sur max (deux
nombres, en général des variables), dessiné en barre et dit par le
texte de l’élément (sinon le pourcentage).
<progress value="${RECEIVED}" max="${EXPECTED}">${RECEIVED_TEXT}</progress>
WebUI, tuile Graph : le numéro (à partir de 1) d’une série du
graphique écrite à côté de chaque valeur au lieu d’être dessinée
(« 9 postes · 9’840 CHF »), avec son unité.
<chartDetail unit="CHF">2</chartDetail>
La forme du graphique ; stacked="true" empile ses séries mesurées (une
par société en lecture consolidée), avec le total au bout de la barre
et une couleur par série.
Configuration du filtre entre les tuiles. Ceci permet d’utiliser
la sélection d’une ou plusieurs tuiles de type Filter afin de
définir un filtre supplémentaire sur les données affichées dans
la tuile.
Par exemple, en supposant que la tuile DOSSIERS_SELECTION soit
une tuile de filtre avec une grille sur ADRDOS, il est possible
de filtrer les entrées de journal pour n’afficher que les entrées
correspondant à un enregistrement sélectionné dans cette dernière.
<filteredBy>
<tileId>DOSSIERS_SELECTION</tileId>
<filterValue>ADRHIS.NODOSS : $ADRDOS.ID_PK</filterValue>
</filteredBy>
- tileId {1-1} (xs:string) - Identifiant de la tuile de filtre à utiliser pour créer le filtre.
- filterValue {0-1} (xs:string) - Valeur sous la forme
TABLEID.DATAFIELDID : $OTHERTABLEID.DATAFIELDID - visibleOnFilter {0-1} (FilteredByDisplay) - Valeurs possibles:
- VisibleOnNoFilter - Tuile visible uniquement si aucun filtre n’est appliqué dessus. Une tuile de ce type permet de cacher une grande tuile générale pour afficher deux plus petites tuiles lorsqu’un filtre est appliqué par exemple.
- VisibleOnSingleValue - Tuile visible uniquement lorsqu’une valeur a été sélectionnée dans la tuile de filtre. Si aucune valeur ou plusieurs valeurs sont sélectionnées, la tuile n’apparaîtra pas.
- VisibleOnMultipleValues - Tuile uniquement visible lorsque plusieurs valeurs sont sélectionnées dans la tuile de filtre.
Configuration des paramètres d’affichage de la tuile, pour le client
C++. La WebUI n’en lit que icon (ByTaskType, ByRecord : l’icône
de la famille de la tâche) et showIcon ; couleurs, polices, images
et positions de titre sont ignorées : la couleur et l’icône viennent
de la famille de la tâche, un état s’écrit avec attention. Un noeud
vide (<visual />) suffit à une tuile écrite pour la WebUI.
-
titlePosition {0-1} (TitlePosition) - Valeurs possibles:
- Bottom -
- Middle -
- Top -
-
titleAlign {0-1} (TitleAlign) - Valeurs possibles:
- Left -
- Middle -
- Right -
-
titleOffset {0-1} (xs:integer) -
-
titleColor {0-1} (HtmlColor) -
-
titleFontName {0-1} (xs:string) -
-
titleFontSize {0-1} (xs:integer) -
-
backgroundImage {0-1} (IconFile) -
-
useSecondaryIcon {0-1} (xs:string) -
-
iconShading {0-1} (IconShading) - Valeurs possibles:
- Monochrome - L’icône présentée suit le style “Windows 10” avec une icône
monochrome au style simplifié et plat.
L’icône est récupérée dans le répertoire
Mono png icons. - Normal - L’icône présentée suit le style “Windows 7” avec une icône
colorée au style 3D.
L’icône est récupérée dans le répertoire
Highres png iconsainsi que les autres dossiersSystem images.
- Monochrome - L’icône présentée suit le style “Windows 10” avec une icône
monochrome au style simplifié et plat.
L’icône est récupérée dans le répertoire
-
iconColor {0-1} (HtmlColor) -
-
maxWidth {0-1} (xs:string) - Largeur maximale de l’icône dans la tuile en fraction de la largeur de la tuile. Par défaut l’icône prend sa taille native, il est possible de gérer les écrans plus petits (tailles de
DASHBOARD_SQUARE_UNITSpersonnalisées) avec cet attribut. La valeur doit être entre 0 et 1. -
maxHeight {0-1} (xs:string) - Hauteur maximale de l’icône dans la tuile en fraction de la hauteur de la tuile. Par défaut l’icône prend sa taille native, il est possible de gérer les écrans plus petits (tailles de
DASHBOARD_SQUARE_UNITSpersonnalisées) avec cet attribut. La valeur doit être entre 0 et 1. -
showIcon {0-1} (xs:string) - Définit si l’icône est affichée ou pas.
-
icon {0-1} (TileIcon) -
-
backgroundType {0-1} (BackgroundType) - Valeurs possibles:
- None - Aucun fond. La tuile sera transparente.
- Color - Fond coloré. La couleur est définie par la propriété
backgroundColor. - Image - Image de fond. L’image à afficher est définie par la propriété
backgroundImage.
-
backgroundColor {0-1} (HtmlColor) -
-
backgroundAlpha {0-1} (xs:string) -
Configuration de l’action à lancer lorsque l’utilisateur clique sur la tuile. Par défaut, aucune action n’est lancée.
- type {TileActionType} -
Valeurs possibles:
- Notification - Lance une notification lorsque la tuile est cliquée. Les notifications doivent exister ou être définies entièrement dans la configuration de la tuile.
- Task - La tuile définie dans la configuration de la tuile est exécutée
avec de manière optionelle le filtre défini dans
filterIdet une grille personnalisée définie dansgridIdde la configuration de la tuile. - None - La tuile ne fait aucune action. Utilisé typiquement dans les tuiles de grille qui affichent simplement de l’information
- mode {ActionMode} - WebUI.
inline: une actionNotifications’exécute depuis la carte, sans ouvrir de tâche, après la confirmationconfirm; le serveur rafraîchit ensuite le dashboard.open(défaut) : comme aujourd’hui. Valeurs possibles:- open -
- inline -
- confirm {string} - WebUI. La question posée avant une action
inline, qui nomme ce qu’elle fait (« Renvoyer ${N} factures, dont ${M} eBill ? ») ; le bouton de confirmation porte le libellé de l’action. - reason {ActionReason} - WebUI, action
inline: un motif demandé dans la confirmation (required: obligatoire,optional: facultatif), transmis au serveur avec l’action (argumentreason) qui le garde. Valeurs possibles:- required -
- optional -
- preview {string} - WebUI, action
inline: l’identifiant d’une tuile liste du dashboard dont les lignes forment l’aperçu de l’action en lot. La confirmation les montre une à une, sépare les prêtes de celles à revoir (list/ready, avec leurlist/cause) et permet d’en exclure ; les lignes retenues partent avec la notification. - approval {ActionApproval} - WebUI, action
inline:fourEyesdit dans la confirmation que l’action part en attente de la validation d’une seconde personne (le serveur l’impose) ;selfqu’elle est validée par l’utilisateur seul. Valeur ou variable du serveur : la double validation se proportionne (au-dessus d’un montant, selon la taille de la structure). - approver {string} - WebUI. Qui validera (
${VAR}, « Marie Favre ») : la confirmation le nomme. - approvalNote {string} - WebUI. Pourquoi cette validation, en mots du serveur (« Sous 5’000 CHF : validé par vous seul, avec un motif »).
- labelDone {string} - WebUI. Le texte du lien d’action quand l’étape est terminée ou à jour
(
attentiondoneouok) : on consulte une étape finie, on ne la relance pas. Sans lui, « Consulter ». - label {string} - WebUI. Le texte du lien d’action (« Toutes les pré-inscriptions », « Assistant de validation »). Sans lui, le verbe de la famille de la tâche : Ouvrir, Voir, Lancer, Générer, ou « Tout voir » pour une liste.
- taskId {0-1} (TaskIdentifier) - Pour les actions de type
Task, spécifie quelle tâche est ouverte lors du clic sur la tuile. Si pas spécifié, c’est letaskIddu noeudconfigqui sera utilisé. - filterId {0-1} (xs:string) - Pour les actions de type
Task, spécifie quel filtre est appliqué sur le navigateur de la tâche ouverte. Le filtre doit exister. - gridId {0-1} (xs:string) - Pour les actions de type
Task, spécifie la grille du navigateur de la tâche ouverte ; prime sur legridIddu noeudconfig. Déjà lu par le client C++. - notification {0-1} (xs:string) - Pour les actions de type
Notification, spécifie l’identifiant de la notification à appeler lorsque l’utilisateur clique sur la tuile. - notificationSource {0-1} (NotificationType) - Pour les actions de type
Notification, spécifie le type de notification.RemoteouLocal. - notificationArguments {0-1} (xs:string) - Pour les actions de type
Notificationen sourceRemote, spécifie les arguments qui seront transmis avec la notification. - notificationTask {0-1} (xs:string) - Pour les actions de type
Notificationen sourceRemote, spécifie la tâche qui sera utilisée
- ID * {string} - Identifiant du datafield. Cet identifiant correspond à l’identifiant
en base de données. Cet identifiant doit être unique au sein d’une
même table.
Les datafields de clé doivent se terminer par
_PKpar convention. - Source * {DataFieldSource} - Mode de stockage des données du datafield (base de données directe,
table de dossier, ou en mémoire uniquement pour les datafields
TaskOnly). Valeurs possibles:- DataBaseDirect - Le datafield est stocké dans une colonne de la base de données. Il s’agit du stockage normal de données dans les tables standard et les entêtes de dossier.
- DataBaseDossier - Le datafield est stocké dans la table des champs de dossier. Aucune colonne spécifique au datafield n’est nécessaire dans la base de données. Il s’agit du stockage standard dans les tables de type dossier.
- TaskOnly - Le datafield n’est pas stocké automatiquement. Par défaut, le serveur ne rempli pas les champs issus de datafields de ce type. Les valeurs sont envoyées lors de la validation mais ne sont pas sauvegardés par le système.
- Format * {DataFieldFormat} - Format des données stockées au travers du datafield.
Valeurs possibles:
- String - Chaine de caractères simple.
- MultiLineString - Chaîne de caractères sur plusieurs lignes. Il s’agit d’un des types de données qui peuvent être présentés sur plusieurs lignes.
- Script - Chaîne de caractères sur plusieurs lignes représentant un script saisi par l’utilisateur. Il s’agit d’un des types de données qui peuvent être présentés sur plusieurs lignes.
- Integer - Nombre entier
- Financial - Nombre décimal stocké sans perte de précision en base de données
- Float - Nombre à virgule flottante. Ce format ne doit pas être utilisé pour des calculs financiers
- Year - Nombre entier représentant une année
- Date - Date
- DateTime - Date et heure
- Time - Heure
- Boolean - Booléen
- ByForeignKey - Le format de ce datafield est calculé à partir du champ vers
lequel il est lié. Doit préciser un attribut
TableName. - Percentage - Nombre à virgule flottante représentant un pourcentage
- Enum - Élément de combo. Doit préciser un attribut
EnumName. - List - Liste d’éléments sélectionnés à partir d’une autre table ou d’un Enum.
Doit préciser un attribut
TableNamepour lier à une table. Doit préciser un attributEnumNamepour lier à une combo. Si l’attribut DisplayColumn est précisé, le champ affiche la valeur indiqué dans la colonne spécifiée de la grille de selection dans le cas d’unTableName. Dans le cas d’un Enum, la displayColumn doit êtreLabel. - GEDDocument - Lien vers un document stocké en base de données.
- GEDImage - Lien vers une image stockée en base de données.
- GPSCoordinates - Coordonnées GPS.
- File - Fichier sur le disque.
Ce format est utilisé en règle générale sur un champ
TaskOnlypour permettre à l’utilisateur d’uploader un document. - Filter - Filtre de données.
Utilisé principalement sur un champ
TaskOnlydans les tâches de vue, de liste et de traitement. Doit définir un attributFilterNamepointant vers un filtre existant dans le paramétrage. - PrintSettings - Configuration d’impression.
Utilisé principalement sur un champ
TaskOnlydans les tâches de liste afin de permettre à l’utilisateur de configurer le format de sortie du document. - PagesAndFields - Sélecteur de page et champs.
Seulement utilisé par le datafield global
SELECT_PAGES_AND_FIELDS.
- IsGenerated {boolean} - Indique que ce datafield est interne et a été généré automatiquement.
De manière générale, cet attribut ne doit pas être déclaré. Il est utile
uniquement pour les datafield de type
DOMAIN_PKqui doivent parfois être déclarés explicitement dans la table et à ce moment-là il est nécessaire d’ajouter IsGenerated=“false” afin que les vérifications passent. Cet attribut ne peut pas être déclaré pour des datafields qui ne sont pas générés. - InternLabel {string} - Libellé interne pour le développeur. Si aucune redéfinition n’est effectuée dans les fichiers de propriétés, ce libellé est affiché à l’utilisateur.
- InternDescription {string} - Description interne pour le développeur. Ce texte n’est jamais affiché à l’utilisateur.
- IsKey {boolean} - Attribut obligatoire pour les datafields faisant partie de la
clé. Ces datafields doivent se terminer par le suffixe
_PK. - IsHeader {boolean} - Si
true, ce DataField fera partie du titre de l’écran (au-dessus du premier groupe). Le titre est généré dans l’ordre de définition des DataFields. - IsTitle {boolean} - Déprécié: préférer l’utilisation de l’attribut
Titledans laPageduTasksAndFields. Sitrue, ce DataField fera partie du titre dans le navigateur de page. Le titre est généré dans l’ordre de définition des DataFields. - Importance {DataFieldImportance} - Caractère obligatoire du champ pour la validation. Voir
DataFieldImportancepour les valeurs possibles. Valeurs possibles:- 0 - Le field n’est pas obligatoire pour validation.
- 1 - Le field est obligatoire pour la validation de l’entrée. S’il n’est pas spécifié lors de la validation, une étoile apparaît à côté du champ.
- 2 - Le field est obligatoire pour la validation de l’entrée. Une étoile est toujours affichée lors de la saisie.
- TableName {string} - Spécifie la table vers laquelle les données stockées dans le
datafield pointent. Cet attribut est obligatoire si le format
du datafield est
ByForeignKey. - FilterName {string} - Spécifie le filtre à appliquer. Est obligatoire si le format
du datafield est
Filter. - PlaceHolder {string} - Spécifie le placeholder affiché dans le champ qui pointe vers
ce datafield. Il est également possible d’internationaliser la
valeur dans les properties en spécifiant une entrée
datafieldId.PlaceHolder - EnumName {string} - Spécifie l’identifiant de la combo liée au datafield. Cet
attribut n’est valide que sur les datafields de type
Enum. Les valeurs possibles sont soit une combo définie dans les fichiers de combo. Il est également possible d’utiliser la valeurByDataFieldNameafin d’utiliser automatiquement la combo ayant le même identifiant que le datafield. La valeurByTaskAndFieldNamepermet également d’utiliser automatiquement la combo ayant le même identifiant que la tâche et le champ utilisant le datafield. - GridView {string} - Pour les champs pointant sur une autre table, spécifie la grille
de données utilisée afin de récupérer les valeurs.
Cet attribut ne peut être utilisé que pour les formats
ByForeignKey,ListetFilteret doit faire référence à une grille existante dans le paramétrage. - Raw {boolean} - Pour les champs pointant sur une autre table, spécifie si les appels
pour la récupération des données avec le GridView doit être fait avec
raw=true(true par défaut). Cet attribut ne peut être utilisé que pour les formatsByForeignKey,ListetFilter. - MaxLength {integer} - Spécifie la longueur maximale du contenu du champ. Cette valeur
doit être prise en compte lors de la création des colonnes en
base de données. Si l’attribut
AllowMultipleLanguagesest activé, le contenu en base doit également être plus long que la longueur définie ici (MaxLength*nombre de langues). Pour les typesEnum, la longueur doit permettre de stocker tous les identifiants de la combo. - AllowMultipleLanguages {boolean} - Spécifie si l’utilisateur peut saisir des valeurs par langue dans les champs liés à ce datafield. Si activé, le client riche active les fonctionnalités de saisie multilingue et les rendus affichent la valeur définie dans la langue de l’utilisateur courant.
- AllowMultipleFiles {boolean} - Spécifie si l’utilisateur peut sélectionner plusieurs fichiers. Ces fichiers seront zippés avant d’être envoyés au serveur. Propriété uniquement disponible pour les datafields au format File.
- NbDecimals {integer} - Nombre de décimales stockées et présentées. Par défaut, les
datafields de type
Financialutilisent 2 chiffres décimaux. Cet attribut n’est valide que sur les datafields de typeFinancialetPercentage. - SortIndex {string} - Tri par défaut dans les grilles. Si aucun filtre ne redéfini
d’ordre, le système insère le datafield à la position définie
dans le filtre. Si un ordre est défini dans le filtre, cet attribut
est ignoré.
Par exemple, si un datafield de la table affichée dans la grille
défini un attribut
SortIndexavec la valeur1 DESC, le client va ajouter automatiquement ce datafield comme tri par défaut. - SpecialMask {string} - Masque de saisie. Si aucun masque n’est spécifié, toutes les
valeurs possibles pour le champ peuvent être entrées. Avec un
masque de saisie, le format des données peut être forcé.
Les masques sont définis sous la forme
999.9999.9999.99par exemple si l’on veut permettre à l’utilisateur de saisir un identifiant sous la forme '3 chiffres, un point (ajouté automatiquement), 4 chiffres, un point, 4 chiffres, un point et finalement 2 chiffres. La documentation complète sur les masques est disponible ici: http://docwiki.embarcadero.com/Libraries/XE2/en/System.MaskUtils.TEditMask - StoreMaskCharsInDataBase {boolean} - Indique si les caractères du masque (SpecialMask) doivent être stockés en base de donnée (true par défaut).
- SpecialRegExp {string} - Masque de saisie avancé. Cet attribut peut être utilisé si le masque de saisie “SpecialMask” n’est pas suffisamment souple. Les expressions régulières doivent être saisie au format standard PCRE.
- DefaultValue {string} - Valeur par défaut lors de l’ouverture de la tâche ou lors de la création d’une nouvelle entrée. La valeur peut être soit en dur, soit faire référence à un script ou à une variable de script.
- PermanentValue {string} - Valeur forcée du champ. À la différence d’un
DefaultValue, la valeur ne peut pas être modifiée par l’utilisateur. La valeur peut être soit en dur, soit faire référence à un script ou à une variable de script. - EnableRichText {boolean} - Active les fonctionnalités de présentation dans les champs de
saisie
MultiLineString. Ces fonctionnalités permettent de modifier le style du texte, d’ajouter du gras, italique, … Dans ces champs il est important de prendre en compte la longueur des données de formatage qui sont insérées par le champ. - CanBeUsedForFilter {boolean} - Permet d’afficher ou masquer de champ dans les filtres qui sont
de type
ByDataFieldsouByDataFieldsAndGridView. Par défaut, cette valeur vauttrue. - CanBeUsedForSelection {boolean} - Permet d’afficher ou masquer le champ dans les selections de
champs des vues de dossier. A noter que si un field pointe vers
un datafield
TaskOnly, il n’apparaitra pas même si cet attribut esttruePar défaut, cette valeur vauttrue. - CanBeUsedForOperations {boolean} - Permet d’afficher ou masquer le datafield dans la liste des opérations
disponibles (tâches d’agrégation, statistiques). Par défaut
true. - ForeignKeyField {string} - Permet de préciser quelle colonne doit être utilisée comme clé étrangère
dans la grille ouverte pour la sélection lorsque l’utilisateur clique
sur le bouton ‘Choisir’ dans un filtre (uniquement pour les champs au format
ByForeignKey). Par défaut, le système va récupérer la première colonne dont le datafield contient_PK. Si cette valeur est précisée, la colonne précisée sera utilisée. - AllowNonExistentEntry {boolean} - Pour les datafields
ByForeignKeyetListliés à une table (GridView, sansEnumName) : autorise une valeur absente de la grille de contrôle (par exemple le joker*ou un sous-motifSAL*interprétés par le moteur). Respecté par l’API REST. Par défautfalse. Cet attribut n’est lu que par l’API REST (le client riche lit l’attribut homonyme duField). Pour unByForeignKey, il n’ouvre que le champ qui porte ce datafield ; la validation métier de la tâche reste responsable de la cohérence de la valeur. - Presentation {DataFieldPresentation} - Mode de présentation du champ à l’écran (bouton, lien, case à cocher,
mémo, …). Surcharge la présentation par défaut du format.
Valeurs possibles:
- Link - Présentation sous forme d’hyperlien cliquable par l’utilisateur. Aucune donnée ne peut être saisie.
- Memo - Présentation du champ de saisie sous forme de champ de saisie multiligne extensible.
- Button - Présentation sous forme de bouton cliquable par l’utilisateur. Aucune donnée ne peut être saisie.
- RadioButton - Présentation de la combo sous forme de liste à puces (radio button) sélectionnables.
- FileName - Présentation sous forme de sélection de fichier avec hyperlien ouvrant une fenêtre de sélection.
- Image - Présentation sous forme d’image. Aucune donnée ne peut être saisie.
- CheckBox - Présentation de la combo ou du booléen sous forme de case à cocher.
- Edit - Présentation par défaut d’un champ de saisie.
- Icon - Présentation de la combo sous forme d’icône pouvant être sélectionnée. Fonctionne sur le web uniquement. L’icône est récupérée dans le champ Icon de la combo.
- Mail - Un champ de type mail vérifie le format entré par l’utilisateur afin de garantir qu’il respecte le format général d’une adresse mail. Il permet également directement d’ouvrir l’application mail par défaut de l’appareil en cliquant sur la petite icône associée. Cette fonctionnalité est actuellement seulement disponible sur les devices mobiles.
- Phone - Ce champ est géré à travers la librairie de gestion des indicatifs téléphoniques par pays. Ceci permet de garantir que le format de tous les téléphones sont bien formattés et préfixés de la même et bonne manière en fonction du pays. Cette fonctionnalité est actuellement seulement disponible sur les devices mobiles.
- SingleOnAllRecords {boolean} - Pour les formats booléens, force une seule valeur à être active au travers de toutes les entrées présentes. Ceci permet l’activation d’une seule valeur à la fois au travers de la solution, étendant la fonctionnalité d’un bouton radio.
- Existence {string} - Expression contrôlant l’existence (présence) du datafield selon le contexte. Peut référencer des variables ou conditions. Si l’expression est fausse, le datafield est absent du schéma effectif.
- Silo {string} - Le silo permet de stocker les dernières valeurs saisies par
l’utilisateur dans le champ.
La valeur peut être soit un booléen
true/falsepour activer ou désactiver la fonctionnalité, soit un identifiant permettant de stocker l’historique de plusieurs champs dans un seul silo partagé, par exemple lorsque plusieurs champs sont destinés à recevoir les mêmes valeurs. - ScriptOnClick {string} - Lorsque l’utilisateur clique sur le champ, le script spécifié par la valeur de l’attribut sera appellé. Il pourra modifier les valeurs de l’écran ou effectuer des actions telles que télécharger un fichier ou poser des questions à l’utilisateur. Le script à appeler peut être soit inclu dans l’attribut pour des scripts simples, soit faire référence à un fichier de script dans le paramétrage ainsi qu’un libellé pour les scripts plus complexes.
- NotificationOnClick {string} - Lorsque l’utilisateur clique sur le champ, la notification spécifiée par la valeur de l’attribut sera appellée
- NotificationType {NotificationType} - Type de notification déclenchée par
NotificationOnClick(LocalouRemote). Valeurs possibles:- Local - Notification statique côté client (déclarée dans
Notifications_<CHAINE>.xmlou via uneStaticNotificationJava). - Remote - Notification distante, traitée par un
NotificationHandlercôté serveur. Nécessite un appel HTTP au serveur.
- Local - Notification statique côté client (déclarée dans
- RemoteTask {string} - Dans le cas d’un
NotificationOnClickde typeRemote, la tâche spécifiée sera utilisée pour l’appel. - RemoteArguments {string} - Dans le cas d’un
NotificationOnClickde typeRemote, les arguments spécifiés seront passés à la tâche lors de l’appel. - ShowDays {boolean} - Pour les champs de date, permet de définir si les jours doivent être affichés. Si cet attribut est à false, seul le mois et l’année peuvent être saisis. Par défaut, les jours sont affichés pour les formats date.
- ShowSeconds {boolean} - Pour les champs de date, permet de définir si les secondes doivent être affichés. Par défaut, seules les heures et minutes sont affichées pour les formats de date avec heure.
- Supremum {boolean} - Pour les champs au format
Datesans affichage des jours, précise que le jour ajouté en interne doit être le dernier jour du mois et non pas le premier jour du mois. N’a aucun impact sur les autres types de champ ni sur les champs de date où le jour peut être précisé par l’utilisateur. - DisplayCode {EnumDisplayCode} - Mode d’affichage des champs de type Enum (combobox).
Par défaut,
CodeAndText. Valeurs possibles:- CodeOnly - Affiche uniquement l’identifiant des éléments de la combo.
- TextOnly - Affiche uniquement le texte des éléments de la combo.
- CodeAndText - Valeur par défaut. Affiche à la fois l’identifiant de la combo et le texte.
- DocumentTemplate {string} - Pour les boutons de document, spécifie le template qui doit être utilisé afin de générer le document qui sera ouvert à l’utilisateur. Le template doit exister dans UNI94 ou dans le paramétrage sinon l’utilisateur rencontrera une erreur lors de l’utilisation.
- DocumentApplication {DocumentApplication} - Pour les boutons de document, spécifie l’application qui sera
utilisée pour ouvrir le template. Cet attribut permet également
de définir l’icône qui est présente sur le bouton.
Valeurs possibles:
- Word - Microsoft Word ou équivalent compatible
.docx. - Excel - Microsoft Excel ou équivalent compatible
.xlsx.
- Word - Microsoft Word ou équivalent compatible
- DocumentPrintLanguage {string} - Pour les boutons de document, permet de définir la langue du document à récupérer pour générer le document présenté à l’utilisateur. Par défaut, la langue de l’utilisateur est utilisée. Cet attribut permet de définir la langue du document par exemple en fonction de la langue de la société ou du client pour lequel le document doit être généré.
- BoolPresentInFilter {BooleanFilterPresence} - Permet de spécifier comment le filtre doit être généré par rapport
à la valeur du boolean.
Par défaut, cette valeur est PresentIfTrue, ce qui signifie que
le prédicat est ajouté au filtre seulement si la checkbox et cochée.
Valeurs possibles:
- PresentIfTrue - Le prédicat n’est ajouté à la requête que si la valeur est
true(la case est cochée). Comportement par défaut. - PresentIfFalse - Le prédicat n’est ajouté que si la valeur est
false. - Always - Le prédicat est toujours ajouté à la requête, quelle que soit la
valeur (filtre
= trueou= false).
- PresentIfTrue - Le prédicat n’est ajouté à la requête que si la valeur est
- ShowDocumentSaveBtn {boolean} - Pour les champs
GEDDocumentet boutons de document : affiche un bouton “Enregistrer” permettant à l’utilisateur de sauvegarder le document généré dans son système de fichiers. - KeepDocumentVersions {boolean} - Pour les champs
GEDDocument: conserve l’historique des versions du document à chaque enregistrement. Sifalse, seul le dernier document est conservé. - AutoSaveDocument {boolean} - Pour les champs
GEDDocument: sauvegarde automatiquement le document modifié à la validation, sans demander confirmation à l’utilisateur. - ScriptLanguage {FormatScriptLanguage} - Pour les champs au format
Script: langage utilisé pour activer la coloration syntaxique côté client (JavaScript,Script,XML). N’active pas de validation syntaxique côté serveur. Valeurs possibles:- JavaScript -
- Script -
- XML -
- Protected {boolean} - Active le masquage des données saisies. Les données sont envoyées et récupérées normalement, seul l’affichage est impacté. Ainsi un traitement supplémentaire devrait être prévu si le champ contient un mot de passe ou autres données ne devant pas pouvoir être récupérées.
- FileType {string} - Pour les champs au format “File”, permet de définir quels formats
de fichier peuvent être sélectionnés dans l’explorateur de fichiers.
Le format de cet attribut doit correspondre aux valeurs attendues
par l’explorateur Windows.
Par exemple
HTML files (*.html)|*.htm;*.htmlouBVR (*.xml,*.V11)|*.xml;*.V11|ZIP (*.zip)|*.zip. - ImageLimit {integer} - Pour les champs
GEDImage: nombre maximum d’images autorisées dans le champ. Par défaut illimité. - IsMainPicture {boolean} - Pour les champs
GEDImage: indique que cette image sert d’image principale (utilisée comme miniature dans les grilles, par exemple). - ImageSource {string} - Image à afficher. L’image peut provenir de “Task images” ou “Highres png icons”. Il est possible également d’insérer l’image sous forme de matrice binaire avec le format suivant: bit:rows:columns:data.
- bit => format de l’image. Pour l’instant seul ‘bit’ est supporté en noir/blanc (QR-Code).
- rows => nombre de lignes du tableau data.
- columns => nombre de colonnes du tableau data.
- data => suite de 0 (blanc) et 1 (noir) correspondant aux nombre de lignes puis de colonnes indiquées.
Exemple:
bit:2x3:110000(1ère ligne noire, 2ème et 3ème lignes blanches)
- Generic {boolean} - Pour les champs
Buttondans les tâches présentées en HistoryViewer, affiche le champ sur l’HistoryViewer. Permet de présenter des fonctionnalités liées aux événements affichés dans l’historique, en passant par les attributsScriptOnClickouCallOnClickpar exemple.