Nu skriver du ikke hvilken version af Exchange, men hvis du bruger 2000/2003 kan du bruge nedenstående. Jeg har taget det fra noget jeg har lavet inde på arb, så det er derfor det ser ud som det gør.
Funktionen ConvertDate skal du bruge da exchange er meget kritisk med hvordan den håndtere datoer i sql sætningen. Som du kan se ligner det rigtigt meget en normal db (ala sql server).
Vær opmærksom på at du kan kun bruge denne kode direkte på exchange serveren - driveren understøtter ikke funktionaliten (ifølge MS) med at virke over et netværk desværre :-(
Hvis du har prob. med at få til det til at fungere, så bare skriv :)
Response.Write GetContentCalendar(strUserName)
function ConvertDate(dtmDate)
dtmDateArary = Split(dtmDate, "-")
If Len(dtmDateArary(1)) = 1 Then
dtmMonth = "0" & dtmDateArary(1)
Else
dtmMonth = dtmDateArary(1)
End if
dtmDay = Left(dtmDateArary(2), Instr(dtmDateArary(2), "T")-1)
If Len(dtmDay) = 1 Then
dtmDay = "0" & dtmDay
Else
dtmDay = dtmDay
End if
dtmTime = dtmDateArary(2)
dtmTime = Mid(dtmTime, Instr(dtmTime, "T"), Instr(dtmTime, "Z"))
ConvertDate = dtmDateArary(0) & "-" & dtmMonth & "-" & dtmDay & dtmTime
end function
' *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
Function GetContentCalendar(strUserName)
InboxURL = "
http://exchangeserver/Exchange/" & strUserName & "/Indbakke/"
Set conn = CreateObject("ADODB.Connection")
conn.Provider = "ExOLEDB.DataSource"
conn.Open InboxURL
qdatest1 = Year(Now()) & "-" & Month(Now()) & "-" & Day(DateAdd("d", -1, Now())) & "T00:00:00Z"
strQ = "select "
strQ = strQ & " ""urn:schemas:mailheader:date"""
strQ = strQ & ", ""urn:schemas:mailheader:sender"""
strQ = strQ & ", ""urn:schemas:mailheader:subject"""
strQ = strQ & ", ""urn:schemas:mailheader:received"""
strQ = strQ & ", ""urn:schemas:httpmail:from"""
strQ = strQ & ", ""DAV:contentclass"""
strQ = strQ & ", ""DAV:href"""
strQ = strQ & " from scope ('shallow traversal of "
strQ = strQ & Chr(34) & InboxURL & Chr(34) & "') "
strQ = strQ & "WHERE (""urn:schemas:mailheader:date"" > CAST(""" & ConvertDate(qdatest1) & """ as 'dateTime')) "
strQ = strQ & " ORDER BY ""urn:schemas:mailheader:date"" DESC"
Set rs = conn.Execute(strQ)
If Not (rs.BOF Or rs.EOF) Then
Do While (Not rs.EOF)
strSubject = rs("urn:schemas:mailheader:subject")
strsender = rs("urn:schemas:mailheader:sender")
rs.MoveNext
Loop
End if
Set rs = Nothing
End function