Paramétrage des relances et activation du service
Pour mettre en place ce mécanisme, il faut au préalable avoir mis en place le service de scheduling de l'application, sur le serveur.
1. Installation du service
1.1 Vérifier si les services sont démarrés
- Ouvrir la fenêtre des services Windows du serveur
- Sélectionner ‘Avanteam.Scheduler nomdevotreapplication’
- Vérifier que le service est démarré
- Si non, cliquer ‘Démarrer le service’.

1.2 Si le service n'est pas présent dans la liste : Installation du service
Se positionner dans le dossier serveur contenant le fichier Avanteam.WindowService.Scheduler.exe Exemple : ‘**d:\Avanteam\PStudio.Services**Gestion documentaire’
Pour lancer le service taper sa commande suivi de /i (Installation)
Ex: Avanteam.WindowService.Scheduler.exe /i

Si ces informations ne sont pas suffisantes, il est probable que les fichiers et paramètres d'installation relatifs aux services n'ont pas été configurés lors de l'installation initiale. Référez vous dans ce cas au guide d'installation de Process Studio afin de vérifier tous les paramètres d'installation.
En standard, il existe 2 agents de relance :
- Relance standard du workflow : Avanteam.Application.Agents.Workflow.TimerAgent
- Relance "libre" ( sur une date spécifiée du document ) : Avanteam.Application.Agents.Reminders.ReminderAgent
2. Paramétrage de l'agent de relance standard du workflow (sur les paramètres inscrits dans les workflows)
- Ouvrir Proces Studio et sélectionner le menu ‘Paramètres > Agents’
- Cliquer ‘Ajouter’
- Saisir un nom explicite (ex: "Agent de relance")
- Sélectionner Avanteam.Application.Agents.Workflow.TimerAgent
- Renseigner la planification (choisir une fréquence)
- Valider
Dans certaines étapes de vos workflow, vous pouvez alors activer les relances (se référer à la documentation administrateur)
- Cliquer sur l’icône de validation verte pour activer l’agent.
L’agent est alors prêt. Il sera exécuté à l'heure planifiée
3. Relance "libre" (sur des dates de validité par exemple)
- Ouvrir Proces Studio et sélectionner le menu ‘Paramètres > Agents’
- Cliquer ‘Ajouter’
- Saisir un nom significatif.
- Sélectionner le type d’agent : Avanteam.Application.Agents.Reminders.ReminderAgent
- Renseigner la planification : choisir une fréquence
- Renseigner le formulaire sur lequel on va effectuer les relances Note : L'agent fait référence a un Formulaire uniquement pour présenter une liste de champs mais peut s'appliquer à des documents qui sont d'un autre type, bien entendu il faut que le champ existe dans tous les formulaires.
- Renseigner le champ qui contient le nom du destinataire
- L'onglet "Corps de requête SQL" permet de sélectionner les documents sur lesquels on veut effectuer la relance.
Exemple :
select id_document from FRM_MonTypeDeDoc where MONCHAMPDATERELANCE <= GetDate()
Ou
SELECT
f.id_document
FROM
Documents D,
FRM_Document F
WHERE
F.id_document = D.id
AND isnull(F.DateValidity,'') <> ''
AND D.Validity = 'V'
AND DateAdd( month, -1 , F.DateValidity ) <= GetDate()
Si on ne souhaite plus que le document soit relancé, il faudra ajouter à la requête : AND id_document not in (select id_document from AgentLogDatas)
- Dans la partie Email, on définit l'email qui sera envoyé et il est possible d'utiliser des "macros" du type
$link$pour envoyer un lien ou$reference$pour afficher la référence et plus généralement$champ$. - Cliquer sur l’icône de validation verte pour activer l’agent
L’agent est alors prêt. Il sera exécuté à l'heure planifiée
Si l'agent ne convient pas par rapport au besoin métiers il faut alors redévelopper totalement un agent. La DLL générée devra être posée avec les autres DLLs sur le client de paramétrage et également à l'installation du service Scheduler sur le serveur.
En cas de problème
Check-list :
- Vérifier les paramètres dans le fichier de paramétrage Avanteam.WindowService.Scheduler.exe.config
Contenu de
<mailSettings>: Les paramètres SMTP sont ils valides ? Contenu de<connectionStrings>: Les informations concernant les bases à traiter sont elles valides et identiques au informations contenues dans le fichier web.config du site Web - Vérifié que le service est bien lancé
- Vérifier les paramètres du workflow "Activer la gestion des relances" est bien coché sur l'étape ? Le destinataire de la relance possède t-il un email valide dans sa fiche personne
- Vérifier que l'agent est bien démarré
- Vérifier qu'il existe des documents en attente de relance
Requête SQL pour voir si des documents sont en attente de relance :
SELECT * FROM ProcessTimers WHERE enabled = 1Requête plus précise :
SELECT PT.*
FROM ProcessTimers PT, DocumentProcess DP, Documents D
WHERE
DP.id_instance = PT.id_process_instance
--and PT.enabled='1'
and DP.id_document=D.id
and D.reference='IS-1410'
order by PT.start_date
Requête SQL pour purger des fichiers en attente afin qu’ils ne soient plus traités :
update ProcessTimers set enabled = 0 where [enabled]=1 and end_date <'01/08/2018'
la date 01/08/2018 est un exemple. Avec cette requête, toutes les relances avant le 1er août sont désactivées.
Requête de nettoyage complémentaire :
delete FROM ProcessTimers WHERE enabled = 1 and id_process_instance not in ( select DP.id_instance from DocumentProcess as DP )