Configuring the connector

The following sections describe how to configure the connector:

Common configuration tasks

This section contains some general points to consider to ensure a successful implementation.

Setting the -t option

Since the connector is single threaded, you must set the -t option in the connector shortcut before running the connector.

Using the Row_Id attribute

In order for the connector to insert data into the Siebel database, the Row_Id attribute must be in the CW_Siebel business object. Also, in order to perform an update or delete you must do one of the following:

Note:
For this option to work, you must hard code the attribute names into the collaboration. This adds overhead and another element to consider when modifying the system.

Multi-value links, multi-value fields, multi-value groups, and picklists

Before attempting to access Siebel with the connector, ensure that all multi-value links, multi-value fields, multi-value groups and picklists exist in Siebel as defined in the CW_Siebel business objects.

A multi-value link exists between two Siebel business components that have a one-to-many or many-to-many relationship and reside in the same screen or applet. However, the connector assumes that a multi-value link exists between any two business components that have a one-to-many or a many-to-many relationship, regardless of whether they reside in the same screen or applet.

Processing multiple events

If the connector must process 5000 or more multiple events, use the RefreshLogonCycle connector property. This enables the connector to disconnect and reconnect to the client after processing a specified number of events. For more information, see Connector configuration properties

Changes to the Siebel application

The connector is dependent on the Siebel.srf file in the objects directory. Therefore, when changes are made in the Siebel application, the Siebel.srf file must be replaced with the updated version.

CW Event Manager

CW Event Manager is a view in the CWEvents screen. It is used to re-queue events from the CW archive table to the CW event table for reprocessing by the connector. CW Event Manager can also be used to delete processed events from the CW archive table. Events that have been re-queued will have "Requeued Event" added to their description in the CW archive and CW event tables. This makes it easier to identify and delete duplicate events from the CW archive table.

This view provides two options. After entering the event criteria in the appropriate fields, you can either delete or re-queue the selected events. If you are using the start time and end time fields to select events, use the format: mm/dd/yy hh:mm:ss AM/PM. For example 3/28/01 9:45:32 PM. CW Event Manager converts this to military time.

CW Event Manager is script-dependent. You must apply the appropriate CW Event Manager patch depending on whether you are using VB or e-script. After applying the patch, perform the following:

  1. In Siebel Tools, add the CW Event Manager business component to the CW Events business object.
  2. Add the CW Event Manager screen view to the CW Events screen. Enter CW Event Manager in the Menu Text and View Bar Text fields.
  3. In the Siebel Application, create the new view named CW Event Manager.
  4. Add the view to CW Responsibilities and Admin Responsibilities.

Performance

The Siebel dll avoids performance overhead in retrieving and comparing the application image with the sent business object. The child verb must be set manually when SkipRetrieve is set to true, otherwise the children will inherit the parent verb; because there is no retrieve, that might not be the result needed.

SkipRetrieve is an ASI, which can have values of true or false. This new ASI can be used only at the BC Parent level, which is immediately inside the parent business object. When this ASI is being used, the name of the business object must be set after nm= and must be separated from SkipRetrieve ASI by a semicolon.

For example, in Siebel_BCAccount the ASI will be nm=Account;SkipRetrieve=true.

Configuring the event delivery mechanism

You can configure the following behaviors of the event delivery mechanism:

Processing multiple events per poll

The connector can be configured to retrieve a specified number of Siebel_BC_CWEvent business objects and process them in a single poll. Processing multiple events per poll can improve performance when the application generates large numbers of events.

The number of events per poll is specified using application-specific information on the Retrieve verb of the Siebel_BC_CWEvent business object. You can change the application-specific information for this business object using the System Manager just as you would for any application-specific business object.

To specify the number of events processed on each poll, use the attribute-value pair max=n. For example, to specify that the connector retrieve 25 event business objects per poll, use the following application-specific information on the Retrieve verb:

[Verb]
Name = Retrieve
AppSpecificInfo =max=25 
[End] 

Note:
If you do not set a maximum number of events per poll, the connector retrieves all events. This may cause system performance problems. Set this value based on the maximum number of events the connector can retrieve without impeding system performance. The default value is 25 events per poll.

Assigning priority to events

You can assign priority values to events to specify the order in which the connector selects events to process. Event priority enables the connector poll method to handle situations where the number of events in the event store exceeds the maximum number of events the connector retrieves in a single poll.

Event priority is set in the Siebel VB script for each business component. By default, priority for all business objects is set to 1, and events are sorted by creation date.

To enable sorting by priority, first edit the VB scripts to change the priority to a value between 0 (highest) and 5 (lowest). Then, add the name-value pair sort=Priority, EventTs(ASCENDING) to the application-specific information of the Retrieve verb on the Siebel_BC_CWEvent object. This text specifies that events are sorted first by priority and then by creation date in ascending order.

Always specify a maximum number of events to retrieve per poll. If you also specify sorting by priority, the maximum events attribute-value pair precedes the priority attribute-value pair. For example, to specify sorting by priority, use the following application-specific information on the Retrieve verb of the Siebel_BC_CWEvent object:

[Verb] 
Name = Retrieve
AppSpecificInfo =max=25;sort=Priority, EventTs(ASCENDING) 
[End] 

If sort=Priority is not specified, sorting defaults to the creation date, and the priority is not checked.

Setting multiple attributes in an event business object

You can set one or more attributes in a subscription delivery business object by specifying them in the Object Key field of a Siebel VB script. If the total length of the attributes is greater than the length of the Object Key field (80 characters), use the Additional Object Key field which, supports up to 250 characters. Object Key is a required value. Therefore, when using the Additional Object Key field, you must set a dummy value for the Object Key field.

To set the Additional Object Key field:

  1. In the Siebel_BC_CWEvent and Siebel_BC_CWArchive objects, set the Application-Specific Info for Object Key to Additional Object Key.
  2. In Siebel_BC_CWEvent, create a dummy key attribute with the AppSpecificInfo property set to Object Key.
  3. Add a non-key attribute with the same name as the dummy key to Siebel_BC_CWArchive. Make sure that the order of the Object Key and dummy key attributes is the same in both objects.
  4. Set the Additional Object Key in the Siebel VB scripts for all objects.
  5. Hard-code Object Key with a dummy value in the Siebel VB scripts for all objects. This is necessary because Object Key is a required value in Siebel.

In the script, you can specify an attribute and value using a name-value pair, or using a fully qualified path beginning with a forward slash (/). The syntax of a composite key is:

/attribute/[/attribute]=value[;/attribute[/attribute]=value]

You can also specify only the attribute value; in this case, the first key of the first child business object attribute is set.

For example, a VB script that sets only a single key, such as ContactId in the Siebel_BCContact business object, might include these lines:

RowId=GetFieldValue("Id")
Set EventBC = EventBO.GetBusComp("CW Events")
EventBC.SetFieldValue "Object Key" , RowId

A script that sets keys for the ContactId and AccountId attributes in the Siebel_BCContact business object might include these lines:

RowId = GetFieldValue("Id")
Account = GetFieldValue ("Account Id")
Key = "/Siebel_BCContact/ContactId=" + RowId +
";/Siebel_BCContact/AccountId=" + Account
EventBC = EventBO.GetBusComp("CW Events")
EventBC.SetFieldValue "Object Key" , Key

Note:
This sample code is based on the structure of the standard Siebel_BOContact business object.

Installing multiple connectors

To streamline the processing of certain types of Siebel events, you can install and configure multiple connectors on a Siebel client and configure each connector to handle specific business objects. Because multiple connectors can access the same Siebel application, each connector can process events of a given type and pass them to the integration broker. This can increase throughput and speed the transfer of data into and out of the Siebel application.

To install and set up multiple connectors, follow these steps:

  1. For each additional connector that you want to run, copy and paste the existing Siebel folder in %ProductDir%\connectors to create a new folder. Rename the folder appropriately. For example, Siebel1, Siebel2, and so on.
  2. Rename the connector DLL (siebel2000.dll) in each new folder using the same convention. For example, in the Siebel2 folder, name the connector DLL siebel2.dll.
  3. For each new connector, make a copy of the connector definition file, CN_Siebel2000.txt, in the %ProductDir%\repository\Siebel2000 directory, and name it with the new connector name. For example, CN_Siebel1.txt.
  4. Use Business Object Designer to copy the business object definition into your repository.
    Note:
    Alternatively, if InterChange Server (ICS) is the integration broker, you can use the repos_copy command to load the definition into the repository; if WebSphere MQ Integrator Broker is the integration broker, you can use a system command to copy the file into the repository.
  5. Using copy and paste, create new copies of the connector in the System Manager. Apply the same naming convention used for the folder and the .dll file. For example, Siebel1Connector.
  6. In the System Manager, set the ApplicationName connector configuration property for each new connector to the new name. For example, Siebel2Connector.
  7. Set the ConnectorId property in each connector to the number of the connector. For example, set the ConnectorId property in Siebel1Connector to 1. The value of ConnectorId must be an integer. For more information see Connector configuration properties
  8. Set the SiebelConfigFile property so that all connectors poll the same Siebel application for events.
  9. In the System Manager, specify the supported business objects for each connector.
  10. Assign collaborations to each connector. If collaborations have already been set up, you may need to recreate them.
  11. Copy the connector shortcut for each of the new connectors and change the name of each shortcut to the name of the corresponding connector.

    Each connector picks up events that match its ConnectorId property value. If you do not assign a value to the ConnectorId property, the connector picks up all events.

    Note:
    If your site is licensed to run multiple InterChange Servers, you can provide different ConnectorId configuration properties for the connectors running on different InterChange Servers.
  12. Modify the Siebel Visual Basic scripts for the business objects supported by the new connectors. Edit the ConnectorId field in each script to point to the appropriate connector ID. For example, if the Siebel2 connector polls the Account business object, set the ConnectorId field in Account to 2 by adding the following code to the Visual Basic script:
    .ActivateField "Connector Id"
    .SetFieldValue "Connector Id", "2" 
    

Copyright IBM Corp. 1997, 2004