none
Is it possible to map External Content Type to Office Item Type without using SharePoint Designer? RRS feed

  • Question

  • 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 probably 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.

    Regards, Michael (http://sp2013-blog.com)

    • Edited by MikhailSP Saturday, March 9, 2013 10:41 PM
    Wednesday, November 28, 2012 1:08 PM

Answers

  •    

    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>   

    .......

    Hope it will help somebody else.

    Regards, Michael (http://sp2013-blog.com)

    ________________________________________________________________
    Please press the "Vote As Helpful" buttons if appropriate.





    • Marked as answer by MikhailSP Thursday, November 29, 2012 3:34 PM
    • Edited by MikhailSP Saturday, March 9, 2013 10:41 PM
    Thursday, November 29, 2012 3:33 PM