Hallo Leute,
ich lasse über eine Datenbank einen Kalendereintrag beim jeweiligen User, welcher den Button Drückt erstellen...
Leider steht der Eintrag immer parallel zum Kalender in den Entwürfen.. des Mailfiles ?!
..gibt's hier Abhilfe ?
Danke und Gruß
snore
Sub Click(Source As Button)
Dim ns As New NotesSession
Dim dbCurr As NotesDatabase
Dim docNew As NotesDocument
Dim dbMail As NotesDatabase
Dim docSaved As NotesDocument
Dim ws As New NotesUIWorkspace
Dim uiDoc As NotesUIDocument
Dim nameCur As New NotesName( ns.UserName )
Dim nameMelder As NotesName
Dim rtimtem As NotesRichtextItem
Dim dtStart As New Notesdatetime( Now )
' ----------------------------------------------------------------------------------------
' Protokollierung
Dim protokoll() As String
Dim strZeile As String
Dim ct As Integer
' ----------------------------------------------------------------------------------------
Dim strSrvName As String
Dim strDBName As String
Dim ERG As Variant
Dim rtpStyle As NotesrichTextParagraphStyle
Set rtpStyle = ns.CreateRichTextParagraphStyle
Dim richStyle As NotesRichTextStyle
Set richStyle = ns.CreateRichTextStyle
' ----------------------------------------------------------------------------------------
Set dbCurr = ns.CurrentDatabase
Set uiDoc = ws.CurrentDocument
Call uidoc.Refresh
Sleep 1
' ----------------------------------------------------------------------------------------
' Benutzernamen auswerten
Set nameMelder = New NotesName( uiDoc.FieldGetText( "meldermanuell" ) )
Print nameMelder.Abbreviated
ERG = Evaluate( "@MailDBName" )
If ERG(0) = "" Or ERG(1) = "" Then
Print "Fehler: Der Name der maildatei konnte nicht ermittelt werden."
Goto p_ende
End If
' ----------------------------------------------------------------------------------------
' Felder im aktuellen Dokument sezten
Call uiDoc.FieldSetText( "SaveFlag" , "X")
Call uiDoc.Refresh( True )
Call uiDoc.Save
Set docSaved = uiDoc.Document
docSaved.Status = "2"
Call docSaved.save( True, False, True )
' Call uiDoc.Reload
' ----------------------------------------------------------------------------------------
' Protokoll schreiben
strZeile = Format( Now, "dd.mm.yyyy hh:mm:ss" ) & " : Passwort zurückgesetzt für " & nameMelder.Common & " - durch " & nameCur.Common
ct = 0
Redim Preserve protokoll( ct )
protokoll( ct ) = strZeile
Forall z In docSaved.Protokoll
ct = ct + 1
Redim Preserve protokoll( ct )
protokoll( ct ) = z
End Forall
docSaved.protokoll = protokoll
Call docSaved.Save( True, False, True )
' ----------------------------------------------------------------------------------------
' Mail senden an Anwender
Set dbMail = New NotesDatabase( ERG(0), ERG(1) )
If Not dbMail.IsOpen Then
Print "Fehler: kein Zugriff auf die Maildatenbank möglich"
Goto p_ende
End If
Set docNew = dbMail.CreateDocument
docNew.Form = "Memo"
docNew.SendTo = nameMelder.Abbreviated
docNew.Subject = "Bestätigung der Passwortrücksetzung an FAX-Nr.: 0xxxx"
Set rtitem = New NotesRichTextItem( docNew, "Body" )
rtpStyle.Alignment = ALIGN_LEFT
Call rtitem.AppendParagraphStyle(rtpStyle)
richStyle.FontSize = 18
richStyle.Bold = True
Call rtitem.AppendStyle(richStyle)
Call rtitem.AppendText( "Bestätigung einer Passwortrücksetzung" )
rtpStyle.Alignment = ALIGN_LEFT
Call rtitem.AppendParagraphStyle(rtpStyle)
richStyle.FontSize = 11
richStyle.Bold = False
Call rtitem.AppendStyle(richStyle)
Call rtitem.Addnewline( 2 )
Call rtitem.Appendtext( "Bitte innerhalb von 10 Minuten nach erfolgreicher Anmeldung an den" )
Call rtitem.Addnewline( 1 )
Call rtitem.Appendtext( "UB Organisation faxen oder als Scan-Mail mailen!" )
Call rtitem.Addnewline( 2 )
Call rtitem.Appendtext( "Fax---> DW-Nummer - 549" )
Call rtitem.Addnewline( 2 )
Call rtitem.Appendtext( "Geht das Fax nicht rechtzeitig ein, wird das Passwort aus Sicherheitsgründen gesperrt." )
Call rtitem.Addnewline( 4 )
Call rtitem.Appendtext( "Hiermit bestätige ich, die Rücksetzung meines Passwortes in Auftrag gegeben zu haben." )
Call rtitem.Addnewline( 5 )
Call rtitem.Appendtext( "Name")
Call rtitem.Addtab( 3 )
Call rtitem.Appendtext( nameMelder.common )
Call rtitem.Addnewline( 1 )
Call rtitem.Appendtext( "Bediener-Nr.")
Call rtitem.Addtab( 2 )
Call rtitem.Appendtext( uiDoc.FieldGetText("Bediener") & " / " & uiDoc.FieldGetText("YHNummer"))
Call rtitem.Addnewline( 1 )
Call rtitem.Appendtext( "Datum")
Call rtitem.Addtab( 3 )
Call rtitem.Appendtext( Format( Now, "dd.mm.yyyy hh:mm" ) )
Call rtitem.Addnewline( 4 )
Call rtitem.Appendtext( "__________________________________")
Call rtitem.Addnewline( 1 )
Call rtitem.Appendtext( "Unterschrift/Stempel")
Call rtitem.Addnewline( 1 )
Call docNew.ComputeWithForm( True, False )
Call docNew.Save( True, False, True )
Call docNew.PutInFolder( "Gesendet" )
Call docNew.Send( False )
Set docNew = Nothing
Set rtitem = Nothing
' ----------------------------------------------------------------------------------------
' Erinnerung in Kalender eintragen
' AppointmentType="4";
Set docNew = dbMail.CreateDocument
Call dtStart.AdjustMinute( 10 )
docNew.Form = "Appointment"
docNew.AppointmentType = "4"
docNew.CalendarDateTime = dtStart.LSLocaltime
docNew.StartDateTime = dtStart.LSLocaltime
docNew.EndDateTime = dtStart.LSLocaltime
docNew.Subject = "Passwortrücksetzung für " & nameMelder.Common
docNew.dispAlarms = "1"
Call docNew.ReplaceItemValue( "$Alarm", 1)
Call docNew.ReplaceItemValue( "Alarms", "1")
Call docNew.ReplaceItemValue( "$AlarmOffset", -9)
Call docNew.ReplaceItemValue( "$BusyPriority", 1)
Call docNew.ReplaceItemValue( "$AlarmSendTo", "")
Call docNew.ComputeWithForm( True, False )
Call docNew.Save( True, False, True )
Call uiDoc.FieldSetText( "KalDocID", docNew.UniversalID )
p_ende:
Call uiDoc.Save
Call uiDoc.Close
End Sub