Page 1 sur 1

exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 10:35
par asx9
j'ai un agent dont voici la formule:FIELD Datedemande:=Datedemande;@If(@IsNewDoc; @SetField("Datedemande";@Now); "");l'agent est exécuté "Si des documents ont été créés ou modifiés"mais ça ne marche pas, mon champ "Datedemande" reste vide!

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 11:20
par Raisin
Bah cela me semble normal, à partir du moment ou tes documents sont déjà créés, @isnewdoc te retourne toujours false ;)Que veux tu faire ?Ne serait t'il pas plus simple d'avoir un champ calculé à la création dans ton doc avec comme valeur @now ;)

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 11:47
par asx9
je l'ai déjà ce champ @Now, mais j'ai un décallage qui peut être énorme entre la création d'un doc (site à l'étranger) et sa parution dans la vue (site en france).c'est pour ça que je veut mettre à jour ce champ lorsqu'il arrive dans la vue sur le serveur utilisé en france (ce qui est une option dans la planification des agents).Comment puis-je faire? t'as une idée?

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 12:15
par Raisin
Bah si tu mets ton champ en date/heure, tu a des options ds ce champs pour les fuseaux horaires, il me semble. Certe je n'ai jamais utilisé les fuseau ;) As tu essayé ?

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 13:01
par asx9
non, mais ce n'est pas un problème de fuseau horaire.je veux juste exécuter un agent qui me change le contenu du "Datedemande" au moment où le doc arrive dans ma vue.

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 13:21
par Raisin
Je ne comprends pas trop ce que tu veux faire, mis à part changer la valeur de ton champ DateDemande ;)Que veux tu dire par décalage entre la création du doc et la parution ?Peux tu expliciter le cheminement de ce doc est qu'elles sont les doc que tu veux sélectionner ?Je suis ptete dur à la détente mais ce n'est pas très clair, à mon gout ;)

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 13:31
par asx9
c un peu difficile à comprendre ça c sûr car moi aussi j'ai eu du mal.ma base permet à mes utilisateurs de créer des doc (jusque là c normale). mes utilisateurs se trouve un peu partout ds le monde et il n'accède pas à ma base par le même serveur. le résultat est qu'il peut y avoir plusieurs jours de décalage (1 ou 2) entre le moment où un utilisateur enregistre sa demande et le moment où d'autre utilisateurs (qui traitent ces demandes) reçoivent le doc ds la vue où elle est stockée.le but est de calculé un temps moyen de traitement, d'où la nécessité d'actualiser mon champ "Datedemande" au moment où le doc apparaît ds la vue des personnes traitant les demandes.je croix que c un peu plus clair. ça à l'air un peu bizard comme démarche mais c pas moi qui décide.

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 13:59
par Raisin
C'est des bases répliquées ? pourquoi ne pas modifier les paramètres de réplication afin de répliquer les bases le soir ?A mon avis:1- Ds ton masque: un champ DateDemande calculé à la création = @now; Un autre champ DateRecu calculé à la création = DateDemande2- Une vue avec comme formule "SELECT DateDemande = DateRecu"3- Un agent programmé (peut être avec: Si des documents ont été créés ou modifiés, puis en spécifiant cette vue, ou d'une autre façon) qui modifierais la valeur de DateRecu à @nowNon ?

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 14:42
par asx9
oui c des bases répliqués.je n'ai pas compris le "DateRecu", comment tu calcules ce champ?sinon j'ai fait un petit test. voici la formule de mon agent FIELD Datedemande:=Datedemande;@If(chp=""; @SetField("Datedemande";@Now); "");SELECT @Alllorsque j'exécute l'agent sur les docs sélectionnés ça marche, mais dès que je l'exécute en "planification" (toutes les 30min) ça ne marche pas.

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 14:59
par Droad
Variante:- Dans le masque, mettre NULL en valeur par défaut de DateReçu- Dans l'agent, choisir "Exécuter une fois", et en LotusScript:dim session as new notessessiondim db as notesdatabasedim coll as notesdocumentcollectiondim doc as notesdocumentset db = session.Currentdatabaseset coll = db.Search(|Form="masque" & DateReçu=NULL|)set doc = coll.GetFirstDocument()while not doc is nothingdoc.DateReçu = nowcall doc.Save(true, false)set doc = coll.GetNextDocument(doc)wend[%sig%]

Re: exécution d'un agent ds une vue

MessagePublié: 23 Juil 2003 à 15:02
par asx9
merci je vais tester ça tout de suite.