Je suis confronté à un problème plutôt particulier ici. Nous avons un workflow d'approbation OOTB, qui enregistre tout l'historique du workflow dans une liste d'historique de workflow. Cette liste est purgée tous les 60 jours. Pour augmenter cette période pour laquelle l'histoire de workflow est conservée, je googlé et trouvé que j'ai couru ce code:Tester l'historique des flux de travail Autocleanup
utilisant (SPSite wfSite = new SPSite (siteUrl)) {
using (SPWeb wfWeb = wfSite.OpenWeb(webName))
{
SPList wfList = wfWeb.Lists[listName];
SPWorkflowAssociation _wfAssociation = null;
foreach (SPWorkflowAssociation a in wfList.WorkflowAssociations)
{
if("approval 1" == wfAssociationName.ToLowerInvariant())
{
a.AutoCleanupDays = newCleanupDays;
_wfAssociation = a;
assoCounter++;
}
else
{
_wfAssociation = a;
}
}
wfList.UpdateWorkflowAssociation(_wfAssociation);
}
}
Le code fonctionne correctement, en ce sens qu'il ne génère aucune exception. Jusqu'ici tout va bien. Mais mon problème maintenant est que j'ai besoin de tester si mon code fonctionne. Donc, j'ai mis la variable newCleanupDays à 0. Mais je vois que les nouvelles activités de flux de travail sont toujours enregistrées dans la liste de l'historique des flux de travail. Je peux définir la variable à 1, mais cela signifierait attendre une journée entière pour voir si le code fonctionne ..
Y at-il un moyen de tester mon scénario, de sorte que je peux définir les jours autocleanup à 1 , et je ne dois pas attendre une journée entière pour voir si mon code fonctionne? Y a-t-il un moyen de "tromper" le système en pensant qu'un jour s'est écoulé? J'ai essayé de changer l'heure du système et de redémarrer le serveur et tout, mais cela n'a pas fonctionné pour moi.
Merci pour la réponse, comment puis-je relancer le travail du minuteur? Will "STSADM -o execadmsvcjobs" fait le travail? – ashwnacharya
Accédez au site d'administration et définissez le planning pour que le travail de workflow soit toutes les 5 min. – Nat