Domino 9 und frühere Versionen > ND6: Entwicklung
Kalendereinträge automatisch erstellen
novus246:
so siehts aus:
Sub Click(Source As Button)
Set s = New NotesSession
Set ws = New NotesUIWorkspace
Set uidb = s.CurrentDatabase
Set uiDocA = ws.CurrentDocument
Call uiDocA.Refresh
Call uiDocA.Save
Set docA = uiDocA.Document
Einlad = docA.SendTo
AnfangD = uiDocA.FieldGetText("start_termin")
EndeD = uiDocA.FieldGetText("ende_termin")
AnfangZ = Strleft(uiDocA.FieldGetText("beginn"), "-")
EndeZ = Strright(uiDocA.FieldGetText("ende"), "-")
tmpOrt = uiDocA.FieldGetText("ort")
tmpBody = uiDocA.FieldGetText("Titel")
tmpDokuTitel = uiDocA.FieldGetText("Inhalt")
tmpKundenName = uiDocA.FieldGetText("referent")
tmpSubject = tmpKundenName & " -> " & tmpDokuTitel
tmpSRV = uiDocA.FieldGetText("srv_1")
tmpMAIL = uiDocA.FieldGetText("MailDatei")
Set db = New NotesDatabase( tmpSRV, tmpMAIL )
Call MailSenden()
End Sub
Habe einfach das rausgenommen, was ich nicht brauche bzw. nicht habe
just.do.it:
Hmm, ohne den Code, der sich hinter der Prozedur MailSenden verbirgt ist schwer zu beurteilen, ob das alles so Sinn macht.
Gruß
Dirk
Fedaykin:
Hi Sandra
Habe mir mal einen Agent gebaut der mir mehrtägige Veranstaltung erstellt.
Sub Initialize
Dim session As New NotesSession
Dim dbMailbox As New NotesDatabase( "", "" )
Dim docAppointment As NotesDocument
Dim dateRange As NotesDateRange
Dim dauer As Integer
Dim tmpdate As String
Dim tmpdate2 As String
Dim datum_von As String
Dim datum_bis As String
Dim Betreff As String
Dim startDate As NotesDateTime
Dim endDate As NotesDateTime
Dim CalendarDateTime() As NotesDateTime
Dim i As Long
datum_von = "20.11.2007"
datum_bis = "23.11.2007"
Betreff="Seminar"
dbMailbox.OpenMail
If Not dbMailbox Is Nothing Then
Set startDate=New NotesDateTime(datum_von)
Set endDate=New NotesDateTime(datum_bis)
dauer=endDate.TimeDifference(startDate)/60/60/24
Set docAppointment=New NotesDocument(dbMailbox)
With docAppointment
.Form = "Appointment"
.subject = Betreff
.AppointmentType="2"
Set dateRange = session.CreateDateRange
tmpDate = datum_von + " 00:00:01"
tmpDate2 = datum_bis + " 23:59:59"
Set dateRange.StartDateTime = startDate
Set dateRange.EndDateTime = endDate
Set .TimeRange = dateRange
Redim CalendarDateTime(dauer)
For i=0 To dauer
Set CalendarDateTime(i)=New NotesDateTime(tmpDate)
CalendarDateTime(i).AdjustDay(i)
Next
.ReplaceItemValue "CalendarDateTime",CalendarDateTime
.SequenceNum = 1
.OrgTable = "P0"
Set .StartDateTime = New NotesDateTime (tmpDate)
Set .StartDate = New NotesDateTime (tmpDate)
Set .EndDateTime = New NotesDateTime (tmpDate2)
Set .EndDate = New NotesDateTime (tmpDate2)
.ComputeWithForm False,False
.Save False,False
End With
End If
End Sub
Hoffe hilft Dir weiter.
Gruss
Remo
novus246:
Hallo Remo und Dirk,
klar MailSenden hab ich vergessen. Hier der Code
Function MailSenden()
Set docM = db.CreateDocument
Set item = docM.GetFirstItem( "SendTo" )
docM.Form = "Appointment"
docM.AppointmentType = "3"
docM.EnterSendTo = user
docM.SendTo = user
docM.RequiredAttendees = user
docM.AltRequiredNames = user
docM.tmpRequiredAttendees = user
docM.Subject = tmpSubject
docM.Location = tmpOrt
docM.Body = tmpBody
Set rtitem = New NotesRichTextItem( docM, "Body" )
Call rtitem.AppendText( tmpBody )
Call rtitem.AddNewLine( 2 )
Call rtitem.AppendText( "Dokumentverknüpfung: " )
Call rtitem.AppendDocLink ( docA, tmpSubject )
docM.StartDateTime =Cdat(AnfangD & " " & AnfangZ)
docM.EndDateTime =Cdat(EndeD & " " & EndeZ)
docM.StartDate = Cdat(AnfangD)
docM.EndDate = Cdat(EndeD)
docM.StartTime =Cdat(AnfangZ)
docM.EndTime = Cdat(EndeZ)
DocM.~$PublicAccess = "1"
docM.CalendarDateTime =Cdat(AnfangD & " " & AnfangZ)
Call docM.ComputeWithForm( False, False )
Call docM.Save( True, True )
If (user(0) <> "") Then
Call docM.Send( False, Einlad )
End If
Call docM.Save( True, True )
End Function
Danke und Gruss
just.do.it:
Und was genau sind die Symptome? Kommt die Einladung nicht an? Oder gibt es eine Fehlermeldung?
Gruß
Dirk
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln