Domino 9 und frühere Versionen > ND6: Entwicklung
Zeit-Agenten ohne Laufzeitziel
Andreas Huhn:
Hab ich gestern nicht gespeichert?
Hab heut morgen an einer anderen Baustelle angefangen und als ich jetzt den Agenten geöffnet hab war der alte Formel-Code drin.
Jetzt spukt mit der LS Code einen Object variable not set aus, und zwar in der fetten Zeile.
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim configdoc As NotesDocument
Dim agent As NotesAgent
Dim CoAgentIntervall As Integer
Dim CoAgentDat As Variant
Dim FreigAgentIntervall As Integer
Dim FreigAgentDat As Variant
Dim LieferAgentIntervall As Integer
Dim LieferAgentDat As Variant
Dim NowDat As Variant
Set db= session.CurrentDatabase
Set view = db.getview("AnsKonfiguration")
Set configdoc = view.getdocumentbyKey("1")
CoAgentIntervall = configdoc.ZahlCoAgentIntervall(0)
CoAgentDat = configdoc.datCoAgentDat(0)
FreigAgentIntervall = configdoc.ZahlFreigAgentIntervall(0)
FreigAgentDat = configdoc.datFreigAgentDat(0)
LieferAgentIntervall = configdoc.ZahlLieferAgentIntervall(0)
LieferAgentDat = configdoc.datLieferAgentDat(0)
NowDat = Now()
If Typename(NowDat) = "DATE" And Typename(CoAgentDat) = "DATE" Then
If Val( (NowDat - CoAgentDat) / 86400) >= CoAgentIntervall Then
Set agent = db.GetAgent("CoordAgent")
agent.Run
End If
End If
If Typename(NowDat) = "DATE" And Typename(FreigAgentDat) = "DATE" Then
If Val( (NowDat - FreigAgentDat) / 86400) >= FreigAgentIntervall Then
Set agent = db.GetAgent("FreigAgent")
agent.Run
End If
End If
If Typename(NowDat) = "DATE" And Typename(LieferAgentDat) = "DATE" Then
If Val( (NowDat - LieferAgentDat) / 86400) >= LieferAgentIntervall Then
Set agent = db.GetAgent("LieferAgent")
agent.Run
End If
End If
End Sub
Stimmt an der Zuweisung etwas nicht?
umi:
Ist da evtl. noch ein Design Template mit im Spiel?
Als kleiner Tip
nach einem view.getdocumentbykey immer auf isnothing prüfen
Andreas Huhn:
In der Designerhelp findet er unter isnothing nichts.
Wie lautet die Syntax?
if isnothing view then msgbox "view is nothing"
geht irgendwie nicht.
Du meinst Design Template weil der Code zurückgesetzt war? Weiß nicht. War bisher noch nie der Fall daß etwas zurückgesetzt wurde. Mal schaun wies morgen is. Aber das dürfte mit meiner Fehlermeldung ja erstmal nichts zu tun haben, oder?
Die Ansicht heißt (AnsKonfiguration)
Hab es sowohl mit Set view = db.getview("(AnsKonfiguration)") als auch mit Set view = db.getview("AnsKonfiguration") versucht.
Außerdem müsste laut Fehlermeldung view noch korrekt befüllt sein, oder? configdoc macht den Ärger.
Fällt dir noch was ein umi?
umi:
--- Code: --- Set configdoc = view.getdocumentbyKey("1")
if not configdoc is nothing then
CoAgentIntervall = configdoc.ZahlCoAgentIntervall(0)
.
.
.
else
Messagebox "Cofigdoc nicht gefunden"
end if
--- Ende Code ---
Axel:
Sicherheitshalber solltest du noch Klammern setzen
...
if not (configdoc is nothing) then
...
Ich hab's schon erlebt, dass er ohne aus der Kurve geflogen ist.
Axel
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln