Outlook Appointmenitem Tags

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Eto309.

    Outlook Appointmenitem Tags

    Ist es möglich einem Microsoft.Office.Interop.Outlook.AppointmentItem eine Art Tag mit zugeben um es später eindeutig bestimmen zu können das es sich um jenes Appointment handelt?

    Subject Kürzel oder Ähnliches ist nicht gewollt!

    Bzw ist es möglich das über Userporperties zu machen?

    Der Knackpunkt ist das die Termine über Outlook gesendet werden und über den Exchange Service wieder ausgelesen werden sollen.

    VB.NET-Quellcode

    1. Private Shared Sub Appointment_Send () Handles AptNew.Send
    2. AptNew.UserProperties.Add("SILO",OlUserPropertyType.olText)
    3. End Sub
    4. Freundliche Grüße
    Nein. Nochmal alles auf Anfang. Zur genauen Erläuterung erstmal ein Schaubild:

    bilder-upload.eu/show.php?file=efdb9b-1533658825.png (kann grad im Forum das Bild noch richtig hochladen)


    Es soll möglich sein über das Outlook Addin dem Termin eine Art "#TAG" (nicht zu verwechseln mit einem Tag (wie Montag, Dienstag)) mitzugeben damit diesen von mir erstellten Termin/Termine genau identifizieren kann.

    Später werden von einer Webseite aus alle Termine Aus dem Exchange Server gelesen. Nur jene die dieses Tag besitzen sollen mir angezeigt werden.

    Auslesen aus dem Exchange (zur Zeit lese ich noch aus dem Betreff (Subject)… dies soll später über den "TAG" passieren)

    VB.NET-Quellcode

    1. Dim service As ExchangeService = New ExchangeService With { .Credentials = New WebCredentials("Test.Test@com.de", "Password", "Domain"), .Url = New Uri("https://outlook.office365.com/ews/exchange.asmx") }
    2. Dim lstApmt As New List(Of Appointment)
    3. Dim startDate As DateTime = DateTime.Today
    4. Dim endDate As DateTime = startDate.AddDays(25)
    5. Dim apmt As Appointment
    6. Dim calendar As CalendarFolder = CalendarFolder.Bind(service, WellKnownFolderName.Calendar, New PropertySet())
    7. Dim cView As Data.CalendarView = New Data.CalendarView(startDate, endDate, 75) With
    8. {
    9. .PropertySet = New PropertySet(AppointmentSchema.Subject, AppointmentSchema.Start, AppointmentSchema.End, AppointmentSchema.Id, AppointmentSchema.ArchiveTag)
    10. }
    11. Dim appointments As FindItemsResults(Of Appointment) = calendar.FindAppointments(cView)
    12. For Each appointmentItem As Appointment In appointments
    13. If appointmentItem.Subject.ToString.Contains("Begriff") Then
    14. apmt = Appointment.Bind(service, appointmentItem.Id)
    15. lstApmt.Add(apmt)
    16. End If
    17. Next



    Ich suche also nach einer Möglichkeit eine eigens von mir angelegte Eigenschaft die ich dem Termin mitgebe zu Füllen und über den Exchange Service wieder auszulesen.

    Hat da jemand eine Idee ?

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Eto309“ ()