LOTUSSCRIPT/COM/OLE CLASSES


Examples: Intersect method
This example tests a payroll database for a multi-state company to locate all the employees who need special handling because they worked in two different states during the year. The employee data is then written to the screen.

Sub Initialize
 Dim session As New NotesSession
 Dim db As NotesDatabase
 Set db = session.CurrentDatabase
 Dim dc1 As NotesDocumentCollection
 Dim dc2 As NotesDocumentCollection
 Dim doc1 As NotesDocument
 Dim doc2 As NotesDocument
 Dim message As String
 Dim state1 As String, state2 As String
 Dim searchformula1 As String, searchformula2 As String
 
 state1 = Inputbox$("First state?")
 state2 = Inputbox$("Second state?")
 searchFormula1 = {Form = "Employee" & WorkLoc = "} & state1 & {"}
 searchFormula2 = {Form = "Employee" & WorkLoc = "} & state2 & {"}
 
 ' Note: NOT the most efficient way to do this task,
 ' but it's just an example.
 Set dc1 = db.Search(searchFormula1,Nothing, 0)
 Set dc2 = db.Search(searchFormula2,Nothing, 0)
 Call dc1.Intersect(dc2)
 If dc1.count = 0 Then
   message = "No employee documents found for both " & state1 _
   & " and " & state2
   Messagebox message, MB_OK, "No documents"
 Else  
   Set doc1 = dc1.getFirstDocument
   message = ""
   While Not doc1 Is Nothing
     message = message & {

} & doc1.GetItemValue( "Name" )(0)
     Set doc1 = dc1.getNextDocument(doc1)
   Wend
   Messagebox Mid$(message, 2), MB_OK, "Employees in " & state1$ & " and " & state2$
 End If
End Sub