exécution d'un agent ds une vue

Forum destiné aux questions sur le développement : Formules, LotusScript, Java ...

exécution d'un agent ds une vue

Messagepar asx9 » 23 Juil 2003 à 10:35

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!
asx9
 

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

Messagepar Raisin » 23 Juil 2003 à 11:20

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 ;)
Raisin
 

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

Messagepar asx9 » 23 Juil 2003 à 11:47

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?
asx9
 

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

Messagepar Raisin » 23 Juil 2003 à 12:15

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é ?
Raisin
 

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

Messagepar asx9 » 23 Juil 2003 à 13:01

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.
asx9
 

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

Messagepar Raisin » 23 Juil 2003 à 13:21

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 ;)
Raisin
 

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

Messagepar asx9 » 23 Juil 2003 à 13:31

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.
asx9
 

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

Messagepar Raisin » 23 Juil 2003 à 13:59

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 ?
Raisin
 

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

Messagepar asx9 » 23 Juil 2003 à 14:42

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.
asx9
 

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

Messagepar Droad » 23 Juil 2003 à 14:59

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%]
Droad
 

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

Messagepar asx9 » 23 Juil 2003 à 15:02

merci je vais tester ça tout de suite.
asx9
 


Retour vers Développement