none
Outlook Conversation only works in Cache Mode RRS feed

  • Question

  • I am trying to read related emails in a conversation using the Conversation Object and "GetRootItems". When running in Outlook Cached mode this works as expected. However, if I put Outlook into online mode on the same account and with the same code (cached tick box unticked) then GetRootItems returns zero items. The Exchange server is Exchange 2010 and I have carried this test out on several different Exchange 2010 servers with both Outlook 2013 and Outlook 2010 and I cannot get it to work. Does anyone know how you read the conversation in Outlook OnLine mode.

    According to the documentation at http://msdn.microsoft.com/en-us/library/office/ff869399.aspx Exchange 2010 does not need cached mode enabled.

    I am using a C# VSTO solution.

    Thanks

    Andrew


    Andrew


    • Edited by Andrew S UK Monday, December 16, 2013 9:25 PM
    Monday, December 16, 2013 9:24 PM

All replies

  • Hello Andrew,

    You are right, there is no need to set up the cached exchange mode in Outlook. It is for Exchange Server 2007 only. What value does the IsConversationEnabled property of the Store class return?

    I have noticed the following description in MSDN:

    If all items are deleted from the conversation after the Conversation object has been obtained, GetRootItems  returns a SimpleItems collection with zero objects. In this case, the Count property of the SimpleItems collection returns 0.

    Is this the case?

    Monday, December 16, 2013 9:53 PM
  • Eugene,

    IsConversationEnabled is true. I have not deleted any items in the test. I have created a series of test emails sent to another email account and replied to.

    Have you actually got this working without Cache?

    My code snippet below, the object conv is not null, but GetRootitems returns a collection always has zero objects and thus the subroutine EnumerateConversation does not get called when cached mode is switched off.

    But this all does work (on exactly the same email account) and on another computer where Cached mode is switched on.

    If you have some code that you have tested and works that would help a lot!

    Outlook.Folder folder = mailItem.Parent as Outlook.Folder;
    Outlook.Store store = folder.Store;
    if (store.IsConversationEnabled == true)
    {
       Outlook.Conversation conv = mailItem.GetConversation();
       if (conv != null)
       {
          Outlook.SimpleItems simpleItems = conv.GetRootItems();
          foreach (object item in simpleItems)
          {
             if (item is Outlook.MailItem)
             {
                 EnumerateConversation((Outlook.MailItem)item, conv);
             }
          }
       }
    }


    Andrew

    Monday, December 16, 2013 10:16 PM
  • Hi Andrew,

    I made a test for you in Outlook 2013.

    I'm facing the same issue as you mentioned.

    conv.GetRootItems()

    The code above can not get correct emails that are in the same conversation while using online mode.

    Thank you for your feedback.

    I am trying to involve someone familiar with this topic to further look at this issue.

    There might be some time delay. Your patience would be appreciative.

    Thanks again.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Tuesday, December 17, 2013 8:26 AM
    Moderator
  • Hi Andrew,

    Unfortunately I don't have an exchange account set up in my Outlook 2013. Anyway, it looks like there is a bug somewhere (Outlook or Exchange Server?). 

    @George, could you please let us know the results of your investigation?

    Tuesday, December 17, 2013 1:22 PM
  • Hi Eugene,

    If I replied any Email, the email I sent and the original email (It means root item from Conversation.GetRootItems Method) would be in the same conversation and the conversation contained conversation ID.

    According to my investigation, if the current Outlook mode was cached mode, the sample could find the original Email while using GetRootItems function.

    But after I changed to online mode,  GetRootItems function would not find the original Email.

    I found the conversation ID was same.

    So I think GetRootItems function doesn't return the same result between online mode and cached mode.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Tuesday, December 17, 2013 3:57 PM
    Moderator
  • George,

    I agree with your observations.

    Are you able to follow this up inside Microsoft as to whether this is a bug and any possible workaround?

    Thanks

    Andrew


    Andrew

    Tuesday, December 17, 2013 5:18 PM
  • Thank you for describing your tests in details. But what I mean is to let us know the results of the following:

    > I am trying to involve someone familiar with this topic to further look at this issue.

    Looking forward for the results.

    Tuesday, December 17, 2013 7:30 PM
  • Hi Andrew,

    >>Are you able to follow this up inside Microsoft as to whether this is a bug and any possible workaround? <<

    Yes, we will.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Wednesday, December 18, 2013 5:56 AM
    Moderator
  • Hi Andrew, 

    We are able to reproduce the issue with Outlook 2013 with your snippet and steps. This issue needs to be investigated further by product group to confirm whether this is an issue or by design. 

    As a next step, Please raise a paid support service request with us. If the support engineer determines that the issue is the result of a product issue the service request will be a no-charge case and you won't be charged.

    Please visit the below link to see the various paid support options that are available to better meet your needs. http://support.microsoft.com/default.aspx?id=fh;en-us;offerprophone

    Thanks. 

    Mahesh, Dev Messaging Team


    Tuesday, February 25, 2014 11:30 PM
  • In the end I could not wait and I found a workaround using Advanced Search which works well for me (although it was more complex to write). I will thus leave it to others to pay good money to report a bug to Microsoft!! (I am surprised you could not report it direct).

    Thanks for your efforts though.


    Andrew

    Wednesday, March 5, 2014 9:15 AM
  • Hi Andrew,

    Thanks for your response.

    I am glad that you were able to find a workaround to address the issue. It would be great if you could post a summary of the workaround used, along with the code snippet for benefit of the fellow forum audiences.

    Being a Microsoft Partner you could utilize one of the support incidents available to you as partner benefit. A normal incident is required for us to engage our Escalation to work out this issue with product team to sort out.  

    If we determine that the issue is the result of a product issue, then the service request will be a No-Charge case and you won't be charged.

    Thanks for your understanding and cooperation.

    Mahesh

    Friday, March 7, 2014 3:37 PM
  • I reported this to the product group.

    Ken Slovak MVP - Outlook

    Friday, March 7, 2014 4:17 PM
    Moderator
  • Thanks ken I do not have any free incidents so I would have had to get the credit card out even if it was later refunded. Mahesh I will try and extract and post up what I did but as it involves asynchronous calling of the advanced search it is not as simple as just copying and pasting some code.

    Andrew

    Friday, March 7, 2014 4:54 PM
  • Hi Ken,

    I ran into this issue last year just after the thread went up.  Have you heard anything back from Microsoft on it?  

    Thanks, Eric

    Thursday, September 18, 2014 6:19 PM
  • It's an open bug, OffBug 111272. However, it's not a high priority as no customers have been pushing for a fix.

    If anyone following this thread has an interest in having this fixed they would need to open an incident for that Office bug number, and make a business case for fixing the bug. Depending on how much of a business case is made, how many people push for  a fix, and how much trouble it will be to fix it would determine what happens.

    As there is a workaround using advanced search, I'm not real hopeful for a fix without others pushing for one.


    Ken Slovak MVP - Outlook

    Thursday, September 18, 2014 6:39 PM
    Moderator