Aller au contenu

Gestion des vues

Les vues fournissent aux utilisateurs un accès à un ensemble d'entités préfiltrées en fonction des besoins. Une vue est une liste à laquelle l'administrateur donne accès aux utilisateurs, et pour laquelle il définit les entités visibles, les informations affichées et les filtrages possibles.

Accès aux modèles

Les sections Vue... de l'administration permettent de créer et gérer les vues. L'administrateur habilité l'utilise pour lister les vues existantes, les gérer et en ajouter de nouvelles.

  • Vue Dossiers
  • Vue Documents
  • Vue Utilisateurs

Propriétés des vues

Champ Type Description
Identifiant métier texte Le nom utilisé par le système pour identifier la vue. Il ne peut être changé quand la vue est en cours d'utilisation
Libellé texte Le nom affiché aux utilisateurs lorsqu'ils utilisent la vue
Description texte Description de la vue
Position entier La position de la vue dans la liste des vues accessibles aux utilisateurs.

@


En plus de ces informations d'entête, la définition de la vue inclut les éléments suivants :

  • un filtre pour sélectionner les entités à afficher (lignes)
  • les facettes de recherche proposées à l'utilisateur pour restreindre les lignes affichées
  • des attributs spécifiques de la vue
  • les informations à afficher en mode tableau dans des colonnes
  • les informations à afficher en mode étendu dans des blocs
  • les informations de la vue

Filtres

Le filtre est la requête qui définit quelles entités doivent être incluses dans la vue, à la manière d'une clause where dans le langage SQL. La définition de ce filtre répond aux spécifications du langage de requête.

L'exemple ci-dessous montre un filtre qui sélectionne les entrées dont l'indicateur de complétude est actif et dont l'état de cycle de vie est "Copie de travail" :

filter:
  $func: "AND"
  $vars:
    left:
      $func: "equals"
      $vars:
        cast: "bool"
        field: "entry.completeness:complete"
        value: true
    right:
      $func: "equals"
      $vars:
        field: "entry.lifecycle.status"
        value: "workingCopy"

Facettes

Ce paramètre définit les filtres prédéfinis disponibles sur une vue accessibles par un bouton.

Consiste en un tableau d'objets "Facettes".

Chaque facette est définie à l'aide des propriétés suivantes :

Champ Type Description
identifier texte identifiant unique de la facette
displayName texte Libellé affiché dans la vue
filter objet La définition de ce filtre répond aux spécifications dulangage de requête.
sequence entier Ordre de présentation des facettes dans la vue

L'exemple ci-dessous montre la définition de quelques facettes :

  {
    "filter": {
      "$func": "equals",
      "$vars": {
        "field": "entry.attributes:dossier_rh.poste.typecontrat",
        "value": "CDI"
      }
    },
    "sequence": 0,
    "identifier": "identifier_1",
    "displayName": "CDI"
  },
  {
    "filter": {
      "$func": "equals",
      "$vars": {
        "field": "entry.attributes:dossier_rh.poste.typecontrat",
        "value": "CDD"
      }
    },
    "sequence": 1,
    "identifier": "identifier_2",
    "displayName": "CDD"
  }

Exemple affiché dans la vue :

@

Attributs associés

Autres paramètres pouvant être associés à une vue

Champ Type Description
hidden booleen (true ou false) vue affichée  aux utilisateurs

true : la vue apparait dans la listes des vues accessibles aux utilisateurs qui en disposent

false : la vue est masquée aux utilisateurs qui en disposent. Utile lorsque la vue porte sur des entités ne nécessitant pas d'action de transition spécifiques mais qui doivent pouvoir être trouvés lors de recherches par ces utilisateurs.

Champ Type Description
nextEntityAfterAction booleen (true ou false) comportement après une transition

true : après une action de transition, affiche l'élément suivant de la vue d'origine en tenant compte des tris et facettes actives. S'il s'agit du dernier élément, réaffiche la vue d'origine

false : après une action de transition, reste sur l'entité active

Affichage liste

Ce paramètre définit les colonnes affichées dans la vue et les options d'affichage à l'aide des propriétés suivantes :

Champ Type Description
columns Tableau d'objetscolonne Une liste des colonnes à afficher
defaultSort texte Le nom d'une colonne utilisée pour le tri par défaut de la vue
defaultSortDirection mot-clé Le tri par défaut, soit asc pour ascendant, soit descpour descendant

Chaque colonne est définie à l'aide des propriétés suivantes :

Champ Type Description
identifier texte Identifiant de la colonne dans le tableau, doit être unique pour la vue
title texte Libellé de la colonne dans la vue
type mot-clé Type de la colonne, parmi les types gérés tels que string, integer ou boolean
expression texte / array Expression ou liste d'expressions évaluées dans l'ordre pour afficher la première valeur disponible
sortable booléen Indique si la colonne peut être triée par l'utilisateur
view objet indique le format et le style à afficher  (propriétés "format", "style")

L'exemple ci-dessous montre la définition de quelques colonnes et un tri par défaut sur la date de modification :

`{
  "displayName": "Mode liste",
  "defaultSort": "updatedAt",
  "defaultSortDirection": "desc",
  "parameters": [
    {
      "type": "string",
      "view": {
        "format": {
          "id": "date",
          "value": "dd/MM/YYYY HH:mm"
        }
      },
      "title": "Modifié le",
      "sortable": true,
      "expression": "updatedAt",
      "identifier": "updatedAt"
    },
    {
      "type": "string",
      "title": "Nom",
      "sortable": true,
      "expression": "attributes.dossier_rh.collaborateur.nom",
      "identifier": "nom"
    },
    {
      "type": "string",
      "title": "Prénom",
      "sortable": false,
      "expression": "attributes.dossier_rh.collaborateur.prenom",
      "identifier": "prenom"
    }
  ]
}

@

Affichage étendu

Ce paramètre permet l'affichage par blocs d'information sur plusieurs lignes et plusieurs colonnes au style paramétrable.

Chaque entrée du tableau "parameters" représente une ligne contenant elle même un tableau d'attributs en colonnes affichables.

Chaque colonne est définie à l'aide des propriétés suivantes :

Champ Type Description
identifier texte Identifiant de la colonne dans le tableau, doit être unique pour la vue
title texte Libellé de la colonne dans la vue
type mot-clé Type de la colonne, parmi les types gérés tels que string, integer ou boolean
expression texte / array Expression ou liste d'expressions évaluées dans l'ordre pour afficher la première valeur disponible
sortable booléen Indique si la colonne peut être triée par l'utilisateur
showTitle booléen Affiche ou non le libellé du champ avant sa valeur
view objet indique le format et le style à afficher  (propriétés "format", "style")
view.format objet "id", "value"
view.style objet Tableau de mots clés prédéfinis
view.icon texte identifiant de l'icone du jeu Font Awesome libre de droits
view.iconOnly booléen Affiche ou non la valeur du champ

L'exemple ci-dessous montre un exemple de définition d'une vue étendue :

{
  "displayName": "Mode étendu",
  "defaultSort": "createdAt",
  "defaultSortDirection": "desc",
  "parameters": [
    [
      {
        "type": "string",
        "view": {
          "icon": "fa-solid fa-user",
          "style": [
            "fontSizeSmall"
          ]
        },
        "title": "Dénomination",
        "sortable": true,
        "showTitle": false,
        "expression": "displayName",
        "identifier": "displayName"
      },
      {
        "type": "string",
        "view": {
          "style": [
            "fontSizeBig",
            "fontColorPrimary",
            "alignRight"
          ]
        },
        "title": "Matricule",
        "sortable": true,
        "showTitle": false,
        "expression": "attributes.dossier_rh.collaborateur.matricule",
        "identifier": "matricule"
      }
    ]
 ]
}

@

Styles disponibles :

alignLeft

alignRight

fontSizeBig

fontSizeXBig

fontSizeSmall

fontBold

fontColorGrey

fontColorRed

fontColorGreen

fontColorPrimary

reverse

iconRatio

nbLineToShow

Pointer plusieurs sur plusieurs attributs (première valeur trouvée)

Pour conserver un rendu propre lorsque certaines données sont manquantes, expression peut recevoir un tableau. Le système évalue chaque clé dans l'ordre et affiche uniquement la première valeur disponible (non vide) sans concaténation. Ce mécanisme fonctionne pour les colonnes des modes liste, étendu et export.

{
  "title": "Statut et intitulé",
  "expression": [
    "lifecycle.subStatus.displayName",
    "lifecycle.status",
    "displayName"
  ]
}

Le tri repose sur la première valeur réellement affichée.

Penser à conserver une cohérence de type entre toutes les expressions candidates.

Liste exportation

Ce paramétrage permet de spécifier les données exportables des entités affichées dans une vue.

Si une telle liste est paramétrée, un bouton d'exportation permet à l'utilisateur de réaliser cette exportation en fichier csv.

@

En cliquant sur le bouton, les champs exportés sont affichés et l'utilisateur dispose d'une action d'exportation.

@

Exemple de configuration :

{
  "displayName": "Exporter les données",
  "defaultSort": "createdAt",
  "defaultSortDirection": "asc",
  "parameters": [
    {
      "type": "string",
      "title": "Identifiant technique",
      "expression": "id",
      "identifier": "id"
    },
    {
      "type": "string",
      "view": {
        "format": {
          "id": "date",
          "value": "dd/MM/YYYY HH:mm"
        }
      },
      "title": "Date de création",
      "expression": "createdAt",
      "identifier": "createdAt"
    },
    {
      "type": "string",
      "view": {
        "format": {
          "id": "date",
          "value": "dd/MM/YYYY HH:mm"
        }
      },
      "title": "Date de modification",
      "expression": "updatedAt",
      "identifier": "updatedAt"
    },
    {
      "type": "string",
      "title": "Nom d'affichage",
      "expression": "displayName",
      "identifier": "displayName"
    },
    {
      "type": "string",
      "title": "Etat",
      "expression": "lifecycle.subStatus.displayName",
      "identifier": "currentStatus"
    },
    {
      "type": "string",
      "title": "Statut",
      "expression": "lifecycle.status",
      "identifier": "status"
    }
  ]
}

Données speciales (affichage liste / étendu)

Présence d'annotations

Cette donnée peut être déclarée avec la configuration suivante :

{
   "type": "string",
   "title": "Annotation",
   "sortable": false,
   "expression": "",
   "identifier": "hasAnnotations"
}
  • Le tri n'est pas implémenté sur les annotations. Mettre systématiquement la propriété "sortable" à "false"

Informations

Affiche les informations du système

  • description
  • identifiant unique (UID)
  • Identifiant métier unique
  • intitulé

Exemple d'affichage des informations de la vue

@