PopupMenus

Les PopupMenus permettent d’ajouter des actions contextuelles sur des entrées dans une tâche de saisie, des lignes d’une grille dans une tâche de vue, etc …

Ces actions facilitent l’accès aux différentes fonctionnalités liées aux différentes entrées.

PopupMenus

Racine du fichier. Regroupe les PopupMenus par cible (tâche, table, grille, page).

  • Task (PopupGroup) - Les PopupMenus définis dans cet éléments seront attachés et disponibles uniquement sur cette tâche.
  • Table (PopupGroup) - Les PopupMenus définis dans cet éléments seront attachés et disponibles uniquement sur cette table. Ils seront par contre sur toutes les tâches utilisant cette table.
  • GridView (PopupGroup) - Les PopupMenus définis dans cet éléments seront attachés et disponibles uniquement sur cette grille.
  • DataPage (PopupGroup) - Les PopupMenus définis dans cet élément seront attachés et disponibles uniquement sur cette page de dossier. L’attribut ID doit être au format <tableId>.<datapageId> (par exemple ADRDOS.SECTION) et commencer par le préfixe de la chaîne.

PopupGroup

Conteneur de PopupMenus pour une cible donnée (tâche, table, grille ou page). L’ID indique la cible : identifiant de tâche (5 caractères), de table (6 caractères), de GridView ou de DataPage.

Attributs:

  • ID * {string} - Identifiant de la cible (tâche, table, GridView ou DataPage selon le noeud parent).

Eléments:

  • PopupMenu {0-∞} (PopupMenu) - Un menu contextuel, présenté comme un groupe d’actions / sous-menus dans le panneau latéral. Chaque PopupMenu apparaît visuellement comme une section distincte.

PopupMenu

Un menu contextuel, présenté comme un groupe d’actions / sous-menus dans le panneau latéral. Chaque PopupMenu apparaît visuellement comme une section distincte.

Attributs:

  • ID * {string} - Identifiant unique du PopupMenu au sein du conteneur. Doit respecter le motif [A-Z0-9_]+ (lettres majuscules, chiffres, underscores). Transmis au serveur dans les grid_action pour traçabilité.

Eléments:

  • Item (PopupMenuItem) - Action directe du menu, présentée comme un bouton avec une icône. Pour un item d’un PopupMenu (par opposition à un sous-menu), l’icône est obligatoire.
  • SubMenu (PopupMenuSubMenu) - Sous-menu déroulant regroupant plusieurs actions liées entre elles.

PopupMenuSubMenu

Sous-menu déroulant. Le sous-menu lui-même est affiché comme un bouton avec une icône qui, au clic, déploie sa liste d’items.

Attributs:

  • ID * {string} - Identifiant du sous-menu, unique au sein du PopupMenu parent.
  • Label * {string} - Libellé affiché sur le bouton du sous-menu (peut être internationalisé via les fichiers properties).
  • Icon * {string} - Nom de l’icône à afficher (sans extension). L’image doit exister sous Ressources/Highres png icons/ avec les 4 tailles requises : <icon> 80x80.png, <icon> 60x60.png, <icon> 36x36.png et <icon> 28x28.png. Pour les PopupMenus de GridView, le fichier Ressources/Record icons/<icon>.png peut être utilisé comme alternative.
  • Scope {PopupMenuScope} - Restreint la portée d’application du sous-menu (single record, sélection multiple, tous les enregistrements). Hérité par les Item enfants s’ils ne le redéfinissent pas. Valeurs possibles:
    • AllVisibleRecords - L’action s’applique globalement, indépendamment de la sélection du navigateur (par exemple “Ouvrir le tableau de bord”, “Rafraichir la tâche”). Aucune variable de sélection n’est requise dans RemoteArguments.
    • SingleRecord - L’action n’est disponible que lorsqu’un et un seul enregistrement est sélectionné. Les clés sélectionnées sont accessibles dans RemoteArguments via ${NAV_SELECTED_KEY_VALUES} (clés concaténées) ou ${NAV_SELECTED_XML_KEYS} (format XML).
    • SelectedRecords - L’action accepte la sélection multiple. Les clés sélectionnées sont accessibles dans RemoteArguments via ${NAV_SELECTED_KEY_VALUES} (clés concaténées) ou ${NAV_SELECTED_XML_KEYS} (format XML).
  • Visible {string} - Expression conditionnelle d’affichage. Peut référencer des variables de contexte (par exemple ${ROLE_ADMIN}=true) pour masquer le sous-menu aux utilisateurs non autorisés.

Eléments:

  • Item (PopupMenuSubMenuItem) - Action d’un sous-menu. Identique à un PopupMenuItem à l’exception de l’icône qui est ici optionnelle (le sous-menu parent porte l’icône principale). Numérotation conventionnelle : multiples de 10 (10, 20, …) pour faciliter les insertions ultérieures.

PopupMenuSubMenuItem

Action d’un sous-menu. Identique à un PopupMenuItem à l’exception de l’icône qui est ici optionnelle (le sous-menu parent porte l’icône principale). Numérotation conventionnelle : multiples de 10 (10, 20, …) pour faciliter les insertions ultérieures.

Attributs:

  • ID * {string} - Identifiant de l’item, unique au sein du PopupMenu (à travers tous les items et sous-menus). Doit respecter le motif [A-Z0-9_]+ (lettres majuscules, chiffres, underscores). Par convention, identifiant numérique par dizaines (10, 20, 30…) pour faciliter les insertions ultérieures.
  • Label * {string} - Libellé affiché sur le bouton d’action. Internationalisable via les fichiers properties.
  • Scope {PopupMenuScope} - Portée d’application : SingleRecord (un seul enregistrement sélectionné), SelectedRecords (plusieurs autorisés), AllVisibleRecords (action globale sur la vue). Valeurs possibles:
    • AllVisibleRecords - L’action s’applique globalement, indépendamment de la sélection du navigateur (par exemple “Ouvrir le tableau de bord”, “Rafraichir la tâche”). Aucune variable de sélection n’est requise dans RemoteArguments.
    • SingleRecord - L’action n’est disponible que lorsqu’un et un seul enregistrement est sélectionné. Les clés sélectionnées sont accessibles dans RemoteArguments via ${NAV_SELECTED_KEY_VALUES} (clés concaténées) ou ${NAV_SELECTED_XML_KEYS} (format XML).
    • SelectedRecords - L’action accepte la sélection multiple. Les clés sélectionnées sont accessibles dans RemoteArguments via ${NAV_SELECTED_KEY_VALUES} (clés concaténées) ou ${NAV_SELECTED_XML_KEYS} (format XML).
  • Visible {string} - Expression conditionnelle d’affichage. Si fausse, l’item n’apparaît pas dans le menu.
  • MobileVisible {string} - Expression conditionnelle d’affichage spécifique au portail mobile. Permet de masquer un item sur mobile uniquement.
  • ScriptOnClick {string} - Script JavaScript exécuté côté client au clic. Utilisé pour les actions purement clientes ou pour préparer un appel serveur. Exclusif avec NotificationID.
  • ActionID {string} - Identifiant logique de l’action transmis au serveur (via la variable ${actionId}). Permet à un même handler de notification de traiter plusieurs actions différenciées par cet identifiant. Cas particulier : pour les notifications standards OPEN_TASK et OPEN_TASK_EXEC, ActionID doit valoir l’identifiant de la tâche à ouvrir (et la tâche doit exister).
  • Type {PopupMenuItemType} - Type d’action : Notification (déclenche une notification statique ou serveur) ou Script (exécution d’un script JavaScript côté client). Valeurs possibles:
    • Notification - Déclenche une notification (locale ou distante). Les attributs NotificationID, NotificationSource et éventuellement RemoteTask / RemoteArguments sont alors requis.
    • Script - Exécute un script JavaScript côté client (ScriptOnClick). Aucune communication serveur n’est implicite.
  • NotificationID {string} - Identifiant de la notification à déclencher. Pour NotificationSource="Local", identifiant d’une notification statique XML ou d’une StaticNotification Java. Pour Remote, identifiant du handler côté serveur.
  • NotificationSource {string} - Source de la notification : Local (résolue côté client à partir de Notifications_<CHAINE>.xml) ou Remote (appel au handler Java).
  • RemoteTask {string} - Tâche utilisée pour l’appel serveur quand NotificationSource="Remote". Le handler doit être déclaré dans cette tâche. Si NotificationSource="Local", cet attribut est interdit. Si la notification est Remote mais que le PopupMenu est attaché à un <Task>, l’attribut peut être omis (la tâche conteneur est utilisée par défaut).
  • RemoteArguments {string} - Arguments transmis à la notification distante sous la forme param1=val1&param2=val2. Peut référencer des variables du contexte courant via ${...} (par exemple ${NAV_SELECTED_KEY_VALUES}, ${DEFAULT_VIEW_TYPE}). Interdit si NotificationSource="Local".
  • MandatoryAccessTask {string} - Identifiant d’une tâche à laquelle l’utilisateur doit avoir accès pour voir l’item. Permet de cacher l’action aux utilisateurs sans droits.
  • MandatoryAccessRights {string} - Droits spécifiques requis sur MandatoryAccessTask. Chaque caractère de la chaîne doit être un code d’autorisation SAINet valide (saierp.util.Constants.ACTIONS) : typiquement R (lecture), W (écriture), etc.

PopupMenuItem

Item de premier niveau d’un PopupMenu. Identique à un PopupMenuSubMenuItem à l’exception de l’icône qui est obligatoire (un item de premier niveau est affiché directement comme un bouton avec icône dans le panneau).

DataField

Attributs:

  • 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 _PK par 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 TableName pour lier à une table. Doit préciser un attribut EnumName pour 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’un TableName. Dans le cas d’un Enum, la displayColumn doit être Label.
    • 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 TaskOnly pour permettre à l’utilisateur d’uploader un document.
    • Filter - Filtre de données. Utilisé principalement sur un champ TaskOnly dans les tâches de vue, de liste et de traitement. Doit définir un attribut FilterName pointant vers un filtre existant dans le paramétrage.
    • PrintSettings - Configuration d’impression. Utilisé principalement sur un champ TaskOnly dans 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_PK qui 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 Title dans la Page du TasksAndFields. Si true, 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 DataFieldImportance pour 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 valeur ByDataFieldName afin d’utiliser automatiquement la combo ayant le même identifiant que le datafield. La valeur ByTaskAndFieldName permet é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, List et Filter et 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 formats ByForeignKey, List et Filter.
  • 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 AllowMultipleLanguages est activé, le contenu en base doit également être plus long que la longueur définie ici (MaxLength*nombre de langues). Pour les types Enum, 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 Financial utilisent 2 chiffres décimaux. Cet attribut n’est valide que sur les datafields de type Financial et Percentage.
  • 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 SortIndex avec la valeur 1 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.99 par 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 ByDataFields ou ByDataFieldsAndGridView. Par défaut, cette valeur vaut true.
  • 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 est true Par défaut, cette valeur vaut true.
  • 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.
  • StrictForeignKey {boolean} - Pour les datafields ByForeignKey : force le contrôle d’intégrité référentielle au moment de la saisie (la valeur doit obligatoirement exister dans la table cible). Par défaut, le contrôle peut être tolérant selon le contexte.
  • 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/false pour 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 (Local ou Remote). Valeurs possibles:
    • Local - Notification statique côté client (déclarée dans Notifications_<CHAINE>.xml ou via une StaticNotification Java).
    • Remote - Notification distante, traitée par un NotificationHandler côté serveur. Nécessite un appel HTTP au serveur.
  • RemoteTask {string} - Dans le cas d’un NotificationOnClick de type Remote, la tâche spécifiée sera utilisée pour l’appel.
  • RemoteArguments {string} - Dans le cas d’un NotificationOnClick de type Remote, 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 Date sans 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.
  • 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 = true ou = false).
  • ShowDocumentSaveBtn {boolean} - Pour les champs GEDDocument et 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. Si false, 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;*.html ou BVR (*.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 Button dans 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 attributs ScriptOnClick ou CallOnClick par exemple.