Code That Maps a Custom Object

You can map a field of a Siebel CRM object to the Outlook field or to a custom Siebel CRM Desktop field. For example, you can do the following:

  • Map the Name field in Siebel CRM to the LastName field in Outlook

  • Map the mapLocation field in Outlook to the Location field in Siebel CRM

To map objects, you add the following code to the siebel_basic_mapping.xml file:

<type id="ChannelPartner" hidden_folder="true" folder_type="10" 
display_name="CHPT">
  <form message_class="IPM.Contact.SBL.Channel_Partner" display_name="Channel 
Partner" icon="type_image:User:16"></form>
  <field id="Name">
  <reader>
    <mapi_std>
      <mapi_tag id="0x3A110000"></mapi_tag>
      <convertor><string/></convertor>
    </mapi_std> 
  </reader>
  <writer>
    <Outlook_std>
      <Outlook_field id="LastName"></Outlook_field>
      <convertor><string/></convertor>
    </Outlook_std> 
  </writer>
  <reader>
    <mapi_std>
      <mapi_tag id="0x3A060000"></mapi_tag>
      <convertor><string/></convertor>
    </mapi_std>
  </reader>
  <writer>
    <Outlook_std>
      <Outlook_field id="FirstName"></Outlook_field>
      <convertor><string/></convertor>
    </Outlook_std>
  </writer>
    </field>
      <field id="Location">
  <reader>
    <mapi_user> 
      <user_field id="sbl Location" ol_field_type="1"></user_field>
      <convertor><string/></convertor>
    </mapi_user>
  </reader>
  <writer>
    <Outlook_user>
      <user_field id="sbl Location" ol_field_type="1"></user_field>
      <convertor><string/></convertor>
    </Outlook_user>
  </writer>
  </field>
</type>

Note the following requirements:

  • The value for the type id tag in the siebel_basic_mapping.xml file must equal the value in the TypeId object in the siebel_meta_info.xml file.

  • If you define a new type, then you must include the form tag. The forms_xx.xml file includes the form definition. The value for the form tag must equal the form id attribute in the form definition. This example does not require a form, so the form tag is empty. Even if your example does not require a form, to uniquely identify a type, you must define a value for the mesage_class attribute. This value must start with the following code:

IPM.Contact.SBL