如何覆盖 Outlook 日历事件
How to overwrite Outlook calendar events
所以我有这个功能可以根据字典在我的 outlook 日历上创建事件(稍后将是数据库中的数据):
def addevent(events):
import win32com.client
for item in table.keys():
start = '2012-' + item + ' 18:35'
subject = 'Event Name' + str(table[item])
oOutlook = win32com.client.Dispatch("Outlook.Application")
appointment = oOutlook.CreateItem(1) # 1=outlook appointment item
appointment.Start = start
appointment.Subject = subject
appointment.Duration = 20
appointment.Location = 'Virtual'
appointment.ReminderSet = True
appointment.ReminderMinutesBeforeStart = 1
appointment.Save()
return
但是,问题是当我重新运行它时,它会同时添加相同的事件,但我希望它同时覆盖事件/跳过相同的事件。如果说得通。
保存约会后,检索其 EntryID
属性 并存储它。下次,如果条目 ID 可用,请使用 Namespace.GetItemFromID
重新打开约会。否则像现在一样创建一个新的。
所以我有这个功能可以根据字典在我的 outlook 日历上创建事件(稍后将是数据库中的数据):
def addevent(events):
import win32com.client
for item in table.keys():
start = '2012-' + item + ' 18:35'
subject = 'Event Name' + str(table[item])
oOutlook = win32com.client.Dispatch("Outlook.Application")
appointment = oOutlook.CreateItem(1) # 1=outlook appointment item
appointment.Start = start
appointment.Subject = subject
appointment.Duration = 20
appointment.Location = 'Virtual'
appointment.ReminderSet = True
appointment.ReminderMinutesBeforeStart = 1
appointment.Save()
return
但是,问题是当我重新运行它时,它会同时添加相同的事件,但我希望它同时覆盖事件/跳过相同的事件。如果说得通。
保存约会后,检索其 EntryID
属性 并存储它。下次,如果条目 ID 可用,请使用 Namespace.GetItemFromID
重新打开约会。否则像现在一样创建一个新的。