Liste vide si aucun code de liste lié sélectionnée

Description

Bonjour,

J’ai un cas d’usage où un attribut Scope (enum simple : Importateur / Filiale) est associé à un autre attribut Pays de déploiement (enum multiple).

En fonction de la valeur de Scope, une liste liée différente est utilisée :

  • Importateur → LBC_LIST_COUNTRY_IMPORTER
  • Filiale → LBC_LIST_COUNTRY_SUBSIDIARY

Le problème est que si aucun périmètre n’est sélectionné, l’attribut Pays de déploiement est vide et affiche *« Aucun résultat trouvé »

alors que la liste par defaut de cette attribut est la liste des pays global.

J’ai voulu essayer d’ajouter une liste liée pour la valeur vide (empty ou null), mais la configuration oblige à renseigner un code de valeur pour la liste liée, ce qui empêche de gérer le cas par défaut.

Question

  • Existe-t-il une solution native dans Simplicité pour définir une liste par défaut quand l’attribut maître (scope/périmètre) est vide ?
  • Si non, est-ce prévu ou faut-il forcément passer par un hook (preSearch, setList, etc.) pour injecter une liste globale par défaut ?

Technical information

Instance /health
---[Platform]
Status=OK
Version=6.2.15
BuiltOn=2025-08-15 11:39
Git=6.2/309efbdf46b217e3145711d1c47c3e5ad5459aa5
Encoding=UTF-8
EndpointIP=100.88.238.174
EndpointURL=http://lbc-77449-app-7ccc77779f-77wcx:8080
TimeZone=Europe/Paris
SystemDate=2025-09-02 15:46:17---
Simplicité logs
---paste the content of the **relevant** server-side logs---
Browser logs
---paste content of the **relevant** browser-side logs---
Other relevant information

----E.g. type of deployment, browser vendor and version, etc.----

Bonjour,

Il faut rendre le champ “scope” obligatoire afin de forcer l’utilisateur à choisir une valeur.
Ensuite la liste liée sera correctement valorisée car contrainte par le scope.

Si le scope est “facultatif” d’un point de vue métier, il faut le gérer par une valeur à part liée à la liste complète des pays que vous aviez définie : exemple Importateur / Filiale / Tout pays et laisser le scope obligatoire.

Ensuite en terme d’ergonomie, pour guider l’utilisateur dans la saisie:

  • vous prouvez ajouter une contrainte front qui masque le champ “pays” tant que le “scope” est vide
  • ou alors mettre une valeur par défaut au scope comme “Tout pays”

Il n’y a que pour une recherche que la liste liée propose toutes les valeurs possibles (par merge de tous les codes possibles) si l’enum parent est vide. Par contre en base/sur le formulaire avoir un code lié/contraint à un parent vide n’aurait pas sens.

Il faudrait pouvoir modéliser le cas métier : champ parent facultatif et vide => afficher une liste liée par défaut.

1 Like

Merci pour ton retour François,

L’attribut Scope est bien obligatoire donc pas de problème côté utilisateurs.

Le cas bloquant est lorsque le projet n’a pas de scope défini (car non utile au projet → champ masqué et non montré dans le processus métier).


Dans ce cas, l’attribut pays de déploiement reste vide : nous devons forcer la liste au niveau du code.

Nous avions envisagé un 3ᵉ code (ex : importer_and_subsidiary) mais cela amène trop de contrôles supplémentaires (par ex. un pays présent dans un record importateur ne devrait pas pouvoir être aussi dans un record avec ce nouveau code). Pour le moment ce scénario est en stand-by.

Comme tu l’as indiqué en fin de réponse, dans les cas où aucun scope n’est associé ou dans le cas où l’objet est hérité, nous sommes obligés de setter la liste directement dans le code.

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.