Hallo
so kurz vor den Feiertagen hab ich dann dochmal eine frage
und zwar..
ich habe diverse agenten geschrieben die Notesdatenbanken mit einem mssqlserver abgleichen indem ich mir vordefinierte ansichten hole und dies mit den werten die ich per LSXODBC
die agenten an sich laufen wunderprächtig
so nun hab ich vor die mittlerweile 18 prüfungen doch mitttels eines einzigen agentten starten zu lassen der sieht wie folgt aus
===================
Dim s As New notessession
Dim db As notesdatabase
Dim array(0 To 17) As String
Dim agent As notesagent
Set db = s.CurrentDatabase
array(0) = "CCDBESGEM"
array(1) = "CCD_Leistungsdaten"
array(2) = "CCDLIZ"
array(3) = "CCDPFAHRER"
array(4) = "CCDPTRAIN"
array(5) = "CCDPZUECHTER"
array(6) = "CCDPSTAMM"
array(7) = "CCDPSTAT"
array(8) = "CCDSQLLN"
array(9) = "CCDZEICH"
array(10) = "CCDZUAN"
array(11) = "CCDAUSF"
array(12) = "CCDBESITZ"
array(13) = "CCDEINF"
array(14) = "CCDSTAND"
array(15) = "CCDTLIST"
array(16) = "CCDTSTAT"
array(17) = "CCDPGESTUET"
For i = 0 To Ubound(array)
Set agent = db.GetAgent( cstr(array(i))
If agent.Run = 0 Then
Print "start -> " & array(i)
Else
Print "DENIED -> " & array(i)
End If
Next
====================
sobald agent.Run aufgerufen wird bekomme ich die Fehlermeldung "Lotus Script unknown error"
nun bin ich am überlegen ob nicht im fiolgendem code der fehler begraben liegt
(ein Prüfagent)
===============================
Sub Initialize
Dim con As New LCConnection ("oledb")
con.database = "XXXX"
con.server = "XXXX"
con.provider ="SQLOLEDB"
con.userid =""XXXX"
con.password = ""XXXX"
'==========================
Dim SQL As String
Dim lcsess As New LCSession
Dim MyResult As String
Dim lcfeld As LCField
Dim lcfeld2 As New LCField (LCTYPE_DATETIME)
Dim session As New NotesSession
On Error Goto ErrorHandler
Set aktdb = session.CurrentDatabase
Set configdoc = getconfigdoc(Cstr(aktdb.server))
Set db = New notesdatabase(configdoc.paserver(0), configdoc.pafile(0))
Dim ident ()
Dim zeit ()
count = 0
filenum% = Freefile()
Open "\\server\ordner\CheckServer\CHECKSQLNOTES_BG" & Format(Today,"ddmmyyyy") & ".xls" For Output As filenum%
Print # filenum%, "PARTNERID NAME NOTES SQL"
'Notes holen
Set view = db.getview("(CheckBG)")
Set col = view.allentries
'SQL holen
sql = "select pbgunID,pbgaenddt from pbgp where CONVERT(varchar(8), pbgaenddt, 112)=CONVERT(varchar(8), GetDate(), 112) order by pbgunid"
Dim MyFldList As New LCFieldList
con.Execute sql,myfldlist
' rtlident, rtldat,rtlort,rtlfahrer, rtltrainer, rtlidzue,rtlidbes
While (con.Fetch(myfldlist) > 0)
Redim Preserve ident (count)
Redim Preserve zeit(count)
Set lcfeld2 = myfldlist.GetField(1)
ident (count)= Cstr(lcfeld2.text(0))
Set lcfeld2 = myfldlist.GetField(2)
zeit(count) = Cdat(lcfeld2.value(0))
count = count + 1
Wend
Print # filenum%, ""
Print # filenum%, "Notes: " & col.count & " " & "SQL: " & (count)
Print # filenum%, ""
For i = 1 To col.count
check = 0
Set entry = col.getnthentry(i)
If count > 0 Then
For a = 0 To Ubound(ident)
If Cstr(entry.document.docID(0)) = Cstr(ident(a)) Then
check = 1
Goto weiter
End If
Next
End If
nichtdabei = entry.document.PartnerID(0) & " " & entry.document.NameDisplay(0) & " NICHT AUF SQL mit ChangeDate heute"
weiter:
If check = 1 Then
If entry.document.ChangeDate(0) = zeit(a) Then
Print entry.document.PartnerID(0) & " " & entry.document.NameDisplay(0) & " passt!"
Else
Print entry.document.PartnerID(0) & " " & entry.document.NameDisplay(0) & " passt nicht!"
Print # filenum%, entry.document.PartnerID(0) & " " & entry.document.NameDisplay(0) & " " & entry.document.ChangeDate(0) & " " & zeit(a)
End If
Else
Print # filenum%,nichtdabei
End If
Next
Close filenum%
Exit Sub
'##########################################
ErrorHandler:
Messagebox Error$, 16, "Fehler:" & Err
Exit Sub
End Sub
==================
ich hoffe ich hab da keinen absoluten bockmist gefragt
vielen dank schonmal im vorraus
und Frohe Ostern!!