Requête RCT de contrôle local & d'intégrité GANTT
Introduction
Comme dans un tableur, la requête de contrôle local dans un GANTT permet de:
mettre en place une aide au F2 dans une cellule
contrôler le contenu d’une cellule en sortie de la cellule
Cette requête fonctionne exactement comme celle d’un tableur ! 🙂
Quelles sont les SCR permettant de donner le contexte d’exécution de la requête ?
Comme dans un tableur, on peut utiliser le contexte d’exécution:
Les classiques
|
Et on a également la SCR.GTT_TacRef, qui contient la référence de la tâche qui a été modifiée ! On peut ainsi se repositionner sur la tache afin de lire ou mettre à jour d’autres informations:
Que faut-il mettre dans cette requête ?
Comme une requête de contrôle local de tableur, on peut déterminer ce qui doit se passer en fonction de l’action réalisée par l’utilisateur.
Rappel: l’alimentation des taches dans la requête d’initialisation du Gantt est réalisée via la liste WFGTTTac. Par contre, quand on effectue une modification sur une tâche, ou qu’on crée une nouvelle tâche , les informations sont mises a jour dans la liste WFGTTTacMaj ! La Liste WFGTTTac contient les informations avant modifications, la liste WFGTTTacMaj contient la liste des informations modifiées ou en cours de modification, lorsque l’on passe dans la RCT en mode contrôle, lors de la modification d’un champ d’une tache. Quand on valide le Gantt, les informations de la liste WFGTTTacMaj sont recopiées dans la liste WFGTTTac qui est complétée avec l’action principale ayant été réalisée : CRE, MOD , SUP , vide si rien n’a été modifié. L’enregistrement du Gantt pourra etre réalisé en exploitant la liste WFGTTTac. Si on annule en sortie du GANTT, DIAPASON récupérera le contenu de la liste WFGTTTac, soit la valeur avant modification.
Comme pour une requête de contrôle classique de tableur, on va donc gérer ce qu’il se passe:
quand l’utilisateur lance une action
Gérer les actionsComme pour une requête de tableur, la SCR.TypeAccess=ACT. On peut gérer ici les actions du GANTT. |
quand l’utilisateur lance l’aide ou modifie le contenu d’une cellule
C’est tout comme dans un tableur classique 🙂 | Ajouter de l’aide au F2 |
C’est tout comme dans un tableur classique 🙂 | Contrôler les modifications effectuées dans les champs par l’utilisateur |
Enregistrer les modifications effectuées dans les champs par l’utilisateurLes modifications effectuées sont enregistrées dans la liste des tâches modifiées WFGTTTacMaj qui peut être lue et modifiée alors que la liste des tâches WFGTTTac ne peut être que lue: elle garde la valeur de la tâche avant modification. Si on valide le Gantt ( on passera alors dans la requête de validation du Gantt), on pourra alors écraser WFGTTTac avec WFGTTTacMaj. Et si on sort du Gantt en annulant, on gardera uniquement les données de WFGTTTacMaj sans modification. |
quand on réaffiche le tableur après un changement de vue
On gère le réaffichage du GANTT quand on change de vueIl faut indiquer dans cette requête que lorsque l’on change de vue, il faut réafficher le GANTT par la suite. Pour cela, on doit utiliser les mots clés *ENR, et *REA ( enregistrer et réafficher). |