Using the Oracle CRM On Demand Source Component

The Oracle CRM On Demand Source Component is an SSIS data flow pipeline component that can be used to read/retrieve data from Oracle CRM On Demand.

The component includes the following configuration pages:

  • General
  • Columns

General Page

The General page allows you to configure various options that will help you retrieve the desired data from Oracle CRM On Demand.

Oracle CRM Source Editor

Connection Manager

The source component requires an active web service connection to Oracle CRM On Demand. The Connection Manager drop-down will show a list of all Oracle CRM On Demand Connection Managers that have been created in the current SSIS package.

Batch Size

A maximum limitation of 100 records per web service result is set by Oracle CRM On Demand. You can change the batch size to suit your preferences.

Source WSDL

The Source WSDL drop-down lists all available WSDL files. The folder path that is read is determined by the registry key: HKEY_LOCAL_MACHINE\SOFTWARE\KingswaySoft\SSIS Integration Toolkit for Oracle CRM On Demand\WSDLDirectory. If the registry key does not exist, the default folder path ([path to Program Files ]\KingswaySoft\SSIS Integration Toolkit for Oracle CRM On Demand\Schemas) will be used. By selecting a value from this drop-down, the component will attempt to read the metadata contained within the selected WSDL file. Additional WSDL files can be obtained from the Oracle CRM On Demand -> Admin -> Web Services Administration page.

Source Object

This text box is a read-only field that displays the object detected from the WSDL file loaded from the Source Object WSDL drop-down.

Child Object

This drop-down list specifies the child object to read from. By default, it is left blank, meaning only parent fields can be read. When a child object is selected, another searchspec textbox will be made available along with another table in the "Columns" page. This allows reading and filtering of both parent and child fields.

Output Timezone (since v4.0)

The output timezone setting determines what format any datetime values read from Oracle should be converted to. There are three options available.

  • Timezone of Connection User: Any datetime values will be converted to the timezone of the connection user based on the user's timezone setting in Oracle CRM On Demand.
  • UTC
  • Local System Timezone (Default): Any datetime values will be converted to the local system time where the package is run.
(Parent/Child) Searchspec Filter

The Searchspec Filter allows you to specify a searchspec query to help filter for the desired records. When a child object is selected, another Searchspec field will be made available allowing you to specify a searchspec query for both the parent and the child object. Please read Oracle Documentation for further details on how to specify a searchspec query.

Refresh Component Button

Clicking the Refresh Component button causes the component to retrieve the latest metadata and update each field to its most recent metadata.

Expression fx Icon

Clicking the blue fx icon launches the SSIS Expression Editor to enable dynamic updates of the property at run time.

Generate Documentation Icon

Clicking the Generate Documentation icon generates a Word document that describes the component's metadata including relevant mapping, and so on.

Columns Page

The Columns page shows you all available attributes from the object that you specified on the General page. You may indicate which attributes to include in your source component by checking or unchecking the checkbox next to each attribute. In conjunction with the searchspec filter from the General page, each attribute has a Filter column where you can enter search criteria for the attribute.

Oracle CRM Source Editor

Child Objects in the Source Component

When a child is selected in the "Child Object" drop-down list on the "General" page, another table is made available here on the "Columns" page. This allows for the selection and filtering of both parent and child fields. Even though there are two tables, there is still only one output; this just makes it easier to select/deselect child and parent fields separately. One thing to note as well is that there are fields that exist in both tables. This is a problem because we only have one output. However, if you look at the output columns in the advanced editor, you will notice all of the child fields are prefixed with the child name (eg, TeamData).

Data Filtering in the Source Component

There are 2 methods for filtering for the desired data in the Oracle CRM On Demand Source Component. You may add filter criteria in the Searchspec Filter text box, and/or add filtering for each individual field. The 2 methods work together to filter for records that match both filtering techniques.

Example for the Searchspec Filter
In the above screenshot for the source component, you can see a filter on the CreatedDate column to filter for records created between the dates 2014-08-01 to 2014-08-17. The general structure for a filter is: [field name] {operator} {your filter value}. E.g. [CreatedDate] > '2010-01-01T00:00:00' You can also search on multiple fields by using an AND/OR E.g. ([CreatedDate] > '2010-01-01T00:00:00') AND ([AccountName] = 'Acme Company')
Example for the Field-specific filtering
Filtering applied on the field level will only apply to that particular field. The general structure for a filter is: {operator} '{your filter value}'. E.g., To look for all AccountName that begins with the value 'Test' using the following filter: LIKE 'Test*'.
Reference
The best place to find further information on filtering is to refer to the Oracle Documentation.