Page 2 of 2 FirstFirst 1 2
Results 16 to 21 of 21

Thread: De agenda van Outlook selecteren of openen met OLE

  1. #16
    Dat kan, maar is niet helemaal wat ik wilde.
    Het programma ondervind geen probleem, want de exceptionhandling van het netjes af.
    Jammer dat Outlook een fijne foutmelding "bewerking mislukt" teruggeeft.
    Kan namelijk van alles zijn.

  2. #17
    Quote Originally Posted by MacVersie View Post
    Dat kan, maar is niet helemaal wat ik wilde.
    Dan moet je even omschrijven wat je precies wilt.

    Als je de agenda's wilt doorzoeken als in Outlook de E-mail geselecteerd is, dan is isSelected natuurlijk false.
    Wil je ze dus dan toch doorzoeken (zoals je in het begin aangaf) dan moet je die check niet uitvoeren.

    Ik lees niets over een exception dus die begreep ik even niet.

  3. #18
    In de tool voer ik een zoekopdracht in.
    Wanneer ik op de knop zoeken druk, dan wordt er gezocht in alle gedeelde agenda's die geselecteerd zijn.
    In Outlook kan je meerdere agenda's toevoegen aan je lijst, maar dat wil nog niet zeggen dat deze agenda's getoond worden.
    Daarvoor moet je de agenda selecteren door het aanvinken van de checkbox van deze agenda.

    Scenario exception:
    - Start Outlook,
    - De folder is E-mail,
    - De agenda bevat meerdere gedeelde agenda's,
    - de helft ervan is geactiveerd (d.m.v aanvinken checkbox),
    - Start de tool,
    - De zoekopdracht wordt voor alle agenda's uitgevoerd,
    - Mijn eigen agenda wordt altijd doorzocht, ongeacht aangevinkt of niet,
    - Alle gedeelde agenda's krijgen exception (bewerking mislukt), ongeacht aangevinkt of niet.
    De exception is in de tool netjes opgelost, dus de gebruiker heeft er geen last van.

    Wanneer de agenda (kalender) getoond wordt in Outlook werkt het correct.
    Dus mijn idee was om net voor het zoeken in de Outlook agenda's, de agenda (kalender) in Outlook te tonen.

  4. #19
    Ah, ok, nu begrijp ik wat er met isSelected bedoeld wordt.

    Geen idee hoe ik dit zou moeten lezen:
    If the active explorer uses another view, such as the All Appointments view, to display navigation folders in the Calendar navigation module, or in navigation modules other than the Calendar navigation module[/B], this property returns True if the navigation folder is selected and currently displayed in the active explorer; otherwise, the property returns False.
    https://msdn.microsoft.com/en-us/vba...operty-outlook

    Misschien kun je met objPane.CurrentModule = objModule de huidige module switchen naar de kalender
    https://msdn.microsoft.com/en-us/vba...avigation-pane

    Maar ergens vraag ik me af of dit ook niet gewoon zonder "modules" gedaan kan worden en helemaal zonder Outlook in de lucht te hebben e.d.

  5. #20
    Perfect.
    Het tweede linkje leidde naar de oplossing.


    Delphi Code:
    1. function TSearchingThread.activateAgenda(out aModule: Variant;
    2.   aOutlook: Variant): Boolean;
    3. var
    4.   oPane: Variant;
    5. begin
    6.   Result := FALSE;
    7.   oPane := aOutlook.ActiveExplorer.NavigationPane;
    8.   try
    9.     aModule := oPane.Modules.getNavigationModule(MODULE_CALENDAR);
    10.     if not (oPane.CurrentModule.NavigationModuleType = MODULE_CALENDAR) then
    11.     begin
    12.       oPane.CurrentModule := aModule;
    13.       Result := TRUE;
    14.     end
    15.     else
    16.       Result := TRUE;
    17.   finally
    18.     oPane := Unassigned;
    19.   end;
    20. end;

  6. #21
    Bedankt voor het meedenken, Rik

    Heb in het laatste stukje code exception handling ingebouwd.
    Dus niet twee keer TRUE.

    Met vriendelijke groet,
    Marco

Page 2 of 2 FirstFirst 1 2

Thread Information

Users Browsing this Thread

There are currently 2 users browsing this thread. (0 members and 2 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •