2014-01-31 3 views
0

У меня есть кнопка для ввода календаря Notes.Календарная кнопка Ввод

В основном это просто создает новую запись, когда кто-то нажимает на нее.

Это полный скрипт:

Sub Click(Source As Button) 
    Dim s As New NotesSession 
    Dim db As NotesDatabase 
    Dim doc As NotesDocument 
    Dim subject As String 
    Dim maildoc As NotesDocument 
    Dim rtitem As NotesRichTextItem 
    Set db = s.CurrentDatabase 
    Set doc = New NotesDocument(s.CurrentDatabase) 
    Set maildoc = New NotesDocument(s.CurrentDatabase) 
    Set ritem = New NotesRichTextItem(maildoc, "Body") 

'Modify Subject, Location, Start Day and Time, End Day and Time before sending!! 
'######################################################################### 

    doc.subject = "HI" 
    doc.location = "I2-300" 
    Set startdatetime = New NotesDateTime("05/29/2014 04:00:00 PM") 
    Set enddatetime = New NotesDateTime("05/29/2014 05:00:00 PM") 

«################################# ########################################

doc.From = s.UserName 
    doc.Form = "Appointment" 
    doc.AppointmentType = "0" 
    doc.Chair = s.UserName 
    doc.StartDateTime = startdatetime.LSLocalTime 
    doc.EndDateTime = enddatetime.LSLocalTime 
    doc.CalendarDateTime = startdatetime.LSLocalTime 
    doc.TimeRange = Timevalue(doc.startdatetime(0)) & "-" & Timevalue(doc.enddatetime(0)) 
    doc.ExcludefromView = "D" 

    Call doc.ReplaceItemValue("_ViewIcon", 160) 
    Call doc.AppendItemValue("$BusyName", s.UserName) 
    Call doc.AppendItemValue("$BusyPriority", "1") 
    Call doc.AppendItemValue("$PublicAccess", "1") 
    Call doc.save(True,True) 

    Print "An entry for this event was successfully added to your calendar and an e-mail confirmation was sent." 
    Msgbox "Calendar successfully updated and e-mail confirmation sent.", 64, "Success" 

    'Send e-mail confirmation 

    maildoc.Form = "Memo" 

'Modify Subject and Send to 
'############################################################################ 
    maildoc.Subject = "Yes - I will attend - May 29" 
    maildoc.SendTo = "" 

'############################################################################ 
    Call maildoc.Send(False) 

End Sub 

Ну на мой вопрос Как добавить поле описания, где я могу вставить текст, и он должен отображаться в поле описания. В записи календаря.

Ну, я пробовал Doc.Description не работал. Запись не обновляется?

Может кто-нибудь взглянуть?

ответ

2

Почтовые и календарные формы в Notes имеют много общих полей. Одно из этих полей называется Телом. В форме «Назначение» поле «Тело» обозначается «Описание». Итак, Тело - это то, что вы хотите.

Тело - это поле с богатым текстом. Вы должны использовать doc.CreateRichTextItem("Body") и методы класса NotesRichTextItem для работы с ним, вместо того, чтобы просто использовать doc.AppendItemValue("Body",someVariable).

В будущем, пожалуйста, имейте в виду, что разработчики Notes могут очень легко исследовать многие вопросы, подобные этому. Просто откройте шаблон почты в Domino Designer и посмотрите на форму _CalendarEntry. («Назначение» - это псевдоним.) Это с открытым исходным кодом. Там вы увидите поля. Прокрутите до конца, и вы найдете ярлык «Описание», а ниже вы увидите поле «Тело». Многие вещи там очень грязные, но поле тела нет. И для большинства других вещей, с которыми вы можете иметь дело, действительно стоит потратить время, чтобы изучить беспорядочные биты, чтобы увидеть, как это работает.