Condition de visibilité en fonction de l'onglet actif

Bonjour,

En ayant créé un formulaire de ce type :

image

j’aimerais créer une condition de visibilité de certains attributs de la Zone 1 en fonction de l’onglet actif en dessous : Zone 2 ou 3 dans l’exemple.

Existe t’il une méthode native pour récupérer cette information côté back ?

Merci d’avance,

Benoît

Technical information

Instance /health

[Platform]
Status=OK
Version=5.2.25
BuiltOn=2022-12-08 16:28
Git=5.2/b6ade203bbb1542df426ee173be5abaa0746c664
Encoding=UTF-8
EndpointIP=172.20.176.19
EndpointURL=http://mla-api-6b98546f67-m8gb5:8080
TimeZone=Europe/Paris
SystemDate=2022-12-21 14:49:25

[Application]
ApplicationVersion=0.10
ContextPath=
ContextURL=https://api-mlasdb.gke.dev.gcp.renault.com
ActiveSessions=1
TotalUsers=5
EnabledUsers=2
LastLoginDate=2022-12-21 14:45:00

[Server]
ServerInfo=Apache Tomcat/9.0.70
ServerType=WEB
ServerActiveSessions=2
ServerSessionTimeout=30

[OS]
Name=Linux
Architecture=amd64
Version=5.10.147+
DockerImageName=centos7
SystemEncoding=UTF-8

[JavaVM]
Version=17.0.5
Vendor=Eclipse Adoptium
VMName=OpenJDK 64-Bit Server VM
VMVersion=17.0.5+8
ScriptEngine=rhino
ScriptEngineVersion=Rhino 1.7.13 2020 09 02
HeapFree=1557720
HeapSize=2138112
HeapMaxSize=7131136
TotalFreeSize=6550744

[Cache]
ObjectCache=433
ObjectCacheMax=10000
ObjectCacheRatio=4
ProcessCache=12
ProcessCacheMax=10000
ProcessCacheRatio=0
APIGrantCache=0
APIGrantCacheMax=1000
APIGrantRatio=0

[Database]
Vendor=3
ProductName=PostgreSQL
ProductVersion=11.16
DriverName=PostgreSQL JDBC Driver
DriverVersion=42.5.1
DBDate=2022-12-21 14:49:25
DBDateOffset=0
DBPatchLevel=5;P02;02060c9fd8a4f4cb39e2a5f8e2d14215
UsingBLOBs=true

[Healthcheck]
Date=2022-12-21 14:49:25
ElapsedTime=10

Non en back une zone getFieldArea("areaname") n’a pas de notion de handler click/activate.

J’ai du mal à comprendre le besoin ou l’usage.
En général ce sont les champs de la zone 1 (header) qui affiche ou masque une zone fille (2 ou 3) avec une simple contrainte Front.

Comme un radio bouton ou enum dont le onchange influence les sous-sections à renseigner. Qui semble être plus compréhensible en terme d’UX

Si votre besoin est “à l’envers” :

  • il faudra ajouter un handler sur le click de l’onglet pour faire un appel Ajax pour setter un parametre en back : du genre un app.setSysParam qui ira en back dans le getGrant().getParameter.
  • Mais du coup ça n’ira pas masquer des champs en front directement. donc le code front devra aussi
    • soit recharger le formulaire au callback du setSysParam via un $ui.displayForm (ou après un save si des champs ont été modifiés ?)
    • soit afficher/masquer les champs en front sans appeler le back
  • Ensuite en back, l’initUpdate pourra regarder ce que vaut votre paramètre pour faire pareil. Sans oublier l’initCreate pour remettre les visibilités par défaut.

Ca me semble lourdingue, pour une histoire de show/hide lié à un “type” de dossier et souvent couvert par une simple contrainte / sans code.

Moi aussi, au vu de la réponse :slight_smile:. Je vais me débrouiller pour transformer le besoin en une version plus “simple”.

Merci pour ta réponse @Francois.

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