9Running Siebel Assignment Manager

Preparing to Run Siebel Assignment Manager

Siebel Assignment Manager obtains information required for operation from the following sources:

  • The assignment rules and criteria, as well as employees, positions, and organizations, that are read from the rule cache file.

  • The properties of assignment objects and their property values, the list of values for the picklists, and assignment criteria, attributes, workflow policy components, workflow policy component columns, and other repository information from the database.

  • Input parameters for the server component.

Note: Assignment Manager uses many Siebel Server resources. It is recommended that you monitor the Siebel Servers whenever Assignment Manager is invoked, especially if you run multiple instances at the same time. For more information about running multiple instances of Assignment Manager, see About Running Multiple Instances of Siebel Assignment Manager in Batch Mode.

Before running Assignment Manager, you must perform several preparatory tasks. These tasks include:

  1. Assigning rules. See Process of Defining Assignment Rules

  2. Updating Your Siebel Assignment Manager Deployment with New Configurations

  3. Checking the State of Siebel Assignment Manager and Server Request Broker Components

  4. Modifying the Siebel Assignment Manager Component Parameters

  5. Setting the Log Level of Siebel Assignment Manager Events

In addition to the preparatory tasks, some server administration requirements must be considered before running Assignment Manager. For a discussion of these requirements, see the following topics:

    Checking the State of Siebel Assignment Manager and Server Request Broker Components

    This topic is part of Preparing to Run Siebel Assignment Manager.

    Before running Siebel Assignment Manager components, you must first make sure that the Siebel Server can start one or more multithreaded components by checking the Assignment Manager and Server Request Broker server components.

    To check the state of the Assignment Manager and Server Request Broker components

    1. Navigate to the Administration - Server Management screen, and then the Servers view.

    2. In the Component Groups list, query for the Assignment Manager and Server Request Broker components, and check the Server field to verify that these components are running on the appropriate Siebel Server.

      Tip: The Server field might be a hidden column in this list. You can use the Columns Displayed feature to make fields visible. For more information, see Siebel Fundamentals Guide.
    3. In the State field in the Component Groups list, verify the state of each of the following components:

      • Assignment Manager component is Online.

      • Server Request Broker component is Running.

      Note: If these components are not in their required state, then check the log file for errors, and then make the necessary corrections.

      Modifying the Siebel Assignment Manager Component Parameters

      This topic is part of Preparing to Run Siebel Assignment Manager.

      Before running Siebel Assignment Manager components, configure the Assignment Manager (AsgnSrvr) and Batch Assignment (AsgnBatch) components to enhance their performance for your implementation by modifying the appropriate parameters.

      For more information about configuring parameters for server components, see Siebel System Administration Guide.

      The following table lists the component parameters used by Assignment Manager that you can change.

      To modify Assignment Manager component parameters

      1. Navigate to the Administration - Server Configuration screen, and then Servers.

      2. In the Servers list, select your server (if more than one server appears) and make sure that the Assignment Management component group is enabled on that server.

      3. In the Components list for the current server, select one of the following:

        • Assignment Manager (AsgnSrvr)

        • Batch Assignment (AsgnBatch)

      4. Click the Parameters tab (if it is not already active).

      5. In the Parameters list, select the parameters of interest, and adjust the values as required by your implementation to achieve optimal performance.

      6. Make sure that the MinMTServers parameter is set to a current value greater than 0. If necessary, then change the value of MinMTServers. If you change the value for MinMTServers or any other parameters that require server restart, then also restart the Siebel Server.

        Note: Updated values for most of the parameters listed the following table take effect when assignment rules are released and the rulecache.dat file is updated, or when the component is restarted. (Updated values also take effect if the Siebel Server is restarted.)

      If you restarted the Siebel Server, then the specified number of Assignment Manager components will be started, using the value of MinMTServers. For more information about MinMTServers, see Additional Information About Assignment Manager and Batch Assignment Component Parameters. For more information about starting and restarting the Siebel Server, see Siebel System Administration Guide.

      The following table lists the component parameters used by Assignment Manager that you can change. Because many of the parameters function in the same manner for both server components, the parameters for each component are combined into one table.
      Note: Some parameters in the table are identified as advanced. In the GUI, click the Advanced button in the Component Parameters list to display these parameters for the applicable component.

      Parameter Name

      Parameter Alias

      Asgn Srvr

      Batch Asgn

      Description

      Active Employee Where Clause

      ActiveEmpLOVCode

      Yes

      Yes

      Used to exclude inactive employees from assignment by specifying an SQL WHERE clause.

      Note: You must set the same values for the ActiveEmpLOVCode and ActivePosWhereClause parameters consistently among AsgnSrvr, AsgnBatch, and the workflow policy program (if used). Otherwise, you might encounter unexpected results.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Active Position Where Clause

      ActivePosWhereClause

      Yes

      Yes

      Used to exclude inactive positions from assignment by specifying an SQL WHERE clause.

      Note: You must set the same values for the ActiveEmpLOVCode and ActivePosWhereClause parameters consistently among AsgnSrvr, AsgnBatch, and the workflow policy program (if used). Otherwise, you might encounter unexpected results.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Actual Assignment Key

      ActualAsgnKey

      Yes

      Yes

      The key value used when Assignment Manager is running in delta reporting mode to identify candidates by this key value in the actual result table.

      For more information about delta reporting mode, see About Running Assignment Manager in Reporting Mode.

      Add Scores across Rules

      AddScores

      Yes

      Yes

      If TRUE, then scores for the same candidate are added across rules.

      The default value is FALSE.

      See Configuring Siebel Assignment Manager to Add Scores Across Rules.

      Allow Duplicate Positions

      AllowDupPostn

      Yes

      Yes

      Allows assignment of duplicate positions to the team.

      This is an advanced parameter.

      The default value is FALSE.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Assignment History Cache Size

      CacheSize

      Yes

      No

      Indicates the assignment history cache size, in kilobytes.

      This is an advanced parameter.

      The default value is 300.

      Assignment Key

      AsgnKey

      Yes

      Yes

      Indicates the rule set used for key-based routing, that is, the row ID of the assignment rule group that is associated with the rules that you want to evaluate. The default value of the parameter is All AM Rule Set, in which case all active rules are evaluated.

      Assignment Mode

      AsgnMode

      Yes

      Yes

      Indicates the assignment mode (Match, Assign, MatchAssign, Denorm, or Cancel).

      The default value is MatchAssign.

      For more information about AsgnMode, see About Using External Components to Invoke Siebel Assignment Manager.

      Assignment Object Name

      AsgnObjName

      Yes

      Yes

      Indicates the name of the assignment object.

      Batch Size

      BatchSize

      Yes

      Yes

      Indicates the number of objects to be assigned before committing the transaction.

      The default value is 100.

      Check If CandidateActive

      CheckIfCandidateActive

      Yes

      Yes

      Determines whether Assignment Manager checks a candidate's activation and expiration date during evaluation of every rule.

      The default value is FALSE.

      Check version iterations

      CheckVerIter

      Yes

      No

      Defines the frequency of time Assignment Manager checks whether the rule version has changed. This value also represents the time lag before the new rules take effect, after the Release button has been clicked.

      Assignment Manager checks the version from the database every N iterations. One integer value equals ten seconds (minimum value is 1).

      This is an advanced parameter.

      The default value is 6.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Copy Candidate Specific Data

      CopyCandSpecData

      Yes

      Yes

      Indicates whether Assignment Manager copies attribute values from dynamic candidate to the result table.

      The default value is No.

      Copy Person Specific Data

      CopyPersonSpecData

      Yes

      Yes

      Indicates whether Assignment Manager copies attribute values from dynamic candidates to the result table.

      The default value is No.

      Default Tasks

      DfltTasks

      Yes

      Yes

      Indicates the default number of service tasks to start (server-mode only).

      This is an advanced parameter.

      Note: You must restart the component or server for a new value to take effect.

      The default value is 0.

      Dynamic Candidate Parameters

      DynCandParam

      Yes

      Yes

      Semicolon-separated parameter, whose value pairs are used to substitute the variables in the Dynamic Candidate definitions in Siebel Tools.

      Format =

      Name of Param1:Value for param1; Name of Param2:Value for param2; and so on.

      Ignore Calendar Criteria

      IgnoreCalCrit

      Yes

      Yes

      Allows a match to be made without taking into account calendar availability.

      The default value is FALSE.

      Ignore assignment rule cache

      IgnoreCache

      Yes

      Yes

      Indicates whether Assignment Manager ignores the assignment rule cache and reads from the database.

      This is an advanced parameter.

      The default value is FALSE.

      Independent Rule Group Cache

      IndepRuleGroupCache

      No

      Yes

      If TRUE, then the Batch Assignment component maintains a separate cache file for this rule group for this request.

      The default value is TRUE.

      Key Based Enabled

      KeyBasedEnabled

      Yes

      No

      Enables key-based routing for a component that has been predefined for that attribute.

      This is an advanced parameter.

      The default value is TRUE.

      Note: If the value is set to FALSE, then the Server Request Broker is not able to route requests to the Assignment Manager, and interactive assignment will not work. (Interactive assignment relies on the Assignment Manager component).

      List of excluded organization ids

      ExcludeOrgList

      Yes

      Yes

      Indicates a comma-separated list of organization IDs to be excluded from assignment.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      List of excluded person ids

      ExcludePersonList

      Yes

      Yes

      Indicates a comma-separated list of employee or position IDs to be excluded from assignment.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Log txn only on change

      LogTxnChgOnly

      Yes

      Yes

      Logs a transaction only when the assignment has changed (for example, when the sales team is updated).

      By default, this parameter is set to TRUE. Setting this parameter to FALSE causes Assignment Manager to log a transaction in the S_DOCK_TXN_LOG table on reassignment even when there is no change in rules or assignees.

      This is an advanced parameter.

      Note: If there is a change in at least one of the primaries, or if there is a change in at least one of the team tables, then Assignment Manager updates columns (primaries, ASGN_DT, and system columns) on the object row. However, if there is no net change, only the ASGN_DT column is updated.

      For information about how this parameter works with regard to merge conflicts, see Siebel Remote and Replication Manager Administration Guide.

      Maximum MT Servers

      MaxMTServers

      Yes

      No

      Indicates the maximum number of active server processes for a multithreaded service.

      The default value is 1.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Maximum Routing Keys

      MaxRouteKeys

      Yes

      No

      Indicates the number of keys allocated for the routing. Used for interactive assignment.

      This is an advanced parameter.

      Maximum Tasks

      MaxTasks

      Yes

      Yes

      Indicates the maximum number of running tasks for a service.

      The default value is 20.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Minimum MT Servers

      MinMTServers

      Yes

      No

      Indicates the minimum number of active server processes for a multithreaded service.

      The default value is 1.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Object Row Id

      ObjRowId

      Yes

      No

      Indicates the row ID of the object to assign.

      Object Row Sql Statement

      ObjRowSqlStmt

      Yes

      Yes

      Represents the SQL statement that when executed gives the object row IDs to be assigned.

      Note: You can use this parameter to specify the rows to be assigned in lieu of the ObjRowId or ObjWhereClause parameters.

      Object Where Clause

      ObjWhereClause

      Yes

      Yes

      A WHERE clause of the object for use with interactive and batch assignment.

      For more information, see About Using an Object WHERE Clause to Restrict the Number of Records Processed.

      Organization Key Value

      OrgKeyVal

      Yes

      Yes

      Used to stamp rows when assigning organizations and UseKeyVal = Key Value.

      Person Key Value

      PersonKeyVal

      Yes

      Yes

      Used to stamp rows when assigning employees or positions and UseKeyVal = Key Value.

      Primary Organization Id

      PrOrganizationId

      Yes

      No

      Indicates the ID of the organization to be assigned as the primary.

      This is an advanced parameter.

      Primary Person Id

      PrPersonId

      Yes

      No

      Indicates the ID of the person to be assigned as the primary.

      This is an advanced parameter.

      Primary Rule Id

      PrRuleId

      Yes

      No

      Indicates the ID of the rule to be assigned as the primary.

      Refresh people skills interval

      MaxSkillsAge

      Yes

      No

      Indicates the interval in which people skills are refreshed, in seconds. Setting the value to 0 (zero) disables refresh.

      This is an advanced parameter.

      The default value is 0.

      For more information about this parameter, see Additional Information About Assignment Manager and Batch Assignment Component Parameters.

      Regular Assignment

      RegularAsgn

      Yes

      No

      Indicates whether Assignment Manager performs regular assignment.

      Note: Assignment Manager can also run in reporting mode.The default value is TRUE.

      Replace Key Values

      ReplaceKeyVal

      Yes

      Yes

      Indicates whether Assignment Manager looks for candidates in the team table that have a value stamped in the Key column.

      These candidates are then compared to those that qualify for the rule and are removed, updated, or inserted.

      This parameter is a comma-separated string and is dependent on what is passed in the UseKeyVal parameter.

      Replace Team Members

      ReplaceTeamMembers

      Yes

      Yes

      Allows deletion of team members if they no longer qualify.

      This is an advanced parameter.

      Reporting Mode

      RptMode

      Yes

      Yes

      Indicates what reporting mode Assignment Manager will run. Values are: None, Snapshot, and Delta.

      The default value is None.

      Request Id

      ReqId

      Yes

      Yes

      Assignment Manager generates a request ID for each server component job. When AsgnMode = Match, passing candidates are stored in a temporary table with the request ID. Then, Assignment Manager uses this request ID to find (match) the correct entries in the table.

      This is an advanced parameter.

      Return Property Set

      ReturnPropSet

      Yes

      No

      If TRUE, then Assignment Manager returns a hierarchical property set containing qualified or assigned candidates.

      See About Using External Components to Invoke Siebel Assignment Manager.

      Use FOR UPDATE

      UseForUpdate

      Yes

      Yes

      If TRUE, then Assignment Manager uses the FOR UPDATE SQL clause to lock primary table rows so that, during evaluation and assignment, no other process or user can make changes to this row.

      This is an advanced parameter.

      Use Key Value

      UseKeyVal

      Yes

      Yes

      Indicates whether Assignment Manager uses a key value to filter and stamp the candidate. Values are: None, Rule Group, and Key Value.

      The default value is None.

      Use Rule Minimum Score

      UseRuleMinScore

      Yes

      Yes

      If TRUE, then Assignment Manager filters out candidates that do not get at least the minimum score on the assignment rule.

      The default value is FALSE.

        Additional Information About Assignment Manager and Batch Assignment Component Parameters

        This topic is part of Preparing to Run Siebel Assignment Manager.

        The information in this topic provides further explanation for some of the parameters used with the Assignment Manager (AsgnMgr) and Batch Assignment (AsgnBatch) components, and why you might want to use them. The name provided in parentheses is the alias for the parameter.

        For more information about setting these parameters and for a more complete list of parameters, see Modifying the Siebel Assignment Manager Component Parameters.

        For more information about configuring parameters for server components, see Siebel System Administration Guide.

          Active Employee Where Clause (Active Emp LOVCode) and Active Position Where Clause (ActivePosWhereClause) Parameters

          You can choose to include only active employees for assignment rule evaluation. For example, you might want to effectively exclude inactive employees or employees who are on a leave of absence from assignment consideration.

          You include active employees by using the Active Employee Where Clause component-level parameter (or using ActiveEmpLOVCode from the Server Manager command line) with an SQL WHERE clause that is based on any column (or columns) on the S_EMP_PER employee table. For example, you could use the EMP_STAT_CD column with the following value to indicate that you want only active employees considered for evaluation and assignment:

          AND emp.EMP_STAT_CD='Active'
          

          Other employees are excluded, even if they are explicitly added to an assignment rule as candidates.

          Similarly, you can include only active positions by using the Active Position Where Clause component-level parameter (or using ActivePosWhereClause from the Server Manager command line).

          Note: Updated values for these parameters take effect when assignment rules are released and the rulecache.dat file is updated, or when the component is restarted. (Updated values also take effect if the Siebel Server is restarted.)
          Caution: When specifying the parameters, you must use the emp SQL alias for the S_EMP_PER employee table and the pos alias for the S_POSTN position table. Do this to differentiate from other columns by the same name in other tables that Assignment Manager might use in the same SQL. Otherwise, an SQL error (ambiguous reference to a column) might occur.

            Allow Duplicate Positions (AllowDupPostn) Parameter

            You can assign duplicate positions by setting the Allow Duplicate Positions parameter when you run an assignment request. By default, the Allow Duplicate Positions parameter is set to FALSE. When you set this parameter to TRUE, Assignment Manager attempts to insert duplicate positions, that is, positions with the same ID in the team table, given those positions do not violate the user key constraints of the table.

            You must also set the PositionTeamDenorm user property for the assignment object. The PositionTeamDenorm assignment object user property specifies which destination columns are part of the user key. Assignment Manager checks whether positions with the same ID that pass violate the uniqueness of these key columns. If Assignment Manager detects a violation, only the first position encountered is inserted into the team table, and the other position is ignored. Otherwise, Assignment Manager inserts both positions into the team table.

            For example, if there is a violation of the user key when adding positions to the account team, then only the first duplicate position encountered is inserted into the S_ACCNT_POSTN table. For an example of using the PositionTeamDenorm assignment object user property, see Example of Copying Additional Columns to the Team Table.

              Check version iterations (CheckVerIter) Parameter

              Changing this parameter to a small value, such as 1, reduces the potential for invalid assignment. For example, running interactive assignment before Assignment Manager detects that the Release button was recently clicked causes assignment based on the previous version of assignment rules. By having a small iteration value, Assignment Manager checks for a newer version of assignment rules more frequently. Test your deployment with this lower parameter value to make sure that it does not interfere with any other database activity.

                List of excluded person ids (ExcludePersonList) and List of excluded organization ids (ExcludeOrgList) Parameters

                You can choose to exclude a specific candidate or candidates, even though you added the candidate or candidates to an assignment rule. You do so at run time by specifying the ExcludePersonList or the ExcludeOrgList parameter as comma-separated lists of candidate IDs from the Server Manager command line. Assignment Manager does not evaluate these candidates, and because of this, the candidates do not appear in log files even when Match or Assign logging is active.

                For example, if an employee has not worked on a service request for several days, and if a request is submitted to assign the same service request, then Assignment Manager assigns the service request to the same person again. That is because, given a set of assignment rules and criteria, Assignment Manager assigns the candidate with the highest score to the object row. By specifying the ExcludePersonList parameter for a particular run, you can exclude this particular candidate from assignment consideration.

                  Maximum MT Servers (MaxMTServers) Parameter

                  This parameter controls the maximum number of Assignment Manager server processes that are running at any time on the Siebel Server (when MaxMTServers is greater than MinMTServers). Generally, the default value is sufficient for most deployments, because server processes for Assignment Manager have large resource requirements.

                    Maximum Tasks (MaxTasks) Parameter

                    This parameter controls the maximum number of server threads that can run at any time on the Siebel Server. For Assignment Manager, this controls the maximum number of assignments that can be processed concurrently. Set the value of this parameter to the maximum anticipated concurrent requests (dependent on your server's capabilities).

                      Minimum MT Servers (MinMTServers) Parameter

                      This parameter controls the number of Assignment Manager server processes that are started when the Siebel Server starts up. If this value is set to zero, then Assignment Manager is disabled. It is recommended that you use the default value of 1, because server processes for Assignment Manager have large resource requirements.

                        Refresh people skills interval (MaxSkillsAge) Parameter

                        This parameter controls the interval in which people skills are refreshed, in seconds. If you want to automatically refresh skills without restarting the Assignment Manager component, then set the value of the MaxSkillsAge parameter to the desired update interval (the value must be greater than zero seconds). Then, when rules are released, Assignment Manager refreshes skills and re-creates the rulecache.dat file at the periodic interval set.

                        This is an advanced parameter.
                        Note: The MaxSkillsAge parameter, by itself, does not update or re-create the rulecache.dat file. It is only when the rules are released that Assignment Manager refreshes the skills, and re-creates the rulecache.dat file according to the periodic interval set.

                          Setting the Log Level of Siebel Assignment Manager Events

                          This topic is part of Preparing to Run Siebel Assignment Manager.

                          Before running Siebel Assignment Manager components, you can set event logs to view results. The Assignment Manager, Batch Assignment, and Workflow Monitor Agent server components are configured to use events.

                          In addition to the events used for other components, the Assignment Manager, Batch Assignment, and Workflow Monitor Agent components use specific events to log information related to assignments:

                          • Assignment Manager Generic (Generic). Generic events specific to Assignment Manager.

                          • Loading (Loading). Logging of events that happen during loading.

                          • Object Assignment (Assign). Logging of events during the assignment phase.

                          • Rules Evaluation (Match). Logging of events during the evaluation phase.

                          • SQL Parse and Execute. Traces all executed SQL and enhances debugging.

                          There are five levels in each of the events:

                          • Level 0: Used for fatal errors

                          • Level 1: Used for nonfatal errors and warnings

                          • Levels 2 through 4: Used for different levels of logging detail

                          • Level 5: Used for detailed debug information

                          Assignment Manager uses two events for logging information when assigning object rows. For the evaluation phase, Assignment Manager uses the Rules Evaluation (Match) event. The following levels of information are logged for each level:

                          • Level 2: Object row-level logging

                          • Level 3: Rule-level logging

                          • Level 4: Criterion-level logging

                          • Level 5: Criterion value-level logging

                          For the assignment phase, Assignment Manager uses the Object Assignment (Assign) event. The following levels of information are logged for each level:

                          • Level 2: Object row-level logging

                          • Level 3: Passing rules-level logging

                          • Level 4: Passing candidates-level logging

                          Note: You can set the log level of both event types to print a list with combined results. However, when you are assigning too many objects, these settings might create extremely large log files.

                          To set the log level of Assignment Manager events

                          1. Navigate to the Administration - Server Configuration screen, and then Servers.

                          2. In the Servers list, select your server (if more than one server appears) and make sure the Assignment Management component group is enabled on that server.

                          3. In the Components list for the current server, select the Assignment Manager, Batch Assignment, or Workflow Monitor Agent component, depending on the component for which you want to set a log level. Make sure that the selected component is running on the correct server.

                          4. in the Events list, adjust the values for the Log Level field, as required by your implementation, as follows:

                            1. Select Rules Evaluation; enter 3 if you want to print a list of assignment rules that were evaluated.

                            2. Select Object Assignment; enter 3 if you want to print a list of evaluated assignment rules that passed.

                          For more information about event logs, see Siebel System Monitoring and Diagnostics Guide.

                            About Server Administration Requirements After Configuration

                            This topic is part of Preparing to Run Siebel Assignment Manager.

                            After configuring Siebel Assignment Manager objects and attributes or altering assignment policies, it is often necessary to stop and restart various server tasks and components. The following table summarizes the required server tasks and components that must be restarted based on the type of configuration process. Detailed information about how and when to run these server tasks and components is provided in the remainder of this chapter.

                            Configuration Process

                            Restart Assignment Manager

                            Regenerate Triggers

                            Restart Workflow Monitor Agent

                            Adding or configuring an assignment object, assignment attribute, or assignment criteria

                            Yes

                            Yes

                            Yes

                            Changing assignment policies

                            No

                            Yes

                            Yes

                            Activating or deactivating assignment policies

                            No

                            Yes

                            Yes

                            Note: If you want to automatically refresh skills without restarting the Assignment Manager component, then set the value of the Refresh people skills interval (MaxSkillsAge) parameter to the desired update interval (the value must be greater than zero seconds). Then, when rules are released, Assignment Manager refreshes skills and re-creates the rulecache.dat file at the periodic interval set.

                              About Server Administration Requirements for Assignment Modes

                              This topic is part of Preparing to Run Siebel Assignment Manager.

                              Siebel Assignment Manager requires various functioning server components and tasks based on the selected assignment mode. The following table summarizes the required components and tasks that must be online or started when selecting a particular mode of assignment. When using mobile assignment, use the information provided for either interactive or batch assignment based on your deployment requirements. Detailed information about starting the applicable components and tasks is covered in the remainder of this chapter.

                              Assignment Mode

                              Set Assignment Manager Online

                              Start Workflow Monitor Agent

                              Server Request Broker Running

                              Interactive Mode

                              Yes

                              No

                              Yes

                              Dynamic Assignment Mode

                              No

                              Yes

                              No

                              Batch Assignment Mode

                              No

                              No

                              No

                              In this table, note the following:

                              • For dynamic and batch assignment, you do not have to start the Server Request Broker when running your tasks using the Server Manager command-line interface (or using an alternate method, such as setting Default Tasks for the server component).

                              • This information is based on the default Assignment Request (In Process) seeded action.

                              Additionally, when using availability-based assignment, make sure that the Field Service component group and the ApptBook component are online.

                                Running Siebel Assignment Manager in Denormalization Mode

                                Siebel Assignment Manager provides the ability to denormalize positions and organizations using the Contact Denormalization and Product Denormalization features.

                                Contact Denormalization and Product Denormalization modes do not require assignment rules to function. Assignment Manager does not evaluate the Contact object against any assignment rules in contact denormalization mode, nor does it evaluate the Product object against any assignment rules in product denormalization mode. And, neither mode assigns candidates to these objects. Instead, Assignment Manager gets positions from a related entity in these modes. For example, in Contact Denormalization mode, Assignment Manager gets a union of positions from related accounts and opportunities and assigns it to the contact.

                                Note: Contact Denormalization behavior differs among the various Siebel Industry Applications. See the appropriate industry-specific guide to learn more about this behavior.

                                  About Contact Denormalization

                                  You use Contact Denormalization when you want to allow assignees automatic access to detail contact information that is associated with an account or opportunity. In Contact Denormalization mode, Assignment Manager denormalizes positions from the Accounts and Opportunities team tables by copying these positions to the associated contacts in the Contact team table, even if the assignees are not assigned to the contacts:

                                  • Positions from the team table of all accounts associated with the contact to the contact team.

                                  • Positions from the team table of all Opportunities associated with the contact to the Contact team.
                                    Note: The Contact Denormalization object is reserved to run Assignment Manager in Contact Denormalization mode. Assignment Manager does not evaluate the Contact object against any assignment rules in Contact Denormalization mode, and therefore does not assign candidates to objects. For this reason, do not create assignment rules for the Contact Denormalization object.

                                  If you want the contact access list to reflect the positions in both the account and opportunity team tables, then you must associate the contact with an account and then associate the contact with an opportunity. If a team member is removed from the account or opportunity's team table, then the position on the associated contact's access list can also be removed by Contact Denormalization (dependent on the properties of the Contact Denormalization assignment object). Similarly, if the account team has manually assigned team members and you want the same team members on both the contact team and account team, then you must run Contact Denormalization after the account assignment.

                                  Note: Positions marked Indirect by Contact Denormalization in Contact Access list are not dropped by contact assignment, that is, contact assignment does not drop the positions that were added by Contact Denormalization.
                                  Note: To drop a position means to disassociate the position from, for example, a Contact.
                                  Note: To drop a database trigger means to disassociate the trigger from, for example, an assignment rule, criteria, or value.

                                  Contact Denormalization checks the Lock Assignment column on assignment objects before denormalizing. If this flag is checked, then Contact Denormalization does not denormalize the contact record. For more information about the Lock Assignment feature, see Setting the Lock Assignment Default Value for Activity Assignment Objects.

                                  Note: Both Account and Contact and Contact and Opportunity have a many-to-many relationship.

                                  Assignment Manager also assigns a primary position to the contact when running in Contact Denormalization mode using the following methodology:

                                  1. If the Set Primary Position property on the assignment object is TRUE (checked) and a primary position is not currently selected, then Assignment Manager sets the creator's primary position as the new primary position.

                                  2. If a primary position is not selected for the creator, then Assignment Manager sets the default position as the new primary position.

                                  3. If a default position is not defined, then Assignment Manager does not set a primary position.

                                  However, Contact Denormalization does not remove positions marked as the Primary, even if the positions no longer exist on an associated account or opportunity (with the Denorm Flag set).

                                    About Product Denormalization

                                    In product denormalization mode, Assignment Manager denormalizes organizations from the Price List table into the Product table by copying these organizations to the products associated with the price lists. Run product denormalization only in batch mode.
                                    Note: Product to price list is a many-to-many relationship.

                                    Assignment Manager assigns a primary organization to the product when running in denormalization mode using the following methodology:

                                    1. If the Set Primary Organization flag is checked and a primary organization is not currently selected, then Assignment Manager sets the creator's primary organization as the new primary organization.

                                    2. If a primary organization is not selected for the creator, then Assignment Manager sets the default organization as the new primary organization.

                                    3. If a default organization is not defined, then Assignment Manager does not set a primary organization.

                                      Note: The Product Denormalization object is reserved to run Assignment Manager in Product Denormalization mode. Assignment Manager does not evaluate the Product object against any assignment rules in Product Denormalization mode, and therefore does not assign organizations to objects. For this reason, do not create assignment rules for the Product Denormalization object.

                                      Running Interactive Assignment

                                      Running Siebel Assignment Manager in interactive mode allows end users to make real-time assignments. End users can review a list of potential assignees generated by Assignment Manager, then select and confirm, or override the assignment from the generated potential candidate list. For example, a call center agent might review potential candidates for an activity, then based on the candidates' assignment scores, expertise, or workload, assign the best candidate for the job.

                                      The Activity and Service Request assignment objects are predefined to use interactive assignment, which allows you to assign employees to activities and service requests in real time. However, you can configure other assignment objects to use interactive assignment.

                                      For information about how to configure assignment objects to use interactive assignment, see Configuring Assignment Objects for Interactive Assignment.

                                      You can run interactive assignment using any of the following:

                                      • Siebel Web Client (also known as zero-footprint client)

                                      • Command-line Server Manager (srvrmgr) program

                                      • Siebel Developer Web Client

                                      Siebel Mobile Web Client users running Assignment Manager in interactive mode do not make real-time assignments, because any interactive assignments made by mobile users are not applied to the server until these users resynchronize.

                                      Note: Before you run interactive assignment using the Siebel Developer Web Client, it is recommended that you verify that the correct parameter settings exist in your Siebel client configuration (.cfg) file. The parameters identified in this configuration file specify the location of the Siebel Server where Assignment Manager is running and are automatically created during installation of the Siebel client. For information about the Siebel client installation process and configuration file, see the Siebel Installation Guide for the operating system you are using.

                                      The requirements for interactive assignment are that the:

                                      • Assignment Manager component is Online

                                      • Server Request Broker component is Running

                                        Running Interactive Assignment from the GUI

                                        This topic is part of Running Interactive Assignment.

                                        The Activity and Service Request assignment objects are predefined to use interactive assignment, which allows you to assign employees to activities and service requests in real time.

                                        To run interactive assignment from the GUI

                                        1. Navigate to either of the following locations:

                                          • Activities screen, then Activity List, and then the All Activities view

                                          • Service Requests screen, and then the All Service Requests view

                                        2. In the All Activities or All Service Requests list, select an open activity or service request for assignment.

                                        3. In the form, click the Menu button and select Assign to start interactive assignment.

                                          For an example, see Configuring Assignment Objects for Interactive Assignment.

                                        4. Choose an assignee from the list of best candidates provided by Assignment Manager.

                                          The Siebel application then:

                                          • Communicates with the Siebel Assignment Manager on the Siebel Server and creates a list of qualified employees for the activity or service request.

                                          • Displays the list of qualified employees to the Siebel user, sorted by the descending order of scores.

                                          • Sets the activity or service request owner to the employee that is chosen when clicking the Assign button.

                                          Example of Running Interactive Assignment for Service Requests from the GUI

                                          This topic is part of Running Interactive Assignment.

                                          This topic gives one example of running interactive assignment from the graphical user interface (GUI). The example is applicable for use with the Siebel Web Client or the Siebel Developer Web Client. You might use this feature differently, depending on your business model.

                                          To run interactive assignment for a service request

                                          1. Navigate to the Service Requests screen, and then the All Service Requests view.

                                          2. In the All Service Requests list, select an open service request for assignment.

                                          3. In the form, click the Menu button and select Assign to start interactive assignment.

                                            For an example, see Configuring Assignment Objects for Interactive Assignment.

                                          4. Choose an assignee from the list of best candidates provided by Assignment Manager.

                                            The Siebel application then:

                                            • Communicates with the Siebel Assignment Manager on the Siebel Server and creates a list of qualified employees for the service request.

                                            • Displays the list of qualified employees to the Siebel user, sorted by the descending order of scores.

                                            • Sets the service request owner to the employee that you choose.

                                            About Running Interactive Assignment in Rule Group Mode

                                            This topic is part of Running Interactive Assignment.

                                            By default, interactive assignment submits requests to a Siebel Assignment Manager component that is running in default mode. However, you can use the Assignment Manager component (AsgnSrvr) to run interactive assignment in rule group mode, with or without using server key mappings.

                                              Running Interactive Assignment Using Server Key Mappings

                                              Use server key mappings when you want to split your rules across different servers. You can explicitly define what rule groups to load on what server, and only rules from that particular rule group are executed. At the time of the assignment request, you can specify one of the rule groups as the Assignment Key parameter (AsgnKey) along with the request.

                                              If you use server key mappings, then, when you click the Assign button, a request is sent to the Assignment Manager component to evaluate and return the qualified candidates. To submit requests to a server that has server key mappings, one of the rule group IDs must pass because the AsgnKey parameter must pass. To accomplish this, the SetAsgnKey method is called on the CSSBCBase business component base class. Using a script, a workflow process, or a business service, this method is called and the row ID of one of the rule groups is passed as the parameter.

                                              After this is complete, interactive assignment uses this parameter value as the AsgnKey and ReqKey parameters when submitting requests to the Assignment Manager component. Note that, for one session, you only need to call this method once. Subsequent requests in the same session reuse the rule group row ID. However, when the session is logged out or the server is restarted, you must call this method again to set the AsgnKey parameter. Otherwise, the Assignment Manager reverts to running in default mode.

                                              The following procedure summarizes the steps involved in running interactive assignment using server key mappings.

                                              To run interactive assignment using server key mappings
                                              1. Use the SetAsgnKey method to set the AsgnKey argument to the row ID of the rule group that you want to use.

                                              2. Add the rule group record to the Server Key Mappings view.

                                              3. Add the BusComp user property to the business component being assigned interactively, and set the value of Use Assignment Request Key to TRUE.

                                                Running Interactive Assignment Without Using Server Key Mappings

                                                Assignment Manager supports the use of rule group mode even if you do not want to split your rules across multiple servers. In this case, you do not create server key mappings. Instead, you submit the request by specifying the rule group in the AsgnKey parameter for Assignment Manager. Even if there are no server key mappings, each Assignment Manager process loads all active rules. Assignment Manager determines at request time whether to execute all rules or only rules from a particular group, based on whether or not the assignment key is passed.

                                                The following procedure summarizes the steps involved in running interactive assignment without using server key mappings.

                                                To run interactive assignment without using server key mappings
                                                • Use the SetAsgnKey method to set the AsgnKey argument to the row ID of the rule group that you want to use.

                                                  Creating a Custom Siebel Assignment Manager Server Component for Interactive Assignment

                                                  In general, interactive assignment always goes to the Assignment Manager (AsgnSrvr) component. However, it is possible to create a custom Assignment Manager component called AsgnSrvrSR to handle only interactive assignments for Service Request objects.

                                                  The following procedure describes the steps involved in creating AsgnSrvrSR for handling only interactive assignments for Service Request objects.

                                                  To create a custom Assignment Manager server component (AsgnSrvrSR) for interactive assignment

                                                  1. Create a new component definition called AsgnSrvrSR, set the Key Based Enabled parameter to TRUE, then restart the Siebel Server services.

                                                  2. On the Service Request business component user property, add the following user property value, and then deploy the change it into the Siebel runtime repository:

                                                    User Property Name

                                                    User Property Value

                                                    Assignment Manager Component

                                                    AsgnSrvrSR

                                                  3. Perform interactive assignment on a service request.

                                                    When you do this, notice that the request is routed to the AsgnSrvrSR component to execute, evaluate rules, and find candidates.

                                                  Running Dynamic Assignment

                                                  Dynamic assignment is a feature that works transparently as existing records change or new records are created. For example, you can set up dynamic assignment to automatically assign a service request to an owner when a new record is created or reassign a service request to another owner if the service request is updated.

                                                  Dynamic assignment is especially useful in a deployment where users and server programs make frequent changes to the assignment object records (such as service requests and activities), because dynamic assignment can automatically determine the changes and assign the objects to the appropriate people and organizations.

                                                  The dynamic assignment process uses the underlying database triggers feature. When a record is modified, either by a user or by another server process like EAI, workflow, and so on, the database trigger (set up by the Generate Triggers component) captures the changes, and queues the assignment request into the S_ESCL_REQ (escalation request) table. The Workflow Monitor Agent then polls the S_ESCL_REQ table periodically and assigns the object by internally invoking Siebel Assignment Manager within its own process.

                                                  Note: When the Assignment Policy Action is set to Assignment Request (In Process), the Server Request Broker and the Assignment Manager components are not explicitly used in dynamic assignment.

                                                  Requirements for dynamic assignment are that:

                                                  • Triggers are generated using Generate Triggers component

                                                  • Workflow Monitor Agent is running

                                                  • Assignment policies are set and activated

                                                  • (Optional) If you are using skills, then make sure that the MaxSkillsAge parameter is set to a value greater than 0 seconds

                                                    Note: Dynamic assignment can refresh employee, position, and organization skills from the database if changes are made to these items. The MaxSkillsAge parameter, if defined, forces Assignment Manager to reload this information. By default, this parameter is not set. For more information about MaxSkillsAge, see Modifying the Siebel Assignment Manager Component Parameters.

                                                    Workflow Monitor Agent

                                                    To run dynamic assignment, a Workflow Monitor Agent task must be running. Workflow Monitor Agent detects when a user changes data related to objects. For more information about Workflow Monitor Agent, see Siebel Business Process Framework: Workflow Guide.

                                                      Generate Triggers

                                                      The Generate Triggers component generates the database triggers used by Workflow Manager to detect changes. Generate Triggers reads the Siebel repository definitions for Workflow Policy Object and Assignment Object and generates the appropriate database triggers to monitor changes.

                                                        Process of Running Dynamic Assignment

                                                        This topic is part of Running Dynamic Assignment.

                                                        You run dynamic assignment only in default mode, which means that all active rules are loaded and processed. Rule group mode is not supported.

                                                        To set up dynamic assignment, perform the following tasks:

                                                        1. (Optional) Reviewing Triggers for Dynamic Assignment

                                                        2. Generating triggers, using either of the following procedures:

                                                        3. Starting Workflow Monitor Agent for Dynamic Assignment Using the Server Manager Command-Line Interface

                                                          Reviewing Triggers for Dynamic Assignment

                                                          The database triggers created by the Generate Triggers component detect record changes in the Siebel database and place an assignment request in the S_ESCL_REQ (escalation request) table for the Workflow Monitor Agent to pick up the request and invoke the Assignment Manager. However, triggers generated for Assignment Manager can reference other database columns not associated with assignment rules.

                                                          Caution: Make sure that triggers are generated only for an assignment policy's criteria. Large data loads can experience performance issues otherwise.
                                                          Do not modify the database triggers. However, before generating or applying triggers for dynamic assignment, you might want to review the trigger.sql file. It is recommended you work with your database administrator to do so.
                                                          Note: If you discover redundant triggers, then you must deactivate the appropriate assignment criteria and assignment attribute using Siebel Tools.

                                                          Complete the steps in the following procedure to review triggers for dynamic assignment. This task is a step in the Process of Running Dynamic Assignment.

                                                          To review triggers for dynamic assignment
                                                          1. Use Siebel Tools, or view the trigger.sql file (SIEBSRVR_ROOT/trigger.sql), to examine the appropriate table columns.

                                                            For more information about using Siebel Tools, see Using Siebel Tools.

                                                          2. Disable the inappropriate columns by inactivating the assignment attribute column.

                                                            For detailed information, see About the Relationship Between Attributes and Skills.

                                                            If you inactivate only the assignment attribute column and leave the assignment attribute and assignment criteria active, then the assignment criteria appears in the user interface in the assignment administration views, which means that you can create assignment rules based on that criteria. The following is the result of this action based on whether or not the Employee Skill field is checked:

                                                            • If the Employee Skill field is checked, then the assignment criteria is skill-based and, as such, continues to work for assignment rules. For example, the criteria works if you run batch assignment because that mode does not rely on triggers.

                                                            • If the Employee Skill field is not checked, then the assignment criteria is object-based, and as such, relies on a valid assignment attribute column configuration. If you attempt to create assignment rules, then you get an error message when the task is run.

                                                          3. Drop and regenerate new triggers.

                                                            See Generating Triggers for Dynamic Assignment Using the GUI

                                                          4. Recheck the trigger.sql file, to confirm that the trigger is no longer active.

                                                            Note: When dynamic assignment is running, due to the database concurrency feature, some users might receive the following error when attempting to modify a record: The selected record has been modified by another user since it was received. Please continue. This result can occur because Assignment Manager updated the record by assigning it while a user was trying to edit it. In this situation, the user's changes might be lost. The solution is to refresh the query and reenter the changes.

                                                            Generating Triggers for Dynamic Assignment Using the GUI

                                                            Use the Generate Triggers component to generate the database triggers used by Workflow Manager to detect changes in the database.

                                                            Note: You cannot create custom triggers on the Siebel database. The only supported triggers allowed on the Siebel database are those generated during installation or from running the Generate Triggers component.

                                                            For dynamic assignment, you must run the Generate Triggers component after:

                                                            • Creating or changing an Assignment Object, Assignment Attribute, or Assignment Criteria object type in Siebel Tools

                                                            • Changing assignment policies

                                                            • Installing or upgrading the Siebel Server

                                                              Tip: When amending an assignment rule, criteria, or value, or when making changes to assignment positions in dynamic mode, you do not have to drop and regenerate database triggers.

                                                            Complete the steps in the following procedure to generate triggers for dynamic assignment using the GUI. This task is a step in the Process of Running Dynamic Assignment.

                                                            To generate triggers for dynamic assignment using the GUI
                                                            1. Navigate to the Administration - Server Management screen, and then the Jobs view.

                                                            2. In the Jobs list, click New.

                                                              A new record appears with a system-defined ID automatically generated with a status of Creating.

                                                            3. In the Job Detail subview, enter the relevant information for the new component job record.

                                                              1. In the Requested Server field, type the name of the Siebel Server for which you want to run Generate Triggers.

                                                              2. In the Request Key field, enter the name of the request key.

                                                              3. Complete the rest of the fields, if needed.

                                                            4. In the Job Parameters list, click New to create a new record for the Privileged User, and enter the relevant parameter information.

                                                              1. In the Name field, click the select button.

                                                              2. In the Job Parameters dialog box, query for PrivUser, and then click OK.

                                                              3. In the Value field, enter the privileged user name.

                                                                Note: If you are using a Microsoft SQL Server database, then you must set the Privileged User Password value to the user password with tableowner privileges. Also make sure that the Table Owner value is set to dbo.
                                                            5. In the Job Parameters list, click New to create a new record for the Privileged User Password, and enter the relevant parameter information.

                                                              1. In the Name field, click the select button.

                                                              2. In the Job Parameters dialog box, query for PrivUserPass, and then click OK.

                                                              3. In the Value field, enter the privileged user password.

                                                            6. In the Jobs List, click the Start button.

                                                            For more information about generating database triggers, see Siebel Business Process Framework: Workflow Guide.

                                                              Generating Triggers for Dynamic Assignment Using the Server Manager Command-Line Interface

                                                              You can run dynamic assignment using by running the Generate Triggers component from the Server Manager command-line interface (srvrmgr), using the parameters described in the following table.

                                                              For more information about using the Server Manager command-line interface, see Siebel System Administration Guide.

                                                              This task is a step in the Process of Running Dynamic Assignment.

                                                              Parameter Name

                                                              Display Name

                                                              Description

                                                              Default Value

                                                              EXEC

                                                              EXEC

                                                              Install Triggers to DB directly

                                                              FALSE

                                                              Mode

                                                              Mode

                                                              Assignment Manager and (or) Workflow mode (ASGN, WORK, or ALL)

                                                              ALL

                                                              Remove

                                                              Remove

                                                              Remove All Triggers Mode

                                                              FALSE

                                                              TAMode

                                                              TAMode

                                                              All Territory or Contact Only mode

                                                              ALL

                                                              TrigFile

                                                              Trigger File Name

                                                              Output trigger script file name

                                                              trigger.sql

                                                                Starting Workflow Monitor Agent for Dynamic Assignment Using the Server Manager Command-Line Interface

                                                                To run dynamic assignment, the Workflow Monitor Agent server component (WorkMon) needs to be running. This server component monitors the S_ESCL_REQ table. Database triggers, when fired because of object changes, create records in the S_ESCL_REQ table. The Workflow Monitor Agent reads these new records and processes requests for Assignment Manager policies. Affected objects are then dynamically assigned.

                                                                Note: Dynamic assignment does not log information into the S_ESCL_LOG table. For more information about log files, see Siebel System Monitoring and Diagnostics Guide.

                                                                Complete the steps in the following procedure to start workflow monitor agent from the Server Manager command-line interface (srvrmgr). This task is a step in the Process of Running Dynamic Assignment.

                                                                To start Workflow Monitor Agent from the Server Manager command-line interface
                                                                1. Determine the workflow group that you want Workflow Monitor Agent to monitor.

                                                                  1. Navigate to the Administration - Assignment screen, and then the Assignment Policies view.

                                                                  2. In the Policy Group field in the Assignment Policies list, choose the workflow group (the default group is Assignment Group).

                                                                2. Start the srvrmgr program.

                                                                  For detailed information on this task, see Siebel System Administration Guide. After the program starts, the prompt changes to:

                                                                  srvrmgr: server_name>
                                                                  
                                                                3. At the prompt, enter the following information to start the Workflow Monitor Agent server component task; use the Group information gathered from the previous step (Assignment Group used in this example):

                                                                  start task for component workmon with GroupName="Assignment Group"
                                                                  
                                                                4. Configure other component parameters, if needed.

                                                                  For more information about other configurable parameters, see the following table.

                                                                  Note: Separate the parameters and their values in the command-line statement with commas.
                                                                5. Alternatively, you can configure a Workflow Monitor Agent to start automatically to process assignment requests whenever the Siebel Server starts.

                                                                  For more information about Workflow Monitor Agent, see Siebel Business Process Framework: Workflow Guide.

                                                                This command starts a new task running in the background and returns to the Server Manager immediately.

                                                                Note: It is possible to set up multiple Workflow Monitor Agents for dynamic assignment. For more information about setting up multiple Workflow Monitor Agents, see the information about starting Workflow Agent processes automatically with Siebel Server, in Siebel Business Process Framework: Workflow Guide.

                                                                The following table shows the Workflow Monitor Agent parameters.

                                                                Note: The Action Interval parameter has no effect on assignment policies, where Workflow Monitor Agent was started in the Administration - Assignment screen, and the Assignment Policies view, with the group Assignment Group. This parameter applies only to workflow policies created in the Administration - Business Process screen, and the Workflow Policies view. If you require this parameter, then invoke Assignment Manager through the Synchronous Assignment Manager Requests business service from within a workflow process. For more information, see How Siebel Assignment Manager Uses Server Key Mappings to Load Rules to a Particular Siebel Server. See also Siebel Business Process Framework: Workflow Guide and 1582117.1 (Article ID) on My Oracle Support.

                                                                Parameter Name

                                                                Alias

                                                                Description

                                                                Default Value

                                                                Action Interval

                                                                ActionInterval

                                                                Do not reexecute actions within specified interval in minutes.

                                                                Note: This parameter applies only to workflow policies, not to assignment policies.

                                                                3600

                                                                Cache size of Policy violations

                                                                CheckLogCacheSz

                                                                Number of policy violations to store in cache

                                                                100

                                                                Cache size of last user information

                                                                LastUsrCacheSz

                                                                Number of last user information items to cache

                                                                100

                                                                Group Name

                                                                GroupName

                                                                Group Name

                                                                Not applicable

                                                                Ignore errors

                                                                IgnoreError

                                                                Ignore errors while processing requests

                                                                FALSE

                                                                Mail Server

                                                                MailServer

                                                                Name of email server to send notification of abnormal termination

                                                                Not applicable

                                                                Mailing Address

                                                                MailTo

                                                                Email address to review notification of abnormal termination

                                                                Not applicable

                                                                Number of days to keep violation information

                                                                KeepLogDays

                                                                Number of days worth of violation information that should be retained

                                                                30

                                                                Number of seconds to retry

                                                                GenReqRetry

                                                                Number of seconds to retry sending a Generic Request message

                                                                120

                                                                Processes the batch Policies

                                                                BatchMode

                                                                Process the batch policies

                                                                FALSE

                                                                Reload Policy

                                                                ReloadPolicy

                                                                Reload Policy Interval, in seconds

                                                                600

                                                                Request delete size

                                                                DeleteSize

                                                                Request delete size

                                                                500

                                                                Requests per iteration

                                                                Requests

                                                                Requests per iteration

                                                                5000

                                                                Sleep Time

                                                                SleepTime

                                                                Time to sleep between iterations (in seconds), that is, is the frequency of time the Workflow Monitor Agent polls the S_ESCL_REQ table (escalation request table) and assigns rows.

                                                                For example, if SleepTime is set to 60 seconds, then the Workflow Monitor Agent polls the S_ESCL_REQ table, then waits 60 seconds before it polls it again.

                                                                60

                                                                Use Action Agent

                                                                ActionAgent

                                                                Use Action Agent

                                                                FALSE

                                                                For more information about starting, stopping, and monitoring server tasks, see Siebel System Administration Guide. For more information about the Workflow Monitor Agent, see Siebel Business Process Framework: Workflow Guide.

                                                                  About Tuning Dynamic Assignment for Performance

                                                                  This topic is part of Running Dynamic Assignment.

                                                                  If users experience slow response time while running Siebel Assignment Manager in dynamic mode, then you can implement one or more of the following to improve dynamic assignment performance:

                                                                  • Increase the Requests (Requests per iteration) workflow monitor parameter (the default is set to 5,000).

                                                                  • Decrease the SleepTime workflow monitor parameter (the default is 60 seconds).

                                                                  • Increase the ReloadPolicy workflow monitor parameter to a much larger number, for example, 86,400 seconds (the default is 600 seconds).

                                                                  • Distribute each assignment policy into its individual group and then invoke several Workflow Monitor Agents concurrently (one on each Siebel Server, if available).

                                                                    Activating Contact Denormalization for Dynamic Assignment

                                                                    This topic is part of Running Dynamic Assignment.

                                                                    For dynamic assignment, if you want to run Siebel Assignment Manager in contact denormalization mode, then you must activate the Contact Denormalization assignment policy. By default, this policy is inactive.
                                                                    Note: When Assignment Manager runs in contact denormalization mode, it does not evaluate assignment rules. Therefore, you do not have to select the Contact Denormalization object for the assignment rule to run Assignment Manager in contact denormalization mode.

                                                                    Use the following procedure to activate contact denormalization for dynamic assignment.

                                                                    To activate contact denormalization

                                                                    1. Navigate to the Administration - Assignment screen, and then the Assignment Policies view.

                                                                    2. In the Assignment Policies list, select Contact Denormalization, and then perform the following:

                                                                      1. In the Policy Group field, click the select button.

                                                                      2. In the Workflow Groups dialog box, select a workflow group (the default is Assignment Group), and then click OK.

                                                                      3. In the Expiration field, either clear the existing value or set the value to a later date.

                                                                        Note: If running batch assignment, then you do not have to activate this policy.

                                                                      About Running Batch Assignment

                                                                      Use batch assignment to assign multiple records of an object in a single batch. Typically, you want to run batch jobs periodically when you anticipate the least amount of database activity (such as daily or weekly after-hours).

                                                                      Batch assignment runs only in rule group mode. At the time of the assignment request, you specify one of the rule groups as the Assignment Key parameter for the AsgnBatch server component job along with the request. You identify the records for batch assignment using an SQL WHERE clause. This WHERE clause is usually based on columns in the base table of the assignment object. For example, an example of a WHERE clause is:

                                                                      WHERE OWNER_EMP_ID = NULL
                                                                      

                                                                      You can use this clause to identify all service requests that are not as yet assigned to a owner.

                                                                      You can have a batch assignment task load only a particular group of rules into memory by specifying the row ID of the rule group in the Assignment Key parameter when you start the task. If no rule group is specified for this parameter, then the batch task loads all rules in the Default Rule Group into memory. If no rule groups have been defined in the application, then all active rules in the database load.
                                                                      Caution: For performance reasons, do not run dynamic assignment when running batch assignment. If you run both batch assignment and dynamic assignment in your environment, then the batch assignment can activate dynamic assignment due to triggers created in the database required to run dynamic assignment. Before running batch assignment, deactivate all assignment policies and drop related triggers to prevent dynamic assignment from processing modified rules, objects, and candidates. After completing batch assignment, you can reactivate the assignment policies and re-enable dynamic assignment.

                                                                      This topic contains the following information:

                                                                        Running Batch Assignment

                                                                        This topic is part of About Running Batch Assignment.

                                                                        Batch assignment executes the Batch Assignment component (AsgnBatch) to perform assignment in batch mode. This component can take the Object Where Clause parameter and other appropriate parameters that determine the candidates for chosen objects

                                                                        You typically use batch assignment for importing new records from a legacy system, or when an assignment rule changes, such as when a sales representative no longer manages a specific ZIP Code.

                                                                          When You Must Run Batch Assignment

                                                                          You must run Assignment Manager in batch mode if you change nonobject data that can affect assignments. Such situations occur whenever you do the following:

                                                                          • Modify assignment rules and want these changes to affect existing objects. You modify assignment rules when you:

                                                                            • Add or remove employees, positions, or organizations

                                                                            • Add, remove, or update assignment criteria or criteria values

                                                                            • Associate a rule with a different rule group or change the rule sequence number

                                                                            • Change scores

                                                                            • Change activation and expiration dates

                                                                            • Change exclusive mode

                                                                          • Modify the list of employees, positions, or organizations and you want these changes to affect existing objects.

                                                                          • Change the Assignment Manager configuration in Siebel Tools and you want your changes to affect existing objects. You change the Assignment Manager configuration when you:

                                                                            • Change Assignment Attribute definitions

                                                                            • Change Assignment Criteria definitions

                                                                            • Change Assignment Object definitions

                                                                            • Change Workflow Policy Object definitions

                                                                          • Use Siebel Enterprise Integration Manager (EIM) to perform initial loads (if you do not run Generate Triggers to create the appropriate triggers).

                                                                            Note: When using Siebel EIM to load assignment rules, then make sure that the column ASGN_TYPE_CD includes a value. If it remains NULL, which is permissible in Siebel EIM, then the rules are loaded but Assignment Manager fails.
                                                                          • Determine that existing assignments might not be accurate. Assignment Manager does not change assignments if the existing assignments are correct.

                                                                            Note: When batch mode is run on correct assignments, even if there are no changes to the team or primary, an update of the record occurs. This situation can disturb other workflow policies relying on various record fields. For example, a workflow policy relying on the PR_POSTN_ID column to trigger an action does not work properly if this field is updated from a new batch assignment. If your deployment uses Microsoft SQL Server, then this note does not apply.

                                                                          You can configure the Batch Assignment server component for your implementation by adjusting the appropriate parameters. The following table lists the parameters used by the Batch Assignment component that you can set.

                                                                          Use the following procedure to run batch assignment.

                                                                          To run batch assignment
                                                                          1. Navigate to the Administration - Server Management screen, and then the Jobs view.

                                                                          2. In the Jobs list, click New.

                                                                            A new record appears with a system-defined ID automatically populated with a status of Creating.

                                                                          3. In the new record, enter the relevant information for the new job.

                                                                            1. In the Component/Job field, select Batch Assignment.

                                                                            2. In the Requested Server field, type the name of the server on which you want to run this batch request.

                                                                            3. (Optional) If you want to run a specific rule group for this batch, then type the row ID of the assignment rule group for which you want rules processed for the AsgnKey parameter.

                                                                            4. Complete the rest of the fields for the new record, if needed.

                                                                          4. In the Job Parameters list, click New to create a new record, and enter relevant information for the assignment object that you want to assign as part of this batch request.

                                                                            1. In Name field, click the select button.

                                                                            2. In the Job Parameters dialog box, select Assignment Object Name, and then click OK.

                                                                            3. In the Value field, enter the name of the assignment object for the parameter.

                                                                              Use the exact name found in Siebel Tools, such as Service Request or Order (Sales Credit Assignment).
                                                                              Note: Because batch assignment cannot run more than one assignment object per batch, run batch assignment on only one assignment object for each batch.
                                                                          5. While still in the Job Parameters list, click New to create a new record so that Assignment Manager uses the Object Where Clause parameter to limit the number of rows processed at one time.

                                                                            1. In Name field, click the select button.

                                                                            2. In the Job Parameters dialog box, query for ObjWhereClause, click Go, and then click OK.

                                                                            3. In the Value field, enter a WHERE clause to select the object instance that you want to process; the WHERE clause can include up to 100 characters.

                                                                              For example, to select object instances beginning with ibm, type:

                                                                              WHERE name like 'ibm%'

                                                                              Note: If you leave the Value field blank, then all object instances are selected. However, it is strongly recommended that you limit the number of rows that Assignment Manager processes, to make sure that sufficient rollback space is available.

                                                                              For more information about using the object WHERE clause, see Setting the Log Level of Siebel Assignment Manager Events.

                                                                          6. (Optional) If you want to enable Contact Denormalization for batch assignment, then add two more component job parameter records with values from the following table.

                                                                            Parameter Name

                                                                            Value

                                                                            Assignment Object Name

                                                                            Contact Denormalization

                                                                            Assignment Mode

                                                                            Denorm

                                                                          7. (Optional) If you want to save changes to the database during batch processing, then add another component job parameter, as follows:

                                                                            1. In Name field, click the select button.

                                                                            2. In the Job Parameters dialog box, query for Batch Size, and then click Go.

                                                                            3. In the Value field, enter the number of objects to assign before committing each batch.

                                                                          8. In the Job Detail form, click the menu button and choose Start Job.

                                                                            Note: Monitor the performance of Batch Assignment and increase or decrease the number of running tasks to obtain optimal performance.

                                                                            Running Batch Assignment Using the Server Manager Command-Line Interface

                                                                            This topic is part of About Running Batch Assignment.

                                                                            You can run batch assignment by running the Batch Assignment (AsgnBatch) component from the Server Manager command-line interface (srvrmgr), using the parameters described in Modifying the Siebel Assignment Manager Component Parameters.

                                                                            For more information about using the Server Manager command-line interface, see Siebel System Administration Guide.

                                                                            You can have a batch assignment task load only a particular group of rules into memory by specifying two job parameters in the request:

                                                                            • Use Key Value = Rule_Group

                                                                            • Actual Assignment Key = Rule_Group_ID

                                                                            For example, the following command tells Assignment Manager to only look at or modify candidates on the team whose rule group ID is 1-34XD4 and runs only those rules that are a part of that rule group.

                                                                            start task for comp asgnbatch with asgnobjname = "Activity", usekeyval = "Rule 
                                                                            Group", ActualAsgnKey = "1-34XD4"
                                                                            

                                                                              About Running Multiple Instances of Siebel Assignment Manager in Batch Mode

                                                                              This topic is part of About Running Batch Assignment.

                                                                              When there are many objects that must be assigned, you can run multiple instances of Assignment Manager in batch mode to improve performance. First, develop a strategy for specifying multiple batches using the Object Where Clause parameter in the Batch Assignment component. Then, start multiple instances of batch assignment specifying the appropriate Object Where Clause value for each instance.

                                                                              For example, you can run one instance of batch assignment for accounts that changed today and a different instance of batch assignment for accounts that changed yesterday. Use the Object Where Clause parameter to specify the following:

                                                                              • For the batch that processes accounts changed today:
                                                                                Object Where Clause: WHERE LAST_UPD = SYSDATE
                                                                                
                                                                              • For the batch that processes accounts changed yesterday:
                                                                                Object Where Clause: WHERE LAST_UPD = SYSDATE - 1
                                                                                
                                                                                Note: These examples use a nonindexed field: LAST_UPD. It is recommended, however, that you use indexed fields for object WHERE clause statements. Also, use the appropriate database datetime functions to determine the current date and time, depending on the database that you are using. This example uses SYSDATE, which is specific to Oracle Database datetime functions.

                                                                              To process mutually exclusive sets of records when running multiple instances of Assignment Manager simultaneously for the same assignment object, specify an Object Where Clause for each assignment task. You can also distribute the tasks on multiple Siebel Servers to enhance performance.

                                                                                When Not to Run Multiple, Simultaneous Batch Jobs

                                                                                Do not run multiple, simultaneous batch jobs in the following cases:

                                                                                • If multiple assignment batches are executed for the same object.

                                                                                Note: If multiple assignment batches are executed for the same object using workload criteria, then the results can potentially vary and might not be as desired.
                                                                                • If the batch jobs update rows on the same table or tables.

                                                                                • If one batch job updates records in a table or tables used by another batch job as input.

                                                                                • If the batch jobs use workload criteria to assign the same object.

                                                                                Examples of when you should not run multiple simultaneous batch jobs include:

                                                                                • Contact and Contact Denormalization, because the same tables are updated.

                                                                                • Account and Contact Denormalization, because Contact Denormalization uses Account team as input.

                                                                                • Opportunity and Contact Denormalization, because Contact Denormalization uses Opportunity team as input.

                                                                                  About Tuning Batch Assignment for Performance

                                                                                  This topic is part of About Running Batch Assignment.

                                                                                  If users experience slow response time while running Assignment Manager in batch mode, then review the settings on virus software installed on the applicable server. Implement one or more of the following settings to improve batch assignment performance:

                                                                                  • Virus scan only program files.

                                                                                  • Exclude all outbound files from virus scanning.

                                                                                  • Exclude the RDBMS directory from virus scanning. This directory contains MSB (Oracle message binary) files.

                                                                                  Make sure to run a full virus scan on all files during the weekend or off-peak time if the preceding settings were used.

                                                                                  You can also implement one or more of the following to boost batch performance in batch mode:

                                                                                  • Increase the BatchSize parameter, for example, set the batch size to 500 (the default is set to 100).

                                                                                    Increasing the parameter value increases the number of records that are processed within a transaction before a commit occurs, resulting in less resources used and faster assignment.

                                                                                    Note: Only set large batch sizes when there are no or very few users on the system.
                                                                                  • Create multiple instances of batch assignment (using WHERE clause statements). See About Running Multiple Instances of Siebel Assignment Manager in Batch Mode.

                                                                                  • Select a good filter.

                                                                                    Carefully choosing a filter reduces the time it takes to retrieve Object records.

                                                                                    Note: Use indexed field or fields for comparison in the object WHERE clause, such as Name for Account and Opportunity, or Last Name for Contacts.
                                                                                  • Use better logic.

                                                                                  For example, if you want to run Account Assignment based on account name, then you can create multiple batches so that the first batch starts with names starting with the letter C through K, and the second batch starts with the names starting with the letter L. Optionally, additional batches might be created starting with later letters.

                                                                                  Consider the following logic for the object WHERE clause:

                                                                                  WHERE NAME > 'B' AND NAME < 'L'
                                                                                  

                                                                                  Although this WHERE clause causes the database to retrieve account records with names starting with the letter C through K, the clause specifies that if accounts starting with the letter M through Z are encountered, they are passed on the first round because the values are greater than B. However, in the second round, these records are then eliminated by the database as unneeded, because there is a cap of account names less than L.

                                                                                  It is better logic to use this object WHERE clause instead:

                                                                                  WHERE NAME < 'L' AND NAME > 'B'
                                                                                  

                                                                                  By switching the order of the conditions, the extra parsing required by the database in the second round is eliminated because most of the names start with a letter greater than B.

                                                                                    Running Mobile Assignment

                                                                                    Use mobile assignment to reassign people based on changes uploaded by Mobile Web Clients. Siebel Assignment Manager assigns objects after a Mobile Web Client synchronizes with the Siebel Server and uploads assignment requests or any changes to objects and assignment rules. Depending on the configuration of Generate Triggers, the Workflow Monitor detects these changes and activates Assignment Manager to dynamically reassign affected objects.

                                                                                    Note: If a Mobile Web Client sends an assignment request to the Siebel Server while running mobile assignment, then the request is sent as an asynchronous request. Because of this, the request does not override the Keep Manual Assign property.

                                                                                    To run mobile assignment

                                                                                    1. Be sure that you have run the Generate Triggers server component.

                                                                                      For instructions, see Generating Triggers for Dynamic Assignment Using the GUI.

                                                                                    2. Start the Workflow Monitor Agent.

                                                                                      For instructions, see Starting Workflow Monitor Agent for Dynamic Assignment Using the Server Manager Command-Line Interface.

                                                                                      Note: If you are running interactive assignment, then make sure that the Server Request Broker server component is running. For instructions on checking the status of a server component, see Siebel System Administration Guide.

                                                                                      About Running Assignment Manager in Reporting Mode

                                                                                      Reporting mode provides the assignment administrator the ability to perform trial assignments and what-if analysis. When you are running Assignment Manager in reporting mode, assignments are written into results tables, known as reporting tables, rather than into the actual database tables. Reporting mode allows the administrator the opportunity to preview possible assignment before actual assignments are made.

                                                                                      For more information about reporting tables, see Configuring Siebel Assignment Manager to Use Reporting Tables and Columns.

                                                                                      You can run Assignment Manager in reporting mode either from the GUI or using the Server Manager command-line interface (srvrmgr). In either mode, you initiate a reporting mode request using either the Assignment Manager (AsgnSrvr) or the Batch Assignment (AsgnBatch) server component. You pass the Reporting Mode (RptMode) parameter, specifying one of the following values:

                                                                                      • Snapshot. Reporting is turned on. Assignment Manager performs assignment validations and writes resulting candidates to the reporting team tables.

                                                                                      • Delta. Reporting is turned on. Assignment Manager performs assignments, compares existing assignment team table and writes the results to the reporting team tables.

                                                                                      For example, the following command tells Assignment Manager to read from and write to only the reporting tables where the reporting team tables store a snapshot of the results:

                                                                                      start task for comp asgnsrvr with asgnobjname="Opportunity", objwhereclause="where 
                                                                                      name='James Opty'", rptmode="Snapshot"
                                                                                      
                                                                                      Note: By default, reporting is turned off. That is, when the Regular Assignment parameter is set to FALSE, no assignment takes place. However, irrespective of whether reporting is turned on or off, Assignment Manager can write evaluation results to actual assignment tables.

                                                                                      Using Siebel Tools, you specify key columns through properties on the assignment object. Assignment Manager reads these key columns to differentiate between candidates. Assignment Manager stamps these key values; that is, Assignment Manager sets the key value for each record, to keep track of what employees, positions, or organizations are added in a specific assignment execution.

                                                                                      Then, when submitting an assignment request, you can pass one of the following values for stamping:

                                                                                      • Person Key Value (PersonKeyVal) for employees and positions

                                                                                      • Organization Key Value (OrgKeyVal) for organizations

                                                                                      For example, the following command tells Assignment Manager to execute in reporting delta mode, where it merges the team from this run to the current team in the regular tables, and then writes the results to the reporting table. However, it only executes the rule against the Account 1 account, updates or changes positions that have the key value 12-RG2, and stamps all new positions with the value 12-RG2.

                                                                                      start task for comp asgnsrvr with asgnobjname="Account", objwhereclause="where 
                                                                                      NAME like 'Account 1'", UseKeyVal="Key Value", PersonKeyVal="12-RG2", 
                                                                                      RptMode="Delta"
                                                                                      

                                                                                      The Key Column in the S_ACCNT_POSTN results table holds either the rule group ID or a key value to distinguish candidates. You use the UseKeyVal parameter to indicate whether Assignment Manager uses a key value to filter and stamp candidates. The choices for UseKeyVal are:

                                                                                      • Rule Group. Assignment Manager automatically using the rule group from which a particular candidate passes and stamps that rule group ID on the key column that you defined.

                                                                                      • Key Value. User supplies either a Person Key Value (for employees and positions), or an Organization Key Value (for organizations) along with the request, then Assignment Manager stamps that value.

                                                                                      For example, assume that you run AsgnSrvr with Rule Group 1 (RG1), and the result is that Position 1 is added to Account 1. Next, you run Rule Group 2 (RG2) and Position 2 is added to Account 1. If you do not want a second AsgnSrvr run to touch or change anything from the first run, then you run AsgnSrvr with the UseKeyVal parameter set to either Rule Group or Key Value.

                                                                                      • If UseKeyVal = Rule Group, then Assignment Manager saves the rule group ID in the Key Column property in the Assignment Object Extension object. In addition, Assignment Manager does not delete any positions whose key column value does not match the rule group ID.

                                                                                      • If UseKeyVal = Key Value, then you must also pass along another parameter as well: either PersonKeyVal or OrgKeyVal.

                                                                                        In this case, because you are working with account positions, Assignment Manager passes the PersonKeyVal parameter.

                                                                                      When you run AsgnSrvr again, you might run the following command:

                                                                                      start task for comp asgnsrvr with asgnobjname="Account", objwhereclause="where 
                                                                                      NAME like 'Account 1'", UseKeyVal="Key Value", PersonKeyVal="12-RG2", 
                                                                                      RptMode="Delta"
                                                                                      

                                                                                      Later, if you make changes to Rule Group 2 and want to run another assignment request, then you can use the same command. Only the positions on the account team with a key value of 12-RG2 change.

                                                                                      For more information about using the Server Manager command-line interface, see Siebel System Administration Guide.

                                                                                        About Siebel Assignment Manager Rule Cache Files

                                                                                        The rule cache file contains the most recent copy of assignment rule, criteria, candidates, skills, and skill items information from the last time assignment rules were released. A cache file is re-created every time assignment rules are released or when skills have expired.

                                                                                        Depending on the mode in which you run Assignment Manager, the following cache files are used:

                                                                                        • rulecache.dat

                                                                                          This file contains information about all active rules in the database. When Assignment Manager runs in default mode, this file is used by each of the three assignment operation modes (interactive, batch, and dynamic assignment).

                                                                                        • rulecache_SERVERNAME.dat

                                                                                          This file (where SERVERNAME is the name of the Siebel Server) contains information about the rules in the rule groups assigned to a particular Siebel Server and is used when server key mappings are defined.

                                                                                        • batchrulecache_RULEGROUPID.dat

                                                                                          When batch assignment runs in rule group mode, you can specify whether it uses the default mode cache file (rulecache.dat) or a separate cache file by way of the Independent Rule Group Cache parameter.

                                                                                          • If you set this parameter to FALSE, then it uses the default mode cache file (see rulecache.dat previously described in this topic).

                                                                                          • If you set this parameter to TRUE, then it creates a separate cache file, batchrulecache_RULEGROUPID.dat (where RULEGROUPID is the Assignment Key parameter you passed along with the request).

                                                                                            There can be multiple cache files of this type, because you can use batch assignment in rule group mode for different rule groups. This rule group cache file is a smaller file, therefore providing better performance than the default mode cache file. Performance is better because the batchrulecache_RULEGROUPID.dat file only has information about some rules for some rule groups, while the rulecache.dat file has information about all active rules for all rule groups.

                                                                                            Note: The default value of the Independent Rule Group Cache parameter is TRUE because this setting gives better performance. Thus, if batch assignment is running in default mode (that is, the Assignment Key parameter is not supplied), then the value of this parameter is excluded.

                                                                                        About Using External Components to Invoke Siebel Assignment Manager

                                                                                        You can make assignments by invoking Siebel Assignment Manager from within a Siebel workflow process, business service, or Siebel script interface.

                                                                                        Assignment Manager provides the ability of sharing inputs and outputs (supports rerouting of objects) with an external component. Assignment Manager can return qualified or assigned candidates along with their scores in the form of a hierarchical property set. A property set is a set of name-value pairs that are used by various Siebel components to pass information back and forth between them.

                                                                                        This feature is particularly useful in a workflow process. For example, a business service step in a workflow process might call on Assignment Manager (with the assignment mode set to Match) to evaluate potential candidates and return the set of qualified candidates in a property set along with their scores. Then, the workflow process can, based on other business logic, decide the set of candidates that are assigned.

                                                                                        Assignment Manager integration behavior is controlled by the Return Property Set parameter (ReturnPropSet). The following table lists the conditions for which Assignment Manager returns a property set or writes the results to the database.

                                                                                        Table

                                                                                        AsgnMode

                                                                                        Writes to Database

                                                                                        Returns Property Set

                                                                                        Synchronous:Match

                                                                                        If ReturnPropSet is FALSE, then it writes to database

                                                                                        No property set returned

                                                                                        If ReturnPropSet is TRUE, then it does not write to database

                                                                                        Qualified candidates returned

                                                                                        Synchronous:Assign

                                                                                        Writes to database

                                                                                        No property set returned

                                                                                        Synchronous:MatchAssign

                                                                                        Writes to database

                                                                                        If ReturnPropSet is TRUE

                                                                                        Asynchronous

                                                                                        Writes to database

                                                                                        No property set returned

                                                                                        The following is the structure of the output property set that Assignment Manager returns from a synchronous request, given the input parameter AsgnMode is set to Match or MatchAssign.

                                                                                        -- The Output Property Set --
                                                                                        
                                                                                        1. PropertyName: "ReqID",  Value: The request id Returned by SRM
                                                                                        
                                                                                        2. Child Property Set
                                                                                        
                                                                                           Child Property Set Type: "Employee", Value: "Row_id"
                                                                                              Name: "Score",  Value: Score of employee with highest score
                                                                                              Name: "ID",     Value: Row_Id of the employee
                                                                                           Child Property Set Type: "Employee", Value: "Row_Id"
                                                                                              Name: "Score",  Value: Score of employee with 2nd highest score
                                                                                              Name: "ID",     Value: Row_Id of the employee
                                                                                           Child Property Set Type: "Employee", Value: "Row_Id"
                                                                                              Name: "Score",  Value: Score of employee with 3rd highest score
                                                                                              Name: "ID",     Value: Row_Id of the employee
                                                                                        . . . 
                                                                                        
                                                                                           Child Property Set Type: "Position", Value: "Row_id"
                                                                                              Name: "Score",  Value: Score of the employee
                                                                                              Name: "ID",     Value: Row_Id of the employee
                                                                                           Child Property Set Type: "Position", Value: "Row_Id"
                                                                                              Name: "Score",  Value: Score of the employee
                                                                                              Name: "ID",     Value: Row_Id of the employee
                                                                                        . . . 
                                                                                        

                                                                                        About Tuning Siebel Assignment Manager for Performance in an IBM DB2 Deployment

                                                                                        If you are using IBM DB2, then, for performance reasons, periodically execute the REORG and update statistics utilities against all applicable tables for the assignment objects that you use.

                                                                                        For example, to enhance Siebel Assignment Manager performance before running batch or dynamic assignment for contact territory realignment (assuming that you are using the preconfigured Contact assignment object), execute REORG and update statistics against the related tables, such as the S_CON_TERR and S_POSTN_CON tables.

                                                                                        For the Account assignment object, consider evaluating the S_ORG_TERR and S_ACCNT_POSTN tables; and for the Opportunity assignment object, consider evaluating the S_OPTY_TERR and S_OPTY_POSTN tables; and so on. For applicable tables for other assignment objects (planned or in use), view the assignment object properties for those objects using Siebel Tools.

                                                                                        For more information about the REORG and update statistics utilities, see Implementing Siebel Business Applications on DB2 for z/OS and the Siebel Installation Guide for the operating system you are using.

                                                                                        About Using an Object WHERE Clause to Restrict the Number of Records Processed

                                                                                        The Object Where Clause (ObjWhereClause) parameter can be used to restrict which records are retrieved and processed. Standard SQL WHERE statements are used for the object WHERE clause, and can include up to 2048 characters when a Siebel Assignment Manager job is started using the command-line interface. However, when you start an Assignment Manager job from the GUI, you can only specify up to 100 characters. Also, when using wildcards in the object WHERE clause, make sure that you use the correct wildcard specific to your database.

                                                                                        The following object WHERE clause examples for the Account assignment object are provided as a guideline. Typically, assignment administrators work with their database administrator to generate optimal SQL for their implementation.

                                                                                        As an example, the following conditions for the Account assignment object can apply:

                                                                                        • Joins are allowed in the object WHERE clause. An example of a join is as follows:

                                                                                          Object Where Clause = where pr_postn_id in (select row_id from s_postn where 
                                                                                          name = 'Sales Rep') 
                                                                                          
                                                                                        • The object WHERE clause assumes that the base table is coming from the assignment object specified.

                                                                                          If you start batch assignment specifying the assignment object as Account and the object WHERE clause as where row_id = '1-232', then batch assignment attempts to assign only the row_id = '1-232' from the S_ORG_EXT table.

                                                                                        The following is an example of a batch assignment request using the command-line interface:

                                                                                        start task for comp asgnbatch with asgnobjname="Account", asgnmode="MatchAssign", 
                                                                                        objwhereclause="where name like 'B%'"
                                                                                        

                                                                                        This command batch assigns accounts starting with B.

                                                                                        Optionally, you can use the command-line interface and the object WHERE clause to run only a select number of assignment rule groups. The following is an example of this:

                                                                                        start task for comp asgnbatch with asgnobjname="Account", objwhereclause="where 
                                                                                        name like 'B%'", asgnkey="12-4DR56"
                                                                                        

                                                                                        In this example, 12-4DR56 is the row ID of an assignment rule group, and only the rules belonging to this group are evaluated when this parameter is passed in the request.

                                                                                        Note: When using the Server Manager command-line interface, use double quotation marks for the value of the ObjWhereClause parameter; otherwise, it is treated as a command-line option that changes the case.