Welcome to MSDN Blogs Sign in | Join | Help

Outlook without religion is lame

Random musings from a Outlook/SharePoint CPR SEE at Microsoft.
Important SharePoint updates on the web in time for the holidays

Just a quick hitter post today. I know that folks can get content links from any number of blogs, but I am way behind on my reading so here you go: 

The newest version of the MOSS SDK has been published! The new WSS SDK was published earlier in December as well, so grab them both.

Additionally, WSS2007 SP1 and MOSS2007 SP1 updates are covered in our new SP1 Center. This site rules, including deployment instructions for SP1 of each product, new whitepapers and links to other resources that you can use for your SharePoint deployment and development needs. One thing is lacking at the moment; the slipstream setup information for MOSS. We expect to see that VERY soon. And if you have applied any SPLock hot fixes, you don't want to apply SP1. Wait for the SP1 Rollup that should also be out soon. Take and test backups as always before applying any patch... And, finally always remember what a great resource our SharePoint TechNet and Search TechNet sites are!

Quote for today is from Bill Gates: We always overestimate the change that will occur in the next two years and underestimate the change that will occur in the next ten. Don't let yourself be lulled into inaction.

Issue - Programmatically posting WSS 2007 Discussion List Items shows sender as "System Account" in Outlook 2007
 

    I have been working through some hardware issues so Part two of my SPSreport blog continues to hold , but I wanted to take a few minutes to share some findings from a recent case with you.

     

    In this case, our customer is a programmer who sent in some code wherein he was programmatically setting the Email Sender and From field in WSS Discussion list items using OM code like this:

                  

                    SPListItem discussion = SPUtility.CreateNewDiscussion(list.Items, "subject");

                    discussion[SPBuiltInFieldId.Body] = "body";

                    discussion[SPBuiltInFieldId.Categories] = "category";

                    discussion[SPBuiltInFieldId.EmailSender] = "SenderEmail@email.com";

                    discussion[SPBuiltInFieldId.MessageId] = "Server Internet Message ID";

     

    As most of you know, I describe myself as a "code toddler"; I can read some code, I can write "Hello World" in a couple of languages. So I didn't know if I would be able to help our customer… but I knew I needed to try to do so. And I can understand that the code above should be setting values on specific columns and fields for a Discussion Board item. So off we went!

     

    The above code shows the proper person, as pushed from the OM into each of the appropriate custom columns in WSS's UI. But from the other side of this issue, after a sync to Outlook the From column is the Creator of the post as shown in the Outlook UI, i.e., the person that ran the code in SharePoint. In our case, this was the system account.

     

    In my initial research, I found a couple of OOB reasons why we might see the System Account as the sender. First, of course, is if the Creator of the post is the system account (never discount the obvious!). Second, if you see content in the document library that is assigned to the system account, it sometimes means that the document library has treated the incoming mail as an anonymous user due to the inability to resolve the name in the list of users with rights to submit mail to the list. To check to see if this was the cause of our issue, we checked to see if  the library was set to accept mail from all senders. You check this from WSS by browsing to the Discussion list, then choosing Settings > Discussion Board settings > Incoming Email Settings (and then navigate to the bottom of the page). Neither of these was the case when we checked them…

     

    To reset: the code makes the "poster" looks good on the Discussion Board list item, but on the sync to Outlook, the From field is changed to the WSS System Account. Nothing left to do but break out the troubleshooting tools! For this issue, my weapons of choice were netmon, Outlook Spy and source code for SharePoint and Outlook (sorry, no links for these :)). 

     

    I set up an OOB Discussion list (modified the theme, thus the difference in color), added a column (blue), started netmon and performed an Action > Sync to Outlook from the list.

     

    Distro List

     

    In reviewing the netmon of the trace, I see two properties in the 

    In reviewing the netmon of the trace, I see two properties in the XML going across the wire; these are ows_author and  ows_editor:

     

    0000  00 08 74 15 39 b5 00 07 b3 0f 59 ca 08 00 45 00   ..t.9.....Y...E.

    0010  03 80 77 26 40 00 37 32 84 9e 9d 36 1a 25 41 35   ..w&@.72...6.%A5

    0020  4b f7 f7 9c 09 4a 00 00 00 8a 00 50 11 b0 4d d7   K....J.....P..M.

    0030  80 23 a2 25 e3 b8 50 18 ff e9 d2 4f 00 00 33 34   .#.%..P....O..34

    0040  45 43 44 38 38 38 33 33 32 36 33 42 38 38 43 39   ECD88833263B88C9

    0050  43 34 42 26 67 74 3b 26 6c 74 3b 64 69 76 26 67   C4B><div&g

    0060  74 3b 26 6c 74 3b 2f 64 69 76 26 67 74 3b 26 6c   t;</div>&l

    0070  74 3b 2f 64 69 76 26 67 74 3b 27 20 6f 77 73 5f   t;/div>' ows_

    0080  54 68 72 65 61 64 49 6e 64 65 78 3d 27 30 78 30   ThreadIndex='0x0

    0090  31 43 39 45 46 30 35 34 31 43 41 46 34 45 37 35   1C9EF0541CAF4E75

    00a0  30 38 33 32 32 45 31 34 37 45 43 42 30 44 38 44   08322E147ECB0D8D

    00b0  41 36 34 45 34 43 35 36 39 34 43 27 20 6f 77 73   A64E4C5694C' ows

    00c0  5f 41 75 74 68 6f 72 3d 27 31 3b 23 53 63 6f 74   _Author='1;#Scot

    00d0  74 20 46 65 6c 6c 6d 61 6e 20 28 53 45 4b 49 57   t Fellman (SEKIW

    00e0  41 4b 45 29 2c 23 4e 4f 52 54 48 41 4d 45 52 49   AKE),#NORTHAMERI

    00f0  43 41 5c 73 66 65 6c 6c 6d 61 6e 2c 23 73 66 65   CA\sfellman,#sfe

    0100  6c 6c 6d 61 6e 40 6d 69 63 72 6f 73 6f 66 74 2e   llman@microsoft.

    0110  63 6f 6d 2c 23 73 66 65 6c 6c 6d 61 6e 40 6d 69   com,#sfellman@mi

    0120  63 72 6f 73 6f 66 74 2e 63 6f 6d 2c 23 53 63 6f   crosoft.com,#Sco

    0130  74 74 20 46 65 6c 6c 6d 61 6e 20 28 53 45 4b 49   tt Fellman (SEKI

    0140  57 41 4b 45 29 27 20 6f 77 73 5f 45 64 69 74 6f   WAKE)' ows_Edito

    0150  72 3d 27 31 3b 23 53 63 6f 74 74 20 46 65 6c 6c   r='1;#Scott Fell

    0160  6d 61 6e 20 28 53 45 4b 49 57 41 4b 45 29 2c 23   man (SEKIWAKE),#

    0170  4e 4f 52 54 48 41 4d 45 52 49 43 41 5c 73 66 65   NORTHAMERICA\sfe

    0180  6c 6c 6d 61 6e 2c 23 73 66 65 6c 6c 6d 61 6e 40   llman,#sfellman@

    0190  6d 69 63 72 6f 73 6f 66 74 2e 63 6f 6d 2c 23 73   microsoft.com,#s

    01a0  66 65 6c 6c 6d 61 6e 40 6d 69 63 72 6f 73 6f 66   fellman@microsof

    01b0  74 2e 63 6f 6d 2c 23 53 63 6f 74 74 20 46 65 6c   t.com,#Scott Fel

    01c0  6c 6d 61 6e 20 28 53 45 4b 49 57 41 4b 45 29 27   lman (SEKIWAKE)'

    01d0  20 6f 77 73 5f 50 65 72 6d 4d 61 73 6b 3d 27 30    ows_PermMask='0

    01e0  78 37 66 66 66 66 66 66 66 66 66 66 66 66 66 66   x7ffffffffffffff

    01f0  66 27 20 6f 77 73 5f 5f 4d 6f 64 65 72 61 74 69   f' ows__Moderati

    0200  6f 6e 53 74 61 74 75 73 3d 27 30 27 20 6f 77 73   onStatus='0' ows

    0210  5f 5f 4c 65 76 65 6c 3d 27 31 27 20 6f 77 73 5f   __Level='1' ows_

    0220  55 6e 69 71 75 65 49 64 3d 27 33 3b 23 7b 37 45   UniqueId='3;#{7E

    0230  41 34 43 38 41 44 2d 42 33 33 31 2d 34 36 44 46   A4C8AD-B331-46DF

    0240  2d 41 33 37 38 2d 42 37 35 36 46 31 34 41 38 35   -A378-B756F14A85

    0250  38 38 7d 27 20 6f 77 73 5f 46 53 4f 62 6a 54 79   88}' ows_FSObjTy

    0260  70 65 3d 27 33 3b 23 31 27 20 6f 77 73 5f 46 69   pe='3;#1' ows_Fi

    0270  6c 65 52 65 66 3d 27 33 3b 23 73 69 74 65 73 2f   leRef='3;#sites/

    0280  73 66 65 6c 6c 6d 61 6e 2f 4c 69 73 74 73 2f 44   sfellman/Lists/D

    0290  61 6c 6c 61 73 20 43 6f 77 62 6f 79 73 20 44 69   allas Cowboys Di

    02a0  73 63 75 73 73 69 6f 6e 2f 52 6f 6d 6f 20 72 6f   scussion/Romo ro

    02b0  63 6b 73 21 27 20 6f 77 73 5f 4d 65 74 61 49 6e   cks!' ows_MetaIn

    02c0  66 6f 5f 76 74 69 5f 76 65 72 73 69 6f 6e 68 69   fo_vti_versionhi

    02d0  73 74 6f 72 79 3d 27 62 66 65 32 66 37 36 34 66   story='bfe2f764f

    02e0  63 37 65 34 36 31 36 61 61 34 66 31 35 38 36 33   c7e4616aa4f15863

    02f0  37 31 35 38 61 34 63 3a 31 27 20 2f 3e 0d 0a 3c   7158a4c:1' />..<

    0300  2f 72 73 3a 64 61 74 61 3e 0d 0a 3c 2f 6c 69 73   /rs:data>..</lis

    0310  74 69 74 65 6d 73 3e 3c 2f 47 65 74 4c 69 73 74   titems></GetList

    0320  49 74 65 6d 43 68 61 6e 67 65 73 53 69 6e 63 65   ItemChangesSince

    0330  54 6f 6b 65 6e 52 65 73 75 6c 74 3e 3c 2f 47 65   TokenResult></Ge

    0340  74 4c 69 73 74 49 74 65 6d 43 68 61 6e 67 65 73   tListItemChanges

    0350  53 69 6e 63 65 54 6f 6b 65 6e 52 65 73 70 6f 6e   SinceTokenRespon

    0360  73 65 3e 3c 2f 73 6f 61 70 3a 42 6f 64 79 3e 3c   se></soap:Body><

    0370  2f 73 6f 61 70 3a 45 6e 76 65 6c 6f 70 65 3e 01   /soap:Envelope>.

    0380  01 06 78 2a 58 47 c6 34 92 6d f3 44 90 69         ..x*XG.4.m.D.i

     

    When I look at the same message as rendered in Outlook, and specifically the MAPI properties, with Outlooks Spy, I see this:

     

    Outlook item from Distro

     

    In all, I see 4 MAPI properties with my name on them. I then went to a source search on each term. Ows_editor yielded one hit in Outlook source; he is responsible for conversion of the incoming ows_editor parameter. The conversion goes to the MAPI properties of PR_LAST_MODIFIER_NAME and PR_SENT_REPRESENTING_NAME; this

     

    In all, I see 4 MAPI properties with my name on them. I then went to a source search on each term. Ows_editor yielded one hit in Outlook source; he is responsible for conversion of the incoming ows_editor parameter. The conversion goes to the MAPI properties of PR_LAST_MODIFIER_NAME and PR_SENT_REPRESENTING_NAME; this is hard-coded. Searching source for ows_author yields that "Created By" in WSS maps to PR_ORIGINAL_AUTHOR_NAME_W. This is exactly confirmed by the Outlook Spy results above. So these are hard coded and cannot be modified simply by stamping a WSS property on them programmatically.

     

    I then went through that same set of steps after adding a column called blue. When I viewed the trace, there was no ows_ property associated with the column that would be translatable by Outlook. So again, another thought, and another dead end.

     

    Then my customer asked a question - "How do I add users to SharePoint that aren't in my domain". Having worked with contact lists in SharePoint, I knew that this is very simple; you just need to add a contact name and email address; there is no requirement from SharePoint that your contact be from your domain! And yes, from other work with our STSADM command line Administrative tool, I also knew that SharePoint will also recognize a local account of the SharePoint box as a valid user as well. This last piece of information is just what my customer needed.

     

    With this piece of information, he wrote the code in WindowsAccount.cs, tied that in with WSSAccount.cs, and boom! A solution is now in place that is allowing him to use SharePoint and Outlook interoperability to programmatically list SharePoint posts and have them sync to Outlook as he wishes. This is a fantastic example of a code toddler like myself using wide product knowledge in the Microsoft Office Family and troubleshooting tools to help an experienced programmer build a custom business solution. Everyone wins when this kind of synergy happens!

     

    Sample code attached with customer's permission! He reviewed ths blog before publishing as well; his desire here is that someone else might benefit from our work. All typical disclaimers apply, the code is not supported by Microsoft, nor myself - use at your own risk/benefit, etc...

     

    Have a safe and happy holiday!

     

    Scott

     

     

     

     

All work and no play makes Scott a dull something something...

Props to The Shining and The Shinning for the title of this blog... 

It has been a busy time in Microsoft SharePoint CPR this summer! I would apologize for not blogging in the last four months, but I just can't do that since I have been working harder than a one-legged man in a butt kicking contest on SharePoint issues since I last put electrons to the web. My dad used to say "if you do what you love, you wll never work a day in your life". With SharePoint support at Microsoft, you can literally do what you love 24 hours a day for as many days in a row as you wish (or stay awake :)). And I do what I love...

I do have a couple of techncal blogs in the works, including Part Two of my "Why do you always ask for an SPS report..." series and another Outlook/SharePoint interop blog as well. But I wanted to blog this time about something non-technical - my role as a first time home-buyer. My wife and I are building our first home from the ground up and I am journaling this at none other than an anonymously accessible WSS2007 site provided by the fine folks in Office!

As to our new home, groundbreaking was October 12, and we expect to close on January 18, 2008. I will be in charge of decorating two rooms - the media center and my "man cave". Thanks to my teammate Dan Winter for telling me about the concept of the man cave, and for drilling down in the sacred nature of the man cave as well. If anyone ever thought we, as SharePoint engneers at Microsoft,  had no outside life, or weren't just regular folks working hard for a living like the rest of the world, or is interested in watching a first time home buyer document their experiences in that process, then I invite you to point your browser here and check it out!

 Finally, my quote for this blog. From Luke 12:34 - "For where your treasure is, there will your heart be also"

Part 1 - Scott, why do you always ask me to run SPSreport when I call in for help?
 

At Microsoft, our support process goes basically like this: Our customers research an issue and don't find any answer using all resources available (Knowledge Base, TechNet, MSDN, www.live.com search, WSS Technical Library, resource kit, etc...) that helps them resolve said issue. They then call in to support, give their name, phone number and other information to a Customer Service Rep, and finally get transferred to a Support Engineer with the incident number. Note: our SharePoint SEs do not operate from a script! They have freedom to troubleshoot an issue in any logical (or illogical) way that they choose. But I digress...

 

At this point, the customer describes the issue that they are seeing and hopefully then the engineer engages in scoping with the customer. Scoping is the narrowing of focus to single, indivisible issue. An example of where scoping during a call might go like this:

 

  • MS Customer: Our SharePoint search is broken
  • MS Engineer: Can you give me more detail on how search is broken? What symptoms do you see?
  • MS Customer: Our CEO types a keyword that I know exists in a document in our executive SharePoint document library into the search box at the top of the page and the document is not returned in the search results.
  • MS Engineer: Great, thanks for that description, that helps me narrow our scope a bit, but I need to ask you a couple of further questions
  • MS Customer: I am really in a hurry, can we start troubleshooting now? My boss is all over me to get this issue resolved.
  • MS Engineer: I understand that you are in a hurry, no one calls support to tell us what a great job the software is doing - that information usually goes to our sales team. Now; question one - what is the document type that is being searched?
  • MS Customer: It’s a PDF document called triple_secret_business_stuff.pdf. The size of the file is slightly over 100 meg.
  • MS Engineer: Great, can you tell me the URL of the document library hosting the doc lib?
  • MS customer: Yes, it's http://foo.bar.internal/sites/exec/forms/allitems.aspx

 

Now we have completely scoped the issue: An executive can't return search results from a document library using a keyword that is known to exist within that document. Specifically the document is a large PDF housed in what appears to be a simple WSS document library.

 

From the above description, we have a scope, but what should the troubleshooting look like from here? Well, in order to understand this, we need to know a few things:

 

  • How search works in SharePoint (architecture, components, flow between the components)
  • Special conditions that apply in this case that may differ from Microsoft/SharePoint default settings.
  • How permissions work in SharePoint sites

 

And we may need to know other things as well:

 

  • The topology of the farm where the issue is happening
  • Hardware/OS specifics of the machines in the farm (x64 or 32 bit, teamed NICs, etc...)
  • Version and build of SharePoint
  • Binaries for the various modules that are required to make search work properly
  • Events in the application event log or other logs that may help diagnose the point of failure
  • Special SharePoint diagnostic logging output (by default, c:\program files\common files\Microsoft shared\web server extensions\12\logs)

 

So how best to gather this data? There are several options. Back in the day (around 10 years ago), our troubleshooting options were pretty limited; screenshots over email or verbal description of each required piece of information. Not too fast these, and our example customer above would be feeling less and less joy with each passing question or email since his CEO is asking for status updates every 23.62 seconds. More recently, remoting technologies like Terminal Services and Microsoft Office LiveMeeting have made the data collection process quicker, but in a case like our example, the level of complexity, and therefore the number of things that may need to be reviewed is huge.

 

Enter the request for SPSreport from each machine in the farm as made by your friendly Microsoft Support Engineer.  SPSreport is a free download from http://www.codeplex.com/spsreport. From the description of the tool on that site:

 

The SPS Reporting Tool is utilized to gather detailed information regarding a systems current configuration. The data collected will assist the Microsoft Support Professional with fault isolation.

 

In part two of this web log, I will set up a farm with four SharePoint machines, a remote SQL 2005 server, an Executive team site and a large PDF. I will break the farm so that the symptom, "PDF not showing in search results" happens. I will break the farm in multiple ways, so that reviewing the entire troubleshooting/research process may take more than a single blog to cover completely. By tying the same symptom to various root causes, I hope to show the value of our Support Engineer's request for SPSreports; who knows - maybe by the end of this series our customers will do their research AND run the report for each machine before calling in for support.

 

See you soon!

 

ISSUE - Deleted SharePoint document library re-appears in Outlook 2007
 

Issue: After syncing a document library to Outlook, our user tried to deleted it. A short time later, it reappeared! In the example below,the folder of note is the “My Site – Private Documents” folder at the bottom of the Outlook folder list:

 

 

Technical Details: Upon reviewing the addition of the document library as an Outlook folder with various troubleshooting tools including filemon, regmon and netmon, we were able to discern very little in the way of odd looking data. After talking with the user, we found that he was a user of Outlook on several machines, and that he he used OWA and a Windows Mobile device to sync up as well.

 

Upon further investigation, we did find that there is a setting in Outlook’s UI which allows a list to be displayed on other machines. This setting is found in Outlook under Tools > Account Settings > SharePoint Lists:

 

 

When you access the tab (above) and double click the list, you will see the check box that says “Don’t display this list on other computers I use”. By default, this setting is disabled (unchecked) in Outlook. Therefore, if you access Outlook with multiple machines and choose to sync your SharePoints lists with Outlook 2007, you are almost guaranteed to hit this issue!!!

 

Resolution: We have provided workaround steps that our customer has accepted:

 

Launch Outlook                                                                                                     

Tools > Account Settings > SharePoint Lists tab

Double click the SharePoint list that you want to delete from Outlook

Check the box that says "Don't  display this list on other computers I use"  and select OK

This takes you back to the SharePoint Lists tab - click the list you wish to remove to highlight the list

Click the Remove Button above the list

Click Close

Close Outlook

Repeat the above steps on each machine where you use Outlook.

 

We requested a change to the Outlook Product team from the SharePoint support team within Microsoft so that the default behavior for "Don't display this list on other computers I use" is checked instead of unchecked. Unfortunately, we were told that making this change would break other Outlook mobility functionality so that our request had to be denied. Perhaps we have a customer out there who would be able to make a better business case for such a change...

 

Hope this helps!

ISSUE - Outlook/SharePoint Interop - Documents won't sync to Outlook

Issue: One of our customers was seeing an issue wherein site users migrated from v2 to v3 were unable to sync the contents of document folders hosted on the my site to their Outlook 2007 folder list. Interestingly, the folders containing the documents would sync as expected.

 

References:

 

- MOSS2007 My Site (personalization) - http://blogs.msdn.com/sharepoint/archive/2006/12/01/getting-started-with-personalization-in-moss-2007.aspx

- Content Types in SharePoint - http://msdn2.microsoft.com/en-us/library/ms452896.aspx and http://msdn2.microsoft.com/en-us/library/ms472236.aspx

- Outlook 2007 integration with V3 - http://download.microsoft.com/download/7/5/1/75168f8a-e2dc-479a-861c-afb3730c9ee6/OutlookSharePointIntegration_OV_E.ppt

- Netmon - http://blogs.technet.com/netmon/

 

Technical Details: We used netmon to determine that metadata about the documents was being transferred across the wire from MOSS to the Outlook client. In the packet below, note that the name of the document is test.docx (highlighted in green). Also note the Site Content type highlighted in yellow. I have snipped out the involved IP addresses.

 

No.     Time                       Source                Destination           Protocol Info

   5259 2007-05-15 12:50:13.329717 <snip>         <snip>          ESP      ESP (SPI=0x83312de5)

 

Frame 5259 (1510 bytes on wire, 1510 bytes captured)

    Arrival Time: May 15, 2007 12:50:13.329717000

    [Time delta from previous packet: 8.550813000 seconds]

    [Time since reference or first frame: 8.550813000 seconds]

    Frame Number: 5259

    Packet Length: 1510 bytes

    Capture Length: 1510 bytes

    [Frame is marked: False]

    [Protocols in frame: eth:ip:esp]

Ethernet II, Src: Cisco_0f:59:ca (00:07:b3:0f:59:ca), Dst: DellComp_15:39:b5 (00:08:74:15:39:b5)

    Destination: DellComp_15:39:b5 (00:08:74:15:39:b5)

        Address: DellComp_15:39:b5 (00:08:74:15:39:b5)

        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)

        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)

    Source: Cisco_0f:59:ca (00:07:b3:0f:59:ca)

        Address: Cisco_0f:59:ca (00:07:b3:0f:59:ca)

        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)

        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)

    Type: IP (0x0800)

<snip>

    Version: 4

    Header length: 20 bytes

    Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)

        0000 00.. = Differentiated Services Codepoint: Default (0x00)

        .... ..0. = ECN-Capable Transport (ECT): 0

        .... ...0 = ECN-CE: 0

    Total Length: 1496

    Identification: 0xc8aa (51370)

    Flags: 0x04 (Don't Fragment)

        0... = Reserved bit: Not set

        .1.. = Don't fragment: Set

        ..0. = More fragments: Not set

    Fragment offset: 0

    Time to live: 55

    Protocol: ESP (0x32)

    Header checksum: 0x03cd [correct]

        [Good: True]

        [Bad : False]

    Source: <snip>

    Destination: <snip>

Encapsulating Security Payload

    SPI: 0x83312de5

    Sequence: 353

 

0000  00 08 74 15 39 b5 00 07 b3 0f 59 ca 08 00 45 00   ..t.9.....Y...E.

0010  05 d8 c8 aa 40 00 37 32 03 cd 9d 36 47 1a 41 35   ....@.72...6G.A5

0020  4b f7 83 31 2d e5 00 00 01 61 00 50 11 7e 9e 10   K..1-....a.P.~..

0030  78 29 a2 f8 69 f2 50 10 ff ff ef a4 00 00 54 79   x)..i.P.......Ty

0040  70 65 3e 31 3c 2f 43 61 6c 65 6e 64 61 72 54 79   pe>1</CalendarTy

0050  70 65 3e 3c 54 69 6d 65 32 34 3e 46 61 6c 73 65   pe><Time24>False

0060  3c 2f 54 69 6d 65 32 34 3e 3c 54 69 6d 65 5a 6f   </Time24><TimeZo

0070  6e 65 3e 34 38 30 3c 2f 54 69 6d 65 5a 6f 6e 65   ne>480</TimeZone

0080  3e 3c 53 6f 72 74 4f 72 64 65 72 3e 32 30 37 30   ><SortOrder>2070

0090  3c 2f 53 6f 72 74 4f 72 64 65 72 3e 3c 50 72 65   </SortOrder><Pre

00a0  73 65 6e 63 65 3e 54 72 75 65 3c 2f 50 72 65 73   sence>True</Pres

00b0  65 6e 63 65 3e 3c 2f 52 65 67 69 6f 6e 61 6c 53   ence></RegionalS

00c0  65 74 74 69 6e 67 73 3e 3c 53 65 72 76 65 72 53   ettings><ServerS

00d0  65 74 74 69 6e 67 73 3e 3c 53 65 72 76 65 72 56   ettings><ServerV

00e0  65 72 73 69 6f 6e 3e 31 32 2e 30 2e 30 2e 34 35   ersion>12.0.0.45

00f0  31 38 3c 2f 53 65 72 76 65 72 56 65 72 73 69 6f   18</ServerVersio

0100  6e 3e 3c 52 65 63 79 63 6c 65 42 69 6e 45 6e 61   n><RecycleBinEna

0110  62 6c 65 64 3e 54 72 75 65 3c 2f 52 65 63 79 63   bled>True</Recyc

0120  6c 65 42 69 6e 45 6e 61 62 6c 65 64 3e 3c 53 65   leBinEnabled><Se

0130  72 76 65 72 52 65 6c 61 74 69 76 65 55 72 6c 3e   rverRelativeUrl>

0140  2f 73 69 74 65 73 2f 76 2d 64 61 73 68 65 65 3c   /sites/v-dashee<

0150  2f 53 65 72 76 65 72 52 65 6c 61 74 69 76 65 55   /ServerRelativeU

0160  72 6c 3e 3c 2f 53 65 72 76 65 72 53 65 74 74 69   rl></ServerSetti

0170  6e 67 73 3e 3c 2f 4c 69 73 74 3e 3c 2f 43 68 61   ngs></List></Cha

0180  6e 67 65 73 3e 0d 0a 3c 72 73 3a 64 61 74 61 20   nges>..<rs:data

0190  49 74 65 6d 43 6f 75 6e 74 3d 22 34 22 3e 0d 0a   ItemCount="4">..

01a0  20 20 20 3c 7a 3a 72 6f 77 20 6f 77 73 5f 49 44      <z:row ows_ID

01b0  3d 27 31 27 20 6f 77 73 5f 6f 77 73 68 69 64 64   ='1' ows_owshidd

01c0  65 6e 76 65 72 73 69 6f 6e 3d 27 32 27 20 6f 77   enversion='2' ow

01d0  73 5f 43 72 65 61 74 65 64 3d 27 32 30 30 37 2d   s_Created='2007-

01e0  30 31 2d 30 38 54 32 31 3a 32 39 3a 32 39 5a 27   01-08T21:29:29Z'

01f0  20 6f 77 73 5f 4d 6f 64 69 66 69 65 64 3d 27 32    ows_Modified='2

0200  30 30 37 2d 30 31 2d 30 38 54 32 31 3a 32 39 3a   007-01-08T21:29:

0210  34 33 5a 27 20 6f 77 73 5f 43 6f 6e 74 65 6e 74   43Z' ows_Content

0220  54 79 70 65 49 64 3d 27 30 78 30 30 44 36 36 35   TypeId='0x00D665

0230  36 32 44 42 44 31 42 35 33 30 34 44 39 35 33 42   62DBD1B5304D953B

0240  46 41 42 37 36 36 44 34 32 41 32 37 27 20 6f 77   FAB766D42A27' ow

0250  73 5f 46 69 6c 65 44 69 72 52 65 66 3d 27 31 3b   s_FileDirRef='1;

0260  23 73 69 74 65 73 2f 76 2d 64 61 73 68 65 65 2f   #sites/v-dashee/

0270  50 72 69 76 61 74 65 20 44 6f 63 75 6d 65 6e 74   Private Document

0280  73 27 20 6f 77 73 5f 45 6e 63 6f 64 65 64 41 62   s' ows_EncodedAb

0290  73 55 72 6c 3d 27 68 74 74 70 3a 2f 2f 6d 79 2f   sUrl='http://my/

02a0  73 69 74 65 73 2f 76 2d 64 61 73 68 65 65 2f 50   sites/v-dashee/P

02b0  72 69 76 61 74 65 25 32 30 44 6f 63 75 6d 65 6e   rivate%20Documen

02c0  74 73 2f 74 65 73 74 2e 64 6f 63 78 27 20 6f 77   ts/test.docx' ow

 

Root Cause: On a clean SharePoint install, the site content ID for a document starts with 0x0101. If it doesn’t, then Outlook will not respect the item to be synced as a document. As can be seen above, this content ID (0x00D65...) doesn’t indicate to Outlook that a document is being transferred (according to MSDN, this is not even a valid content id) in spite of the fact that the rest of the document’s metadata looks great!

 

Resolution: Upon further investigation, this assignment of a bad contnet ID was found to be an issue that only happened in Beta1 for V3. There are two workarounds:

 

  • Delete and recreate the user’s my site
  • The  second set of workaround steps are to add a new, valid content type to the list, change everything to be that content type, delete ‘Document’, Re-add ‘Document, change everything back to document, then delete the temporary content type you added.   Then, disconnect the list from Outlook and reconnect. HINT  - Bulk edit of site content types is achievable in the UI:

 

Starting at my site, I created a custom site content type called sfellmandoc.  I then created a custom datasheet view for my Shared Documents list that includes the site content type as a column as seen here:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Note that I changed the first item to the custom site content type sfellmandoc; this is mandatory to make the bulk edit. Then comes the UI magic:

 

  • Right click on the column header “Content Type” then choose Fill and Fill Down from the drop-down menu that appears.

 

The item that you changed in the first field will now be filled for all docs in the list:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Cool issue! Let me know what you think...

What's up with that Blog title Mr. Fellman?

Some of my great friends here at Microsoft are blogging on TechNet currently and have been doing so for years; I am a bit late getting into the game; but now I am here too. Both these friends and my friends outside of Microsoft will tell you that I can be a bit wacky at times. I am looking forward to sharing what I can publicly in my studies while researching SharePoint issues. I am fairly certain that I will present other random topics as well... but I digress. What is up with my Web Log's title?

One of my heros is the late Albert Einstein, and he, along with my late Dad  and the late Brockholst Barrett has taught me the values that have, for the most part, led me to where I am today - a Support Escalation Engineer on the Escalation Services (formerly CPR) team here at Microsoft. Among these values are those needed to do great support work:

  • Observation
  • Use of the Scientific Method
  • Continuing Education
  • Hard Work (Perspiration over Inspiration)
  • A diverse set of tools
  • A hopeful spirit

Einstein wrote a paper that was published in 'Nature' in 1940. In this he said that: "a person who is religiously enlightened appears to me to be one who has, to the best of his ability, liberated himself from the fetters of his selfish desires and is preoccupied with thoughts, feelings and aspirations to which he clings because of their super-personal value ... regardless of whether any attempt is made to unite this content with a Divine Being, for otherwise it would not be possible to count Buddha and Spinoza as religious personalities". In that same paper, he capsulized the more quotable, though perhaps not quite as weighty sentiment: "science without religion is lame, religion without science is blind".

My thoughts, feelings and aspirations to which I cling because of the super personal value that they hold to me are predicated on one cheif concern - that I can be of help to everyone I possibly can. My goal in life is simply to be helpful to others; when I do so everything else works out for me properly. So the title of my blog is to remind me of why I am doing the work that I do, to give props to Mr. Einstein and to let you know that I am indeed a bit wacky. I am looking forward to my next post already!

- Scott

Page view tracker