I wrote a piece of agent that export data from notes document to MSSQL. I tested this agent against MS Access and it worked fine. The problem I faced using MSSQL is that only one record is created. I didn’t define Primary key in the table so I don’t think that caused the problem. Can anyone tell me if something is wrong with this code.
Sub Initialize
'LSX Declaration and setting
Dim con As New ODBCConnection
Dim qry As New ODBCQuery
Dim result As New ODBCResultSet
Set qry.Connection = con
Set result.Query = qry
Set session = New NotesSession
Set db = session.CurrentDatabase
serverName=db.Server
Path$=fgeneratepath("")
Set dbArch = session.GetDatabase(serverName, Path$ +"ielsarchv.nsf")
'Get the view to process
Set view=dbArch.GetView("vwLookupByType")
Set docColl=view.GetalldocumentsbyKey("Team Formation")
Set qry.Connection = con
Set result.Query = qry
con.ConnectTo("IELS")
'queries the table Contacts.
qry.SQL = "SELECT * FROM Team"
If docColl.Count>0 Then
Set doc=docColl.getfirstdocument
Do While Not (Doc Is Nothing)
For i=0 To Ubound(doc.StudentInfoList)
result.Execute
result.AddRow
Call result.SetValue("TeamID",doc.TeamID(0))
Call result.SetValue("TeamName",doc.TeamName(0))
Call result.SetValue("FormNo",doc.FormNo(0))
Call result.SetValue("FormName",doc.FormName(0))
Call result.SetValue("StudentName",fword(doc.StudentInfoList(i),"~~",2))
Call result.SetValue("StudentID",fword(doc.StudentInfoList(i),"~~",1))
Call result.SetValue("StudentRole",fword(doc.RoleNumber(i),"~~",1))
Call result.SetValue("StudentPhone",fword(doc.RoleNumber(i),"~~",2))
Call result.SetValue("DiplomaProgram",fword(doc.StudentInfoList(i),"~~",4))
Call result.SetValue("TermNo",doc.TermNo(0))
Call result.SetValue("TermDesc",doc.TermDesc(0))
Call result.SetValue("AcadYear",doc.AcadYear(0))
Call result.SetValue("CourseName",doc.CourseName(0))
Call result.SetValue("CourseID",doc.CourseID(0))
Call result.SetValue("CourseOffering",doc.CourseOffering(0))
Call result.SetValue("ClassSection",doc.ClassSection(0))
Call result.SetValue("ClassNumber",doc.ClassNumber(0))
Call result.SetValue("Mentorname",doc.MentorName(0))
Call result.SetValue("MentorID",doc.MentorID(0))
result.UpdateRow
i=i+1
Next
Set doc=docColl.getnextdocument(doc)
Loop
result.Close(DB_CLOSE)
con.Disconnect
End If
End Sub