Avatar billede avest Nybegynder
15. august 2002 - 10:10 Der er 10 kommentarer

Starte agent fra klient på serveren

Jeg har en agent som kører om natten, det tager en halv times tid.

Hvis jeg starter agenten fra klientet kører den jo på klienten og låser notes i den tid.

Hvordan starter jeg agenten så den kører på serveren.

Jeg vil gerne have en lille knap et sted som brugeren kan trykke på.
Avatar billede avest Nybegynder
15. august 2002 - 10:32 #1
Prøvede med status = agent.RunOnServer men den låser stadig.
Avatar billede avest Nybegynder
16. august 2002 - 10:28 #2
Nå, jar jeg har selvfølgelig også forsøgt med

call agent.RunOnServer
Avatar billede cdelicht Nybegynder
17. august 2002 - 21:32 #3
Husk:
1) Hvis din database ligger lokalt virker RunOnServer lige som Run.
2) Dine brugere skal have rettigheder til at afvikle agenter på serveren.
3) Agenten skal være signet af serveren (dvs. serveren har rettighedere til agenten)

Du kan ikke bruge "call agent.RunonServer". Du skal sætte en variabel = med din agent, f.eks.
Dim s As New NotesSession
Dim db As NotesDatabase
Dim agent As NotesAgent
Set db = s.CurrentDatabase
Set agent = db.GetAgent("DinAgent")

Du aktivere derefter agenten med f.eks.
If agent.RunOnServer = 0 Then
DoSomething
End If
Avatar billede avest Nybegynder
19. august 2002 - 08:51 #4
Det har jeg jo forsøgt. Men så venter scrptet jo på en returværdi fra agenten så notes låser indtil agenten er kørt færdig.
Avatar billede cdelicht Nybegynder
19. august 2002 - 09:03 #5
Så tjek lige om ikke ved en fejl kører agenten på en lokal replika af basen. Se mine "Husk" ovenfor...
Avatar billede avest Nybegynder
19. august 2002 - 11:16 #6
Hvis jeg benytter returværdien (status) fra agenten som f.eks.

If agent.RunOnServer <> 0 Then msgbox "Kørslen mislykkedes"

er det jo klart at notes låser indtil agenten er færdig da den jo skal bruge den returnerede værdi for at komme videre i scriptet.

Derfor benytter jeg istedet

call agent.RunOnServer()

hvor jeg så ikke er afhængig af returværdien. Det var jo så mit håb at agenten blev startet og scriptet kunne køre videre med det samme. Men scriptet venter stadig på at agenten kører færdig.
Avatar billede cdelicht Nybegynder
19. august 2002 - 11:24 #7
Njae..det er ikke helt sådan det hænger sammen. Når du anvender RunOnServer starter du en agent, som kører i sin egen "shell". Den kaldende agent venter IKKE på svar med mindre du beder den stå og vente/polle på et svar tilbage. Det kan du bl.a gøre ved at anvende ParameterDocId optionen.
Har du testet mine "huskere"... ?
Avatar billede avest Nybegynder
19. august 2002 - 11:26 #8
Jeg har lidt på fornemmelsen det slet ikke kan lade sig gøre.
Men da agenten tager omkring en halv time at køre ville det være rart så brugeren kan arbejde i notes mens han venter.
Avatar billede cdelicht Nybegynder
19. august 2002 - 11:29 #9
Undskyld, men du svarer ikke på mit spørgsmål - har du testet mine "huskere"?
Avatar billede avest Nybegynder
19. august 2002 - 11:43 #10
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester