Surcharge
Exemple de surcharge
Lancement d'un processus lors de la modification d'un point d'affaire qui permet de tester le statut du point modifié.
Création d'une condition sur le statut du point
Le statut terminé du point correspond à la valeur 4.
Créer un processus permettant de tester le statut du point modifié.
Code du processus : affaire001
Libellé : test statut point
Champ du processus:
collaborateur : (Code 20) Utilisateur qui à modifier le point d'affaire
affaire : (Code 8) code de l'affaire associée au point
idpoint : (Entier long) Id du point modifié
Tâches du processus
t010 Test statut point (type : pas d'action)
t020 Point terminé (type : pas d'action)
t030 Point non terminé (type : pas d'action)
Suite de la tache t010
S010
Type : condition de suite réalisé (Condition = point_termine)
Tâche suivante : t020
S020
Type : condition de suite non réalisé (Condition = point_termine)
Tâche suivante : t030
Définir une action 'POINT_AFFAIRE'
Associé le processus affaire001 à cette action
Les paramètres à passer sont les suivants
Surcharge du module gatt018
Il faut créer le module gaut018.dhsp en surcharge du module gatt018 associé au programme de gestion des points d'affaire.
Et surcharger la fonction Point_Update_Av
Surcharge du module sptm000
Il faut créer le module spum000.dhsp en surcharge du module sptm000
Le recordSQL POINT doit être public et avoir l'option KEEPDATANAMES
La procédure Remplacer_Champ_Specifique permet de retrouver la valeur d'un champ pour les records et les RecordSQL déclarés avec l'option KEEPDATANAMES dans le module de surcharge.
Elle sera utilisée
lors de la création du processus pour récupérer le code affaire et l'idpoint du point modifié
Lors de l'évaluation de la condition point terminé
Elle pourrait être utilisée lors de l'envoi de mail ou de la création d'évènement CRM pour évaluer des formule de type
La fonction Recherche_idpoint permet de rechercher la valeur du champ 'idpoint' du processus en cours de traitement.
La procédure SP_Lire_Tables_liees_entete_Ap permet de rechercher le RecordSQL POINT lié à l'idpoint.
C'est cette fonction qui permet que le teste point terminé soit bien réalisé sur le point associé au processus (à l'aide du champ idpoint)
Lancement du processus
Lancer le programme de gestion des points (menu Affaire / Affaires / points)
Modifier un "point" sans mettre son statut "à terminer"
Voilà l'état des tâches du processus terminé
On voit bien que la tâche exécutée est la tâche t030 Point non terminé
Modifier un "point" mettre son statut "à terminer"
Voilà l'état des tâches du processus terminé
On voit bien que la tâche exécutée est la tâche t020 Point terminé