Domino 9 und frühere Versionen > ND7: Entwicklung
"Type mismatch" bei Agenten
Axel:
Mal eine ganz triviale Frage. Die ID mit dem der Agent signiert ist hat ausreichende Rechte auf die Datenbank?
Axel
Jens_1:
--- Zitat von: Axel am 07.07.09 - 18:37:55 ---Mal eine ganz triviale Frage. Die ID mit dem der Agent signiert ist hat ausreichende Rechte auf die Datenbank?
Axel
--- Ende Zitat ---
Auf jeden Fall! das habe ich bereits gecheckt.
Aber ich denke bei fehlender Berechtigung wäre die Fehlermeldung auch eine andere.
Gruß
Jens
TRO:
Was liefert denn
TypeName ( sdbs.Agents )
bzw.
DataType ( sdbs.Agents )
zurück?
Jens_1:
--- Zitat von: TRO am 07.07.09 - 21:04:10 ---Was liefert denn
TypeName ( sdbs.Agents )
bzw.
DataType ( sdbs.Agents )
zurück?
--- Ende Zitat ---
Hab's gerade mal ausprobiert:
Print Typename (sdbs) = NOTESDATABASE
Print Datatype (sdbs) = 35
Das ist eigentlich auch genau das was ich erwartet habe.
Gruß
Jens
Jens_1:
--- Zitat von: ascabg am 07.07.09 - 15:38:42 ---[...]
Der folgende Code funktioniert bei mir ohne Probleme. Und agt ist nicht definiert und kennt alles aus der Klasse "NotesAgent".
--- Code: --- Dim ses As New NotesSession
Dim db As NotesDatabase
Set db = ses.CurrentDatabase
Forall agt In db.Agents
'Msgbox agt.Name
Print agt.Name
End Forall
--- Ende Code ---
[...]
--- Ende Zitat ---
Hmm - ich habe den Code gerade mal simpel in einen neuen Agenten der Datenbank gepackt und scheduled.
Null Problem!
Also kann's schon mal nichts mit dem Server oder Berechtigungen oder ähnliches sein.
Was mir aufgefallen ist:
Während hier die aktuelle Datenbank instanziert wird instanziere ich ja eine enhtfernte bzw. andere Datenbank.
Mache ich da was falsch?
Ich habe mal den kompletten Code bis zum betreffenden Teil eingefügt:
--- Code: --- On Error Goto ErrHandler
Dim session As New NotesSession ' aktuelle Sitzung
Dim db As NotesDatabase ' Datenbank in der das Script läuft
Dim shosts_array (1 To 2) As String ' Array mit Namen der Server welche die Quelldatenbanken die ausgewertet werden sollen hosten
Dim sdbs_array (1 To 2) As String ' Array mit Namen und Pfaden der Quelldatenbanken die ausgewertet werden sollen
Dim sdbs As NotesDatabase ' Quelldatenbanken
Dim currentLog As NotesLog ' Logmechanismus
Dim count As Integer ' Zähler für die Schleife zum Auslesen der Agenten
Dim agname () As String ' Array mit den Namen der Agenten
[...]
Set db = session.CurrentDatabase
Set currentLog = New NotesLog ( db.Title )
Call currentLog.OpenNotesLog( db.Server, db.FilePath )
'Quellserver
shosts_array(1) = "server1/ou/o/c"
shosts_array(2) = "server2/ou/o/c"
' Datenbanken die ausgewertet werden sollen festlegen
' Die Datenbanken liegen auf beiden Servern im gleichen Pfad
sdbs_array(1) = "pfad\datenbank1.nsf"
sdbs_array(2) = "pfad\datenbank2.nsf"
Forall a In shosts_array
Forall b In sdbs_array
Set sdbs = New NotesDatabase (a, b)
count = 0
' Namen der Agenten auslesen und im Array "agname" speichern
Forall c In sdbs.Agents
If c.trigger = 1 Then
If c.IsEnabled = True Then
Redim Preserve agname(count)
agname(count) = c.name
count = count + 1
End If
End If
End Forall
[...]
--- Ende Code ---
Gruß
Jens
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln