Pardon pour ce gros retard de réponses, la semaine passée a été chargée au niveau pro et perso!
jmm a écrit:Cet agent stockera ses dates de run, et ira attaquer une vue standard du names contenant les personnes, et ne traiteraa que les documents créés depuis la dernière date de run. Evidemment il lira un pleu plus de données qu'avec une vue triée par date, mais ton traitement se fera sans doute la nuit, c'est donc peanuts en terme de perf.
Comme tu me le conseillais je pensais créer un agent dans une base à part et il irait "attaquer" le names.nsf avec la fonction LS Database.Search avec en paramètre la date de dernière exécution de l'agent.
roubech a écrit:comment tu définit à quel(s) groupe(s) un nouveaucompte doit être ajouté ?
Je le déduis grâce à une règle de gestion que l'on me donne et qui est basée sur l'extension de l'adresse mail du compte Lotus.
roubech a écrit:sinon, pour chaque compte mail créé tu peux voir passer une requete adminp dans la base statsrep.nsf et là tu dois avoir une vue triée par date
roubech a écrit:sinon, pour chaque compte avec un ID, une entrée est créé dans certlog.nsf
statsrep.nsf et certlog.nsf sont des bases que l'on retrouve sur tous les serveurs Domino car je ne les ai pas trouvé?
roubech a écrit:sinon, faire en sorte que la création des compte ne soit pas faite directement depuis le client d'admin mais à partir d'n formulaire perso qui s'inspire de la base registration.nsf qui doit être dans la SandBox de mémoire
Un collègue l'avait proposé mais apparemment, les admins préfèrent créer les comptes depuis le formulaire standard...
roubech a écrit:qu'est-ce que tu entend pas "desactiver un compte". Si tu supprime un compte Notes, il y a une requete Adminp qui va se charger de retirer la personne des groupe (entre autre)
Pour moi "désactiver" est équivalent à ne plus voir le compte Lotus visible dans le names.nsf.
Un admin m'a dit que la suppression d'un compte entraînait automatiquement son retrait dans les groupes mais que ça n'était pas systématique (par exemple quand on modifie le nom de la personne à la main) donc je vais quand même traiter ce cas par l'agent au cas où.
En y réfléchissant la semaine dernière je pense donc:
* créer un agent planifié dans une base à part
* l'agent irait vérifier toutes les nuits le names.nsf du serveur pour détecter des créations de compte depuis son dernier passage (avec un Database.Search et en paramètre la date de dernière exécution de l'agent)
*S'il trouve un nouveau compte depuis son dernier passage, il créé dans sa base un document "Personne" avec son nom, prénom, adresse mail et les groupes où il a été ajouté
En ce qui concerne la suppression dans les groupes je pense utiliser les documents "Personne" que l'agent a créé dans sa base quand il détecte un nouveau compte Lotus.
* L'agent parcourt donc une vue de ces documents "Personne" et avec l'adresse mail stockée dans les documents je vérifie son existence dans le names.nsf avec un GetDocumentByKey(<adresse_mail>) sur la vue ($EmailAddresses).
* Si le GetDocumentByKey ne renvoie aucun document, je supprime la personne des groupes auxquels l'agent l'avait ajouté et je supprime le document "Personne" de la base de l'agent.
* Il ajoute la personne aux groupes grâce à une règle de gestion
Qu'en pensez-vous?