Oracle Siebel CRM On Demand 12 and 14
Oracle Siebel CRM On Demand accesses data through the OnDemand Web Services interface. This connector connects Oracle Siebel CRM On Demand data to virtually any flat file or database application. The integration platform supports Oracle Siebel CRM On Demand versions 12 and 14.
Note: Ensure that you have administrative rights to a particular parent or child entity by contacting your system administrator. If you still cannot access the entity, contact Oracle Siebel CRM On Demand Customer Care.
Oracle Siebel CRM On Demand 14
The Oracle Siebel CRM On Demand 14 connector provides all the functionality of the version 12 connector, as well as support for delete, insert, and update child entities, and session tokens.
This is a Multimode connector, that is, the integration platform allows for concurrent writes to multiple target tables (entities). Multimode connections allow you to perform create, read, update, and delete operations directly on a target database.
Other Oracle Connectors
You can connect to Oracle interfaces in the following ways:
• Oracle SQL Loader: Produce flat loader files that can be uploaded into an Oracle database using the Oracle SQL Loader utility. See
Oracle SQL Loader.
Schema Definitions
Schema definitions are read from a Siebel WSDL file. Record and field names and lengths are retrieved from the WSDL file with the following conventions:
• Entity is used as a record name. The first letter is upper case and the remainder is lower case.
• Child entity names are qualified with parent entities by using an underscore. In the following example, Activity is the parent entity, while Note is the child entity: Activity_Note
• All field names are lower case.
• If a field length is not found in the WSDL schema file definition, 30 is the default length.
• Custom fields are supported.
Supported Entities for Version 12
Oracle Siebel CRM On Demand 12 and 14 support Create, Retrieve, Update and Delete operations on the following OnDemand parent entities:
• Account
• Activity (Task, Appointment)
• Campaign
• CustomObject1
• CustomObject2
• Contact
• Dealer
• Household
• Lead
• Opportunity
• Portfolio
• ProductCategory
• ServiceRequest
• Solution
• Territory
• Vehicle
Oracle Siebel CRM On Demand 12 and 14 support Create, Retrieve, and Update operations on the following OnDemand parent entities:
• Product
• User
The CurrentUser entity supports the Retrieve (Query) operation.
The connector also supports the child entities associated with the above parent entities. For exceptions and notes about the above entities, see Connector-Specific Notes.
Supported Entities in Version 14
Oracle Siebel CRM On Demand 14 supports all of the above methods and entities, plus the following methods and entities:
• Child Entity Methods
– InsertChild
– UpdateChild
– DeleteChild
• Activity Entity: Uses new target namespaces urn:crmondemand/ws/activity/partner. The Activity entity can now be customized for both source and target. Version 12 can customize the target only.
• Activity Entities - Child
– SampleDropped
– ProductsDetailed
– Solution
• Account Entity - Child
– AccountContact
• Contact Entity - Child
– Account
– Asset
– Interests
– Campaign
• Opportunity Entity - Child
– Partner
– Competitor
– Team
In addition, the connectors support the parent entity Asset.
Logging SOAP Messages
On the system where the integration engine runs, you can set an environment variable called DJ_SODCRM_DEBUG to capture sent and received SOAP messages in text files. Assign the value msgs to the variable. When integrations run using a SOAP-based connection, messages are appended to the following files:
• sent.log – output messages
• recv.log – input messages
• test.log – other messages generated by the SOAP run-time environment
In a Windows system, these log files are written to InstallDir\Common. In Unix systems, they are written to the directory where the integration engine executes.
Connectivity Pointers
• Query statement syntax for this CRM connector is XML-based. For details on writing query statements, refer to the application documentation.
• Entity references in SQL statements are case sensitive and must begin with a capital letter. If the entity names are not specified correctly, connection to the server fails.
Using Session Tokens
Session tokens enable you to connect using a session token instead of logging in using a user name and password. This allows you to log in once by an external method, and reuse the session connection information for multiple instances or components. Reusing the session information is convenient and provides better performance than repeatedly sending a user ID and password information for each connection.
To obtain a session ID and server URL for a session token, use the Oracle Siebel Login Invoker. For information on using this component, see its help topic.
A session token consists of a session ID and server URL. The session token must be in the following format:
sid:sessionId:serverURL
where sessionID is a unique ID associated with your session and serverURL is the URL of the web service that processes subsequent URI calls. These values are returned in the loginResponse when you log in using user name and password.
Connector-Specific Notes
• Constraints Between Entities. Any underlying constraints between entities are detected in the connectors. For instance, if the system requires that a new Contact be created with a valid Account, then that Account must be passed to the Oracle Siebel CRM On Demand target connector either directly from the source connector or generated at execution time by customer-written script code.
• Activity Entity. (Version 12 only) This entity does not support query statements for custom fields since Siebel does not provide a partner WSDL for the entity.
• Product Entity. Delete actions against records in the Product entity are not supported.
• CurrentUser Entity. Delete actions against records in the CurrentUser entity are not supported.
• User Entity. Delete actions against records in the User entity are not supported.
• Custom Object 3. Not supported.
• Connection Times. When you are connecting to a large Source with many records, it may take a prolonged time to retrieve the records for viewing. If you open the Windows Task Manager, the Status may be "not responding." This is expected behavior. After the records have been read, the Status returns "running" and you can view the records.
• Timeout after inactivity. Your Siebel CRM session terminates after five minutes of inactivity. If you receive the following error, it indicates a session timeout:
Internal Error: Session is not available. Aborting.
• Before you attempt to continue, disconnect from the server and reconnect.
• Access Rights
– Records. You are only able to access or modify records in Oracle Siebel CRM On Demand that are available to the User ID that you are using. Depending upon the User ID that you are using and the security model of your Oracle Siebel CRM On Demand database, some records may only be visible to certain users, or may be read-only to certain users.
– Entities. Some Oracle Siebel CRM On Demand entities are only visible to a user name, or only modifiable to a user name, depending on the user permissions or on the features enabled for your database.
– Fields. Some fields in certain tables are read-only, or can only be set during insert, not during update operations. For example, the Last Modified Date and Last Modified By fields are read-only. They are implicitly set each time a user modifies a record. The integration platform can only reset owner ID fields on read-only tables during insert. To change an owner ID on existing records, you must transfer ownership within the Oracle Siebel CRM On Demand application.
Property Options
You can set the following source (S) and target (T) properties.
Manipulating Parent and Child Relationships
The following use cases illustrate using SQL statements, events, and actions to manipulate parent and child relationships.
Deleting, Inserting, or Updating Child Entities
For the integration platform to recognize child entities, the entity name in the related event action must include the parent record name plus ".child". You must first specify the parent entity, even though only the child entity is to be deleted.
The following example shows how to delete a child entity called Account_contact.
1. Design a map with Null as the source type, Oracle Siebel On Demand 14 as the target type, and connect to Oracle Siebel On Demand.
2. In a Source record event, create an AfterEveryRecord event and add the following events:
3. Clear the map for the Account record layout.
4. Specify a Delete Record action for the Account record layout and Account.child entity.
5. Clear the map for the Account_Contact record layout.
6. Use a Delete Record action to delete the Account_Contact record layout and the Account_Contact.child entity.
7. In the target pane, map the ID for Account called accountid.
8. Run the map, and note that the child entity Account_Contact is deleted.
Use the same syntax to insert or update child entities.
Data Types
The only data type supported for this connector is Text.