Oracle CRM On Demand Desktop Administration Guide > Customizing Oracle CRM On Demand Desktop > Process of Customizing Objects in Oracle CRM On Demand Desktop >

Defining the Custom Object


When you add a new object to Microsoft Outlook, you describe the structure of the object, create mapping between fields, lists, and so on. You make these customizations in the od_basic_mapping.xml file.

When adding a custom object from Oracle CRM On Demand Desktop, enter the custom object names in the XML file using the following structure:

  • For Custom Objects 1 -3, enter Custom Object X for the custom object name.

    Spaces are allowed for Custom Objects 1 -3 names.

  • For Custom Objects 4-x, enter CustomObjectX for the custom object name.

    Spaces are allowed for Custom Objects 4-x (picklist object) names in some instances. For more information, see Guidelines for Defining a List Object.

This task is a step in Process of Customizing Objects in Oracle CRM On Demand Desktop.

To define the custom object

  1. Use an XML editor to open the od_basic_mapping.xml file.

    For more information, see Files in the Customization Package.

  2. To define the name of the custom object, add the following sample code to the od_basic_mapping.xml file and modify the values as required:

    <type id="Activity" display_name="#obj_activity_plural" folder_type="10">
        <form message_class="IPM.Contact.OnDemand.Activity" icon="type_image:Event:16" large_icon="type_image:Event:32" display_name="Activity">OnDemand Activity</form>
    </type>

    If the object is stored in DB FACADE storage, then add the following XML code:

    <type id="Currency" icon="type_image:Currency:16"></type>

    For more information, see Example Code for the Activity Form.

  3. Define a set of fields for the custom object. The fields that you define for this example are described in the following table.
    Field Label
    Field Name
    Field Type

    Description

    Description

    Text

    Type

    Type

    Picklist

    Priority

    Priority

    Picklist

    Owner

    Primary Owner Id

    Lookup

    Account

    Account Id

    Lookup

    Opportunity

    Opportunity Id

    Lookup

    Contacts

    No field on this object

    MVG

    Employee

    No field on this object

    MVG

    Planned Start

    Planned

    datetime

    Planned Completion

    Planned Completion

    datetime

    Due

    Due

    datetime

    Status

    Status

    Picklist

    Comments

    Comment

    Textarea

    For more information, see Fields That Oracle CRM On Demand Desktop Uses for the Custom Object. To examine the code you must add for this step, see XML Code That Defines a Set of Custom Fields.

  4. Define intersection objects for many-to-many relationships.

    You do not define many-to-many relationships in Step 3. Because there is a many-to-many relationship between contacts and activities and between users and activities, you must define more objects that contain links to activity and contact, or activity and user. The remaining description for a many-to-many relationship is the same as for other objects where you specify the object name and object fields. This object can also contain a field that indicates if this intersection record is a primary or not a primary.

    To examine the code you must add for this step, see XML Code That Defines a Many-To-Many Relationship.

  5. Define the lists.

    For more information, see Guidelines for Defining a List Object. To examine the code that you must add for this step, see XML Code That Defines a List.

Example Code for the Activity Form

The example code defines Activity as the form to display for this object. The form layout is defined later when you define the user interface. In this example, you add an Activity object to Microsoft Outlook. In Oracle CRM On Demand, this object is named Action. To add this object to Microsoft Outlook, you modify the od_basic_mapping.xml file. You add the type element to describe the new object. You can also use the display_name attribute of the type element to define the folder name for the object in Microsoft Outlook. You can use the folder_type attribute to define the native Microsoft Outlook object that is the base for the custom object folder type.

Fields That Oracle CRM On Demand Desktop Uses for the Custom Object

The od_basic_mapping.xml file describes each of the fields for the custom object. Oracle CRM On Demand Desktop maps each field to a custom field, except for the Description and Comments fields:

  • Oracle CRM On Demand Desktop maps the Description field to the Last Name field, which is a native field in Microsoft Outlook.
  • Oracle CRM On Demand Desktop maps the Comment field to the Body field because Oracle CRM On Demand Desktop does not support the textarea field. Therefore, Oracle CRM On Demand Desktop uses the native Microsoft Outlook control that displays the Body field value.

Guidelines for Defining a List Object

Because the custom object stores items that the user chooses in a list, you describe the list field in the same way as a string field. Therefore, you must describe the object that stores all list values. Each list uses a separate object to store the values of the list. You must build the IDs for these objects in the following order:

  1. Object name, where the list is used, for example, Activity.
  2. Name of the field containing the list name, for example, Type field on Activity object.
  3. Name of the list, for example, Picklist.

Ensure the Type list on the Activity object includes the ID of the ActivityTypePicklist object.

NOTE:  There must not be any spaces between the three values. The following naming is incorrect: Activity TypePicklist. However, if a space is present inside an object or field's name, for example, Activity Timing object, or Measure Type field name, then these spaces are allowed in the picklist's name. For example, the following list object name is correct: Activity TimingMeasure TypePicklist

Defining a List Object

Complete the following procedure to define a list object.

To define a list object

  • You must define the following set of standard fields:
    • Label
    • Value (string)
    • SortOrder (integer)
    • IsDefault (bool)
Oracle CRM On Demand Desktop Administration Guide, Version 5.2 Copyright © 2017, Oracle and/or its affiliates. All rights reserved. Legal Notices.