Domino 9 und frühere Versionen > ND7: Entwicklung
"Type mismatch" bei Agenten
Jens_1:
Ich krieg's einfach nicht hin! >:(
Setze ich da ein
--- Code: ---Call sdbs.open (a, b)
--- Ende Code ---
ein, kriege ich die Fehlermeldung, daß die Datenbank bereits geöffnet ist.
Lasse ich den Absatz weg, kriege ich den Type mismatch.
Ich habe die Quellserver und -Datenbanken jetzt mal als Liste und nicht als Array definiert. Hat aber leider nix geändert.
Hier noch mal mein aktueller Code:
--- Code: ---Sub Initialize
On Error Goto ErrHandler
Dim session As New NotesSession ' aktuelle Sitzung
Dim db As NotesDatabase ' Datenbank in der das Script läuft
Dim shosts_list List As String ' Liste mit Namen der Server welche die Quelldatenbanken die ausgewertet werden sollen hosten
Dim sdbs_list List As String ' Liste mit Namen und Pfaden der Quelldatenbanken die ausgewertet werden sollen
Dim sdbs As New NotesDatabase ("", "")' Quelldatenbanken
Set db = session.CurrentDatabase
Set currentLog = New NotesLog ( db.Title )
Call currentLog.OpenNotesLog( db.Server, db.FilePath )
'Quellserver
shosts_list(1) = "server"
shosts_list(2) = "server"
' Datenbanken die ausgewertet werden sollen festlegen
' Die Datenbanken liegen auf beiden Servern im gleichen Pfad
sdbs_list(1) = "pfad\filename.nsf"
sdbs_list(2) = "pfad\filename.nsf"
Forall a In shosts_list
Forall b In sdbs_list
Call sdbs.open (a, b)
' 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
Print sdbs.Title & " " & c.name
End If
End If
End Forall
End Forall
End Forall
Exit Sub
ErrHandler:
' Eintrag in's Log machen
Call currentLog.LogError(0, "Der Fehler mit der Nummer" & Str(Err) & " und der Meldung " & Chr$(34) & Error$ & Chr$(34) & " ist bei Zeile " & Str(Erl) & " aufgetreten.")
Call currentLog.LogError(0, "Inhalte: " & sdbs.Title)
Exit Sub
End Sub
--- Ende Code ---
Wo mache ich da Mist???????
So langsam weiß ich nicht mehr weiter..... ???
Gruß
Jens
DAU-in:
if not db.open then
call db.open
end if
ist die DB im Debugger denn geöffnet = kannst du (sinnvolle) Eigenschhaften lesen?
Jens_1:
Werde ich gleich noch mal ausprobieren.
Aber müsste ein entfernen des
--- Code: ---Call sdbs.open (a, b)
--- Ende Code ---
nicht den gleichen Effekt haben wie die Abfrage?
Wenn ich den Agenten manuell starte funktioniert er einwandfrei und die Datenbanken werden im Debugger auch mit allen Eigenschaften angezeigt.
Starte ich scheduled sehe ich an der Fehlerroutine, daß die Variable sdbs.Title gesetzt ist...
Gruß
Jens
Jens_1:
--- Zitat von: DAU-in am 21.07.09 - 11:42:30 ---if not db.open then
call db.open
end if
ist die DB im Debugger denn geöffnet = kannst du (sinnvolle) Eigenschhaften lesen?
--- Ende Zitat ---
Bringt nüscht :'(
Leider kommt dabei auch nur wieder ein Type mismatch raus....
Gruß
Jens
atbits:
Was sagt denn das Serverlog auf dem Zielserver wo du die db öffnen willst?
Kann der Server auf dem der Agent läuft überhaupt auf diesen Server zugreifen (Stichwort Trusted Server und Verbindungsdokument)?
Grüße David
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln