David Kalendereinträge nach Titel/Betreff/Subject filtern

  • Hallöle an alle und noch ein frohes neues Jahr ;)


    ich habe ein kleines Problem mit der DvAPI im Bezug auf bestehende Kalendereinträge.
    Es geht um folgendes:


    Ich lasse zurzeit per Excel VBA automatisiert neue Kalendereinträge in bestimmten Gruppenkalendern erzeugen.
    Das funktioniert auch schon seit Jahren wunderbar.
    Zusätzliche lasse ich mir über folgenden Quellcode schon die Auswahl der Einträge filtern, um im Anschluss über eine Schleife gewisse weitere Dinge durchführen zu lassen. Funktioniert alles wie gesagt seit Jahren bestens.

    Code
    Set oItems = oArchive.GetArchiveEntries("Default StatusTime=" & """" & Format(Range("W10").Value, "MM" & "-" & "DD" & "-" & "YYYY") & " 08:00:00 - " & Format(Range("W10").Value, "MM" & "-" & "DD" & "-" & "YYYY") & " 22:00:00" & """")


    Nun hat sich eine neue Anforderung ergeben und ich dachte, dass ich auf Grund des oben stehenden Quellcodes schon die halbe Lösung hätte und dass der Rest entsprechend easy zu erledigen wäre.......falsch gedacht :D


    Die Anforderung ist, dass ich bei bereits erzeugten Kalendereinträgen nachträglich in gewissen Fällen den Titel bzw. Betreff automatisiert anpassen lassen muss.
    Ich bin also davon ausgegangen, dass ich den oben stehenden Quellcode "nur" wie folgt anpassen müsste, um nach dem Titel/Betreff zu filtern.


    Code
    Set oItems = oArchive.GetArchiveEntries("Default Subject=" & Chr(34) & "Test" & Chr(34) & "")


    Das funktioniert aber leider nicht. Scheinbar kann man hier ausschließlich nach "StatusTime" filtern, oder?


    Also meine Frage, ob es eine Möglichkeit gibt, die Kalendereinträge die ich dursuchen möchte, vorab nach den Betreff/Titel zu filtern?


    Ich könnte natürlich alle Einträge mit einer Schleife nach dem "Subject" durchsuchen lassen, da in dem entsprechendn Gruppenkalender allerdings schon über 10000 Einträge vorhanden sind und jährlich nochmal gut 5000 Einträge hinzukommen, befürchte ich dadurch gewisse Performanceprobleme bei der Abfrage. Also würde ich die Einträge vorab möglichst auf ein paar eingrenzen.


    Wäre super, wenn mir hier jemand ein paar Tipps geben könnte, wie man das am schlauesten lösen kann.


    Vielen Dank im Voraus und beste Grüße,
    Tobias

  • Hallo nochmal.


    Kurze Info, hab mein Problem über einen anderen Lösungsansatz nun selber gelöst ;)


    Ich lasse nun beim ersten Erzeugen des Termins sowohl die ID "RecNo" als auch den Dateinamen inklusive Pfad "Filename" in eine Datenbank schreiben.


    Sobald nachträglich Änderungen stattfinden müssen, prüfe ich über die ID aus der Datenbank, ob die ID noch auf den korrekten Eintrag mit dem korrekten Betreff "Subject" verweist.
    Wenn dies nicht der Fall ist, da sich bei der automatischen Bereinigung die IDs ja ändern können, prüfe ich über den gespeicherten Dateinamen mit Pfad, ob der Eintrag noch auf den korrekten Eintrag verweist. Und sollte das auch nicht klappen, dann kommt die Schleife zum Einsatz mit der sämtliche Termine im Archiv durchsucht werden.


    Somit müsste ich zwei Lösungswege haben, damit die Änderungen auch performant ablaufen können und einen Lösungsweg, der zwar nicht mega performant ist, aber zumindest zum Ziel führt, wenn nichts anderes mehr geht.


    Trotzdem vielen Dank.


    Viele Grüße,
    Tobias

  • Hallo Tobias,


    sorry für die verspätete Rückmeldung.


    Zitat

    Das funktioniert aber leider nicht. Scheinbar kann man hier ausschließlich nach "StatusTime" filtern, oder?


    Anderes wüsste ich auch nicht.


    Ich denke besser als mit Deinem Ansatz kann man es leider nicht machen.
    Du könntest noch ein Userfield hinzufügen um den Eintrag bei der Suche über die Schleife eindeutig wiedererkennen zu können.


    Bzgl. der Performance solltest Du nach Möglichkeit speziell bei der Schleife mit dem MessageItem2 statt mit dem CalendarItem (was sich vom MessageItem ableitet) arbeiten. Das ist ca. um den Faktor 10 schneller. Um ein CalenderItem zu erzeugen musst Du dann wieder den bekannten weg über die ID gehen. Aber die Suche/Schleife an sich kannst Du als MessageItem2 laufen lassen.


    Aber da Du oben auch mit GetArchiveEntries gearbeitet hast, nehme ich an, dass Du das sowieso schon verwendest.


    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!