Laden...

Alle Appointments aus Offic lesen und an Form weitergeben (Add on)

Erstellt von Hobelschlunze vor 9 Jahren Letzter Beitrag vor 9 Jahren 3.369 Views
Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren
Alle Appointments aus Offic lesen und an Form weitergeben (Add on)

Hallo 🙂

ich habe ein Add on für Outlook gemacht und würde nun gerne die Appointments aus dem Kalender auslesen und an eine Form weitergeben können. (TerminObjekt)

Die Termine (Appointments) sollen dann auf der Form dargestellt werden.

ich müsste dazu eigentlich nur wissen wie ich die Termine auslese, den Rest schaffe ich dann schon 😁

Gruß Fabi 8) 😁

Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.

Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren

Danke für die schnelle Antwort, ich probiers gleich mal 😃

Hat super funktioniert 😄



            Outlook.MAPIFolder calendar = Application.Session.GetDefaultFolder (Outlook.OlDefaultFolders.olFolderCalendar);
            foreach (Outlook.AppointmentItem VARIABLE in calendar.Items)
            {
                if (VARIABLE.End > DateTime.Now)
                {
                    MessageBox.Show(VARIABLE.ConversationTopic);
                }
            }


Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.

Hinweis von Abt vor 9 Jahren

Ein klassisches Beispiel für [Hinweis] Wie poste ich richtig? 1.1:
Das Google-Suchen des entsprechenden Threads mit der Lösung hat keine 10 Sekunden gebraucht "c# get all outlook appointments".
Das hätte also a) den unnötigen Thread wie auch b) Dir Zeit gespart.

Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren

Jetzt muss ich alle Kalender auslesen und die darin enthaltenen Termine darstellen.
Es sollen auch Termine angelegt werden können

Google konnte mir bissher nicht weiterhelfen.
Auch: Freigebene Kalender in Outlook auslesen
hat mich nicht wirklich weiter gebracht denn mir wird der Teamkalender (Bild) nicht angezeigt 😦

Gruß Fabi

Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.

1.378 Beiträge seit 2006
vor 9 Jahren

Google führte mich hier her: C#: Get Event from shared calendar(s)

Lg, XXX

Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren

ich habe es nun mit folgendem Code probiert:


            CalendarModule calModule = (CalendarModule)Globals.ThisAddIn.Application.ActiveExplorer ().NavigationPane.Modules.GetNavigationModule (OlNavigationModuleType.olModuleCalendar);

            foreach (NavigationGroup group in calModule.NavigationGroups)
            {
                for (int i = 1; i <= group.NavigationFolders.Count - 1; i++)
                {
                    for (int x = 1; x <= group.NavigationFolders[i].Folder.Items.Count; x++)
                    {
                        Trace.WriteLine(string.Format("Appointment Subject: {0}", ((AppointmentItem)group.NavigationFolders[i].Folder.Items[x]).Subject));
                    }
                }
            }

aber es gibt immer einen Fehler bei : for (int x = 1; x ≤ group.NavigationFolders_.Folder.Items.Count; x++)> Fehlermeldung:

Fehler beim Ausführen der Operation.

Nach einer weile habe ich rausgefunden das es am "Folder" liegt wie im Bild zu sehen.

Ich hoffe mir kann jmd weiterhelfen... 🙁 X(

Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.

Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren

Google führte mich hier her:
>

Erfolglos X(

Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.

1.378 Beiträge seit 2006
vor 9 Jahren

Hallo Hobelschlunze

was war daran erfolglos? Hast du das Beispiel probiert?

Lg, XXX

Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren

Ja und zwar erhalte ich dann Öffentliche Ordner aber nicht den Teamkalender und nur meine eigenen Appointments
Eigentlich funktioniert der Code von mir den ich oben gepostet habe... nur bis auf diese eine Variable

was war daran erfolglos? Hast du das Beispiel probiert?

der Code gibt Folgenden Fehler: > Fehlermeldung:

Ein Dialogfeld ist geöffnet. Schließen Sie das Dialogfeld und versuchen Sie es erneut.

Habe an dem Code heute auch schon viel gebastelt

Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.

16.806 Beiträge seit 2008
vor 9 Jahren

Zuerst einmal ist es absolut unnötig für jeden Halbsatz einen eigenen Beitrag zu schreiben. Ich habe daher die unnötigen Beiträge zusammen gefasst. Des weiteren untelasse bitte die Fullquotes. Ich hab die letzten jetzt still und heimlich selbst entfernt; aber irgendwann ist gut. Keine Lust ständig Putzmann spielen zu müssen 😉 Beachte [Hinweis] Wie poste ich richtig? 2.3 (Sparsam zitieren).

Wie man der Dokumentation entnehmen kann ist ein NavigationFolder nicht zwangsläufig ein MAPIFolder. Es kann genauso ein Outlook.Folder sein.
Ergo ist die Wahrscheinlichkeit, dass ein Zwangs-Casting einem um die Ohren fliegt, wie Du es machst, ziemlich hoch.

Besser zB:

Outlook.Folder f = folder.Folder as Outlook.Folder; 
Hobelschlunze Themenstarter:in
16 Beiträge seit 2014
vor 9 Jahren

Sry wegen der vielen Posts...

Danke jetzt funktionierts wunderbar, außer bei einem Kalender aber da scheint das Problem nicht am Code sondern an der Berechtigung zu liegen...

Azubi im 2ten Lehrjahr (Fachinformatiker Anwendungsentwicklung)

Codieren Sie immer so, als wäre der Typ, der den Code pflegen muss, ein gewaltbereiter Psychopath, der weiß, wo Sie wohnen.