Modifying the Basic Mapping and Connector Configuration

This task is a step in Process of Creating Dynamic Picklists That Use a SalesBook Control.

In this topic you modify the basic mapping and connector configuration.

To modify the basic mapping and connector configuration

  1. Allow Siebel CRM Desktop to store values for the new fields you added in Modifying the Metadata. You add the following code to the Fulfillment Center object in the siebel_basic_mapping.xml file. This code maps telephone number fields to existing Outlook fields and creates a custom field for the Description field:

    <field id="Main Phone Number">
      <reader>
        <mapi_std>
          <mapi_tag id="0x3A080000"></mapi_tag>
          <convertor>
            <string/>
          </convertor>
        </mapi_std>
      </reader>
      <writer>
        <Outlook_std>
        <Outlook_field id="BusinessTelephoneNumber"></Outlook_field>
        <convertor>
          <string/>
        </convertor>
        </Outlook_std>
      </writer>
    </field>
    <field id="Main Fax Number">
      <reader>
        <mapi_std>
          <mapi_tag id="0x3A240000"></mapi_tag>
          <convertor>
            <string/>
          </convertor>
        </mapi_std>
      </reader>
      <writer>
        <Outlook_std>
        <Outlook_field id="BusinessFaxNumber"></Outlook_field>
        <convertor>
          <string/>
        </convertor>
        </Outlook_std>
      </writer>
    </field>
    <field id="Description">
      <reader>
        <mapi_user>
          <user_field id="sbl Description" ol_field_type="1"></user_field>
          <convertor>
            <string/>
          </convertor>
        </mapi_user>
      </reader>
      <writer>
        <Outlook_user>
          <user_field id="sbl Description" ol_field_type="1"></user_field>
        <convertor>
          <string/>
        </convertor>
        </Outlook_std>
      </writer>
    </field>
    
  2. Locate the following type definition for the opportunity object:

    <type id="Opportunity"
    
  3. Add the following code to the object you located in step 2:

    <field id="JVD Fulfillment Center Id">
      <reader>
        <mapi_user>
          <user_field id="sbl JVD Fulfillment Center ID" ol_field_type="1"></        
          user_field>
          <convertor>
            <binary_hexstring/>
          </convertor>
        </mapi_user>
      </reader>
      <writer>
        <multiwriter>
          <Outlook_user>
            <user_field id="sbl JVD Fulfillment Center ID" ol_field_type="1"></
                          user_field>
            <convertor>
              <binary_hexstring/>
            </convertor>
          </Outlook_user>
          <link_fields>
            <field from="Name" to="JVD Fulfillment Center"></field>
          </link_fields>
        </multiwriter>
      </writer>
    </field>
    

    The writer statement in this code includes a link field that allows Siebel CRM Desktop to get the value for the JVD Fulfillment Center field in the Opportunity object from the Name field of the Fulfillment Center object. This is similar to how Siebel CRM uses a pick map. If Siebel CRM gets values for multiple fields through a join, then you can add multiple fields in the link_fields section. These link_fields must exist in the basic mapping but you do not need to add them to the metadata.

  4. Use an XML editor open the connector_configuration.xml file.

  5. Locate the following definition for the Opportunity object:

    <type id="Opportunity"
    
  6. Add the following code to the definition you located in step 5:

    <link>JVD Fulfillment Center Id</link>
    

    This code specifies the JVD Fulfillment Center Id field as a link on the Opportunity object. In the metadata you specify that the JVD Fulfillment Center Id field is related to another object in step 5. Siebel CRM Desktop uses that relation during synchronization.