Afficher dynamiquement un champs dans une PSD
Il est possible d’afficher et de masquer dynamiquement des champs dans une PSD.
Par exemple, dans notre cas, on a créé une PSD de saisie de RDV, et on souhaite afficher des champs complémentaires uniquement si le type de RDV est “CONF_POSE”:
![PSD_Test_affichage masquage.gif](../__attachments/115262301/PSD_Test_affichage%20masquage.gif?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Masquer les questions par défaut sur la PSD
Dans notre exemple, nous souhaitons masquer par défaut les trois dernières questions de notre PSD et les afficher uniquement si le type de RDV est “CONF_POSE”.
Allez sur le questionnaire, et masquez par défaut les questions à afficher dynamiquement comme ceci, en décochant “Affichée” et “Saisie”:
![image-20240129-093933.png](../__attachments/115262301/image-20240129-093933.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Créer/ modifier la requête de contrôle local de la PSD
Avez-vous déjà une requête de contrôle local pour la PSD ?
➡️ Si oui, nous allons la modifier pour ajouter cet affichage dynamique, et si non, commencez par créer une requête de type PSD qui commence par le nom de votre questionnaire suivi de la lettre -L.
C’est par ici:
![image-20240209-160327.png](../__attachments/115262301/image-20240209-160327.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Il faut donc entrer en modification sur la requête de contrôle local qui est ici ( ou en créer une si besoin).
Et ensuite:
En résumé…
Quand on a de nombreux champs à afficher/masquer, ça peut être laborieux de tous les gérer indépendamment et de faire un “POUR CHAQUE ” pour chaque champs ! Mais on peut aussi les gérer ensemble… avec une clé de tri !
Pour cela, on retourne dans le questionnaire:
Et sur l’onglet Caractéristiques des questions, on voit qu’il y a des clés et des caractéristiques. On va donc pouvoir mettre la même valeur “Pose” dans l’un de ces champs pour nos 2 questions à afficher/masquer:
Puis, dans la requête, au lieu de créer un PC-QUESTION pour chacune des références de nos deux questions, on va en créer un qui parcours le questionnaire en fonction de la clé de tri “POSE”:
Ainsi on peut gérer l’affichage/masquage de nos deux questions en même temps !
Brancher la requête sur le questionnaire ( si ce n’est pas déjà fait 😉 )
Si la requête de contrôle local est déjà branchée sur votre questionnaire, passez cette étape…
Une fois la requête terminée, il faut aller la brancher dans le questionnaire sur la question pour laquelle on souhaite déclencher l’affichage/masquage des questions.
Pour cela, entrez en modification sur le questionnaire de la PSD:
![image-20240124-142347.png](../__attachments/115262301/image-20240124-142347.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Placez-vous ensuite sur la question sur laquelle vous souhaitez lancer l’affichage/masquage, et branchez y la requête de contrôle:
![image-20240129-084040.png](../__attachments/115262301/image-20240129-084040.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Attention, si vous avez une liste de valeur également sur la question sur laquelle vous branchez votre requête, faites attention à bien choisir la valeur des champs “Contrôle si saisie” Contrôle si non saisie”… au risque que votre requête ne s’exécute pas !
Ici par exemple on a une liste de valeur sur notre champs pour choisir le type de RDV… sans faire attention, on pourrait choisir “…ET pas d’exécution de la requête” et notre requête ne tournera jamais 😉
Il ne reste plus qu'à tester…
Pour tester vous pouvez vous placer sur votre PSD et cliquer sur “Test Procédure”:
![image-20240129-094625.png](../__attachments/115262301/image-20240129-094625.png?inst-v=2e0628d9-a170-4eb1-b774-b0d7a84fa1a1)
Alors ça fonctionne ? 😉 Bon courage !