Page 1 sur 1
RunOnServer non bloquant

Publié:
06 Déc 2010 à 17:42
par Michael DELIQUE
hello
je me demande si'l est possible de faire un runonserver en lotus script sans que celui-ci attend la fin de l'agent lancer et qui passe tout de suite à la suite ?

Publié:
06 Déc 2010 à 17:50
par StasS
-- Code that starts the background agent --
Dim session as new NotesSession
Dim thisDb as NotesDatabase
Dim agent as NotesAgent
Dim doc as NotesDocument
set thisDb = session.currentDatabase
set doc = session.documentContext
set agent = thisDb.getAgent("Agent I want to run and not wait for")
on error resume next
agent.runOnServer(doc.noteId)
-- And now here's the beginning of the background agent --
Dim s As New notessession
Dim db As notesdatabase
Set db = s.currentdatabase
Call s.SendConsoleCommand(db.Server, |Drop "| & s.UserName & |"|)
Source :
http://www.thenorth.com/apblog4.nsf/Thr ... 520019C43B

Publié:
06 Déc 2010 à 17:54
par Michael DELIQUE
mouais... pas bête, mais bon killer l'agent qui lance dans l'agent lancé...

Publié:
06 Déc 2010 à 17:54
par Michael DELIQUE
sinon un
AgentTellAmgrRun = Session.SendConsoleCommand(DBAgent.Server, {Tell amgr run "}+DBAgent.FilePath+{" '}+NomAgent+{'})

Publié:
06 Déc 2010 à 18:01
par StasS
yep, mais tu peux pas lui passer de paramètre comme ça

Publié:
06 Déc 2010 à 18:09
par Michael DELIQUE
c'est vrai !
ya peut être une autre solution !?

Publié:
06 Déc 2010 à 18:10
par d.bugger
Bah, bah, triple bah ! Pourquoi les tricheries, si Notes a bien les moyens de le faire proprement ? Mais comme d'hab, personne n'y pense...
Pour des actions "asynchrones":
crée un agent "after new mail arrived" qui accepte certains mails,
envoie ta base un mail avec une commande dedans,
et crée un document Mail-in dans le names.nsf du serveur.
Tu peux bien développer tout une protocole comme ça, le mail en tant que message queue. Seule difficulté : il faut protéger ce méchanisme, et donc refuser des messages spam qui arrivent...

Publié:
06 Déc 2010 à 18:12
par Michael DELIQUE
hummm..... pourquoi pas
on envois en sujet le nom de l'agent et l'agent "after new mail" le lance...
je suis pas fan non plus et puis va expliquer a ton admin que tu as besoin de mail-in avec un template particulier pour lancer des agents....
j'avais bien pensé a utiliser des api pour lancer sans bloquer... mais bof les api

Publié:
06 Déc 2010 à 18:22
par d.bugger
Je n'aime cette api-culture pas non plus...

Publié:
06 Déc 2010 à 18:34
par StasS
après tu peux reprendre la solution du sendcommandconsole en laissant un doc profil qui contient ce que tu veux faire passer comme paramètre. ton agent s'exécutant sur le serveur viendra récupérer à chaque fois ce que contient ce doc