Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I need to connect Outlook to the External list and have to map its content type to the Office Item Type for that, but unfortunately I can't see it in SPD2013. Possibly it is because BDC model uses OData, which has limited support in SPD2013 (my question about it).

So, is it possible to map External Content Type to Office Item Type without using SharePoint Designer? If so, how can I do it?

Thank you in advance.

PS: SharePoint 2013 RTM.

share|improve this question

1 Answer 1

up vote 0 down vote accepted

Hurray! After three days of unsuccessful googling and asking this question everywhere :-) I tried to investigate it myself and at last, I have found a way to do it!

It appeared that it is quite easy to map it by hand. For that you have to make 2 changes in the BDC model file (xml with a .bdcm extension):

Add property with the name of Office item type to the entity

<Entities>
    <Entity Name="AbsenceCalendar" DefaultDisplayName="AbsenceCalendar"  Namespace="MyNameSpace" Version="1.0.0.0" EstimatedInstanceCount="2000">
<Properties>
    <Property Name="OutlookItemType" Type="System.String">Appointment</Property>
    ...
</Properties>
...

Map necessary fields to the Office Item Type. For instance, for mandatory fields of Appointment Office Item Type it could look like

<Method Name="ReadSpecificAbsenceCalendarEntity" DefaultDisplayName="Read Specific AbsenceCalendarEntity" IsStatic="false">    
......    
  <Parameter Name="@AbsenceCalendarEntity" Direction="Return">
     <TypeDescriptor Name="AbsenceCalendarEntity" DefaultDisplayName="AbsenceCalendarEntity" TypeName="Microsoft.BusinessData.Runtime.DynamicType">   
       <TypeDescriptors> 
           <TypeDescriptor Name="Title" DefaultDisplayName="Title" TypeName="System.String"> 
              <Properties>
                <Property Name="OfficeProperty" Type="System.String">Subject</Property>
              </Properties>
           </TypeDescriptor>
           <TypeDescriptor Name="StartDate" DefaultDisplayName="StartDate" TypeName="System.DateTime">
              <Properties>
                 <Property Name="OfficeProperty" Type="System.String">Start</Property>
               </Properties>
            </TypeDescriptor>
            <TypeDescriptor Name="EndDate" DefaultDisplayName="EndDate" TypeName="System.DateTime">
                <Properties>
                       <Property Name="OfficeProperty" Type="System.String">End</Property>
                 </Properties>
            </TypeDescriptor>
.......
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.