13Configuring the Inbox

Planning for Inbox Configuration

Before you start configuring the Inbox, complete some research and planning.

This task is a step in Process of Setting Up and Configuring Inbox.

To plan an Inbox Configuration

  1. Select the feature object you want to integrate with the Inbox.

    For example, Employee Self-Service forms, Service Requests, Opportunities.

  2. Analyze how the object is currently accessed.

    Consider the following questions:

    1. Is the object accessed from the UI or from workflow processes? Is the object accessed from one place or many places?

    2. How is the object related to other objects? Do other objects depend on the object?

    3. What operations do users perform on the object?

  3. Determine the integration mechanism by considering what must happen to the object after it enters the Inbox.

    The types of integration with the Inbox include:

    • Inbound. It is typically triggered through workflows, eScripts, run-time events, or Workflow Monitor agents.

    • Outbound. It is typically triggered through workflows and eScripts.

    For example, if users access the feature object in other ways besides using the Inbox, then synchronize (inbound) the Inbox with the object’s current data. (See How the Inbox Interacts with the Feature Objects.)

  4. Consider the following best practices:

    • Interact with the Inbox only through the methods in the Universal Inbox business service.

      Do not edit the Inbox fields directly.

    • Do not customize the fields in the Inbox.

    • You cannot reactivate an Inbox item after the item has been deactivated for the owner.

      Instead, you must create a new Inbox item for that owner.

Creating Inbox Items

Inbox items are created by the Universal Inbox business service. Methods for this business service can be called using the following mechanisms:

  • Workflows

  • Workflow Monitor Agent

  • eScripting

  • Run-time events

The procedure in this topic shows how to configure the Siebel application to have Inbox items created in a certain screen or for a business component.

This task is a step in Process of Setting Up and Configuring Inbox.

To configure the Siebel application to create Inbox items

  1. Review the information about the Inbox business service, methods and workflows at the end of this chapter.

  2. Review the procedures for setting up Inbox types.

  3. Use one of the methods provided in the list in this topic to call the Inbox business service and create Inbox items.

Creating Inbox Types

Each Inbox item that is created is assigned an Inbox type. The Inbox type sets the following characteristics for the Inbox item:

  • Action Type

    The action type is the LOV type that determines the actions the user can choose to take on an Inbox.

    For example, there are the following LOV records for the UINBOX_STATUS_TYPE action type: Approved, Received, and Rejected. These records represent the actions that the user can take on an Inbox item of this type.

    Note: Because the effect of the action is set for each Item type, this LOV type can be used for many Item types, but the effect of approving or rejecting can be different for each Item type.
  • Category

    The category determines the icon that appears in the Category field for the item in the Inbox. The category field can be useful for querying and sorting Inbox item and Inbox type records. For information about editing the Category icon, see Configuring the Category Icon for the Inbox.

  • Replication Level

  • Integration Object Name

  • Business Object Name

  • Item Expiration Duration (Days)

  • Default Queue Duration (Days)

  • Views and SmartScripts that link to the Inbox item

  • Effects of the actions that the user can choose

This task is a step in Process of Setting Up and Configuring Inbox.

To create an Inbox type

  1. Navigate to the Administration - Inbox screen, then the All Inbox Types view.

  2. In the Inbox Types list, create a new record, and complete the necessary fields in the More Info form.

    Some fields are described in the following table.

    Field Comments

    Replication Level

    Select None if you do not want to download Inbox items to remote databases. Otherwise, see Configuring the Inbox for Use with Remote Databases.

    Integration Object Name

    Select a value if an integration object is associated with the Inbox type. This field has is special logic.

    Business Object Name

    Select the feature object that the destination view belongs to.

    Default Queue Duration (Days)

    Type the number of days that the item can stay in the Inbox before the Past Due check box appears selected. This field determines the due date for the item.

    Item Expiration Duration (Days)

    Type the number of days that the item can stay in the Inbox before the item expires. By default, no action is taken when the item expires. The Expiration field appears in the Submitted Items List view.

Setting Up Inbox Actions

Review the information in the following topics before setting up Inbox actions:

This task is a step in Process of Setting Up and Configuring Inbox.

    About Actions

    There are several circumstances where a business service method can be invoked to act on an Inbox item. A different action type is used for each. The following table summarizes these actions.

    Table Actions for Inbox Types

    Action Invokes the Specified Business Service Method When...

    Action Field Dropdown

    The user takes action (edits the Action field on the Inbox item).

    Name Drilldown

    The user drills down on the Name field of the item. You can also use the Views view to configure this hyperlink. For more information about how to use the Views view to configure this hyperlink, see Setting Up Inbox Links to Views and SmartScripts.

    Local Validation

    The user, in a remote database, drills down on the Name field of the item. For more information, see Configuring the Inbox for Use with Remote Databases.

    Initialize

    Do not use this action unless you are upgrading. This action is provided for backward compatibility. For more information, see Siebel Database Upgrade Guide.

    This action invokes the Initialize method of the Universal Business Service. It creates an Inbox item and starts the defined method.

    Transfer

    The user transfers the Inbox item to another user.

    Transfer Validation

    The user transfers the Inbox item to another user, and the Transferable field for the Inbox Type is selected.

    In the preconfigured Siebel application, the Transfer action and Transfer Validation action are implemented only for task inbox items (the Task business object). These actions invoke the Transfer method of the Task Administration business service. If you want to implement these actions for another inbox item, then you must create for the appropriate business object a custom method in a business service or a custom workflow process to perform the action, and then set up the action to invoke this custom method or workflow.

      About Deactivate Item Upon Finish and Deactivate Owners Upon Finish Fields

      An Inbox item can be deactivated in the following ways:

      • Deactivation can be done through one of the Universal Inbox Business Service methods.

      • The Inbox type can be set up so that if the business method in the Actions record finishes without error, then the item is deactivated. For an example of an Inbox action setup, see Examples of Inbox Triggers.

        The item can be deactivated for all the owners or only for owner who takes the action, as follows:

        • If Deactivate Item Upon Finish is set, then when one owner takes action on the item, the item is deactivated for all owners, and all owners see the item in their Completed Items List.

        • If Deactivate Owners Upon Finish is set, then when one owner takes action, the item is deactivated (and moved to the Submitted Items List) for that owner alone. The item remains in the other owners’ Inbox List.

      To set up an Inbox action

      1. Navigate to the Administration - Inbox screen, then the All Inbox Types view.

      2. In the Inbox Types list, select the Inbox Type, and navigate to the Actions view.

      3. In the Actions list, create a new record, and complete the necessary fields.

        Some fields are described in the following table.

        Field Comments

        Action

        Select a value for the action. For more information, see About Actions.

        Business Service

        Select the business service to use, for example, Workflow Process Manager.

        Business Service Method

        Select the method to invoke for the selected business service.

        Business Service Method Arguments

        Type the arguments required to invoke the business service method. For example, if you use the Workflow Process Manager business service, then your workflow must contain the properties with the same argument names.

        Deactivate Item Upon Finish

        Select the check box to deactivate the Inbox item for all owners, after the method has successfully completed.

        Deactivate Owners Upon Finish

        Select the check box to deactivate the Inbox item for one owner, after the method has successfully completed.

        In addition to the arguments passed in the Business Service Method Arguments field, the arguments in the following table are always passed to your custom business service or workflow.

        Argument Comments

        ActionLIC

        The value the user selected from the Action field. For example, if the Inbox Type has an Action Type of UINBOX_STATUS_TYPE, then the value of this argument is one of the following: Accepted, Received, or Rejected.

        BusinessObjectName

        The value of the business object name field for the Inbox type.

        Employee Login

        The login ID of the user who uses the Inbox type.

        InboxItemId

        The row ID of the Inbox item. This argument refers to the UInbox Item business component, which is used by the Submitted Items List view.

        InboxTypeId

        The row ID of the Inbox type.

        InboxTypeName

        The name of the Inbox type.

        IntegrationObjectName

        The value of the integration about name for the Inbox type. If the Inbox type has an integration object name, then the value of this field is passed in this argument.

        ObjectId

        The row ID of the business object name that is managed by the Inbox type.

        Note: This row ID is not the standard Object ID property that is available on every workflow.

        OwnerInfoId

        The row ID of the Inbox Item Task. This argument refers to the UInbox Item Task business component, which is used by the Inbox Items List and Completed Items List view.

      Note: The Inbox Action passes the row ID of the feature object in ObjectId. Within a workflow process, the ID of the primary business component on which the process is based must be stored in the process properties Object ID. Note the space character in the Object ID process property name. Therefore, the workflow process first copies the content of ObjectId to Object ID, if necessary.

        Configuring the Inbox for Use with Remote Databases

        Inbox items can be downloaded to regional and local databases. The Inbox functionality downloads Inbox item records but does not download the underlying feature object.

        Caution: The person who configures the Inbox must make sure that the feature object is downloaded. If the feature object is not downloaded, then remote users cannot view the underlying feature object in the Inbox item. For example, you must make sure that the service request records that the Inbox item points to are downloaded to the local database.

        If your business processes require your users to download Inbox items to remote databases, then set up a Local Validation action. This action invokes a business service method that you define when a remote user attempts to view the underlying feature object.

        The method that you define must return an argument to the Inbox, to tell the Inbox that the feature object is not present. The Inbox then displays an error message to the user and prevents the drilldown.

        This task is a step in Process of Setting Up and Configuring Inbox.

        To configure the Inbox for remote use

        1. Define a business service with a business service method that does the following:

          1. Accepts the following arguments from the Inbox:

            • InboxItemId

            • OwnerInfoId

            • ObjectId

            • InboxTypeName

            • BusinessObjectName

            • IntegrationObjectName

            • Name-value pairs from the Inbox Parameters tables

          2. Looks for the feature object, and, if the feature object is found, then sets the output argument LocalValidationError to N.
        2. Navigate to the Administration - Inbox screen, then the All Inbox Types view.

        3. In the Inbox Types list, select the type record.

        4. In the More Info form, set the Replication Level.

          Values include:

          • All. Set this value to download Inbox items to regional and local databases.

          • Regional. Set this value to download Inbox items to regional databases only.

        5. Navigate to the Actions view.

          In the Actions list, create a new record, and complete the necessary fields.

          Some fields are described in the following table.

          Field Comments

          Action

          Select Local Validation.

          Business Service

          Select the business service that you defined in step 1.

          Business Service Method

          Select the business service method that you defined in step 1.

          Business Service Method Arguments

          Type the arguments for the business service method.

        Setting Up Inbox Approval Translations

        If your Siebel application is multilingual, then create a translation record for each language.

        Use the Translations view to specify Inbox type names in other languages.

        This task is a step in Process of Setting Up and Configuring Inbox.

        To set up an Inbox translation

        1. Navigate to the Administration - Inbox screen, then the All Inbox Types view.

        2. In the Inbox Types list, select the approval record, and navigate to the Translations view.

        3. In the Translations list, create a new record, and complete the necessary fields.

          Some fields are described in the following table.

          Field Comments

          Display Name

          Type the display name for translation of the Inbox type Name.

        Configuring the Toggle Applets for Inbox Views

        The Inbox supports dynamic toggle applets in three types of views. The following table shows these views.

        Table Dynamic Toggle Applets for Inbox

        Views Supporting Dynamic Toggle Applet Toggle Applet Name Corresponding Business Component for Views

        Inbox items detail views

        UInbox Item Task Toggle List Applet

        UInbox Item Task

        Completed items detail views

        Submitted items detail views

        UInbox Item Toggle List Applet

        UInbox Item

        When you set up a dynamic toggle applet, you determine which type of form applet appears in the lower portion of the Inbox Detail views. Typically, the applet that is based on the business object of the underlying feature object is the most suitable applet.

        For example, if you want to set up the Inbox for service request approvals, then you can create a dynamic toggle applet that displays the Service Request Detail Applet form applet when the business object for the Inbox type is Service Requests. Then you can create a link between the Inbox business components and the Service Request business component, so that the service request information can appear in the Inbox detail views.

        To configure dynamic toggle applets for the Inbox

        1. In Siebel Tools, create an applet child object for the appropriate toggle applet, as follows:

          1. Create a form applet. Make sure that an Applet Web Template is defined for the Edit mode of this applet.

          2. Set the value of the Auto Toggle Field to Item Type BusObj Name.

          3. Set the value of the Auto Toggle Value field to the business object of the Inbox type. For example, set the value to Service Request.

          For information about which toggle applet to create a child object for, see the table above. For more information about how to configure toggle applets, see Configuring Siebel Business Applications.

        2. Create links between the business component of the feature object and the UInbox Item and UInbox Item Task business components by completing the following steps:

          1. Create a link record.

          2. Complete the fields in the following table.

            Field Comments

            Name

            Displays the link name after the Parent Business Component and Child Business Component fields are completed.

            Parent Business Component

            Select UInbox Item Task or UInbox Item.

            Child Business Component

            Select the business component for the dynamic toggle applet, for example, Service Request.

            Source Field

            Type the Item Object ID.

            Destination Field

            Type the ID of the feature object to appear in the dynamic toggle applet; usually this field is ID.

          For more information about creating links, see Configuring Siebel Business Applications.
        3. Associate the business component for the dynamic toggle applet with the two Inbox business objects UInbox ItemTask and UInbox Item History. For each link, perform the following steps:

          1. Create a business object component record.

          2. Complete the fields in the following table.

            Field Comments

            Name

            Type the name of the business component for the dynamic toggle applet, for example, Service Request.

            Link

            Type the name of the link from Step 2.

        Configuring the Category Icon for the Inbox

        You can change and add to the icons that appear in the Category field by editing the Inbox Category bitmap category. For more information about bitmap categories and working with images, see Configuring Siebel Business Applications.

        To add Category icon for a Category field value

        1. Add the icon image file, in Graphic Interchange Format (GIF), to the images directory.

          Base the size of your image on the existing Category icons in this directory, for example, icon_approval.gif.

        2. In Siebel Tools, create a bitmap record for the Inbox Category bitmap category object, and complete the fields in the following table.

          Field Comments

          Name

          Type the language-independent code for the value, from the UINBOX_INBOX_TYPE LOV, for example, CAMPAIGNS.

          Bitmap

          Type the name of the file from Step 1.

        Setting the Log File for Troubleshooting

        For troubleshooting problems with the Inbox, set the Inbox log file to a verbose level. For information about log files, see Siebel System Monitoring and Diagnostics Guide.

        To set the level of the Inbox log file for troubleshooting

        • In Siebel Tools, set the Log Level for the Inbox log file (alias of InboxLog) to 5.

        Universal Inbox Business Service Methods

        This topic discusses the Universal Inbox business service and lists its methods.

        The following definitions apply to the Universal Inbox Business Service:

        • Inbox item and Inbox item owner. For most of this chapter, the term Inbox item has been used synonymously with Inbox item owner. But to understand how the methods for the Universal Inbox business service work, it is necessary to distinguish between the Inbox item and the inbox item owner. This distinction follows:

          • The Inbox item. The record that appears in the Submitted Items views.

          • The Inbox item owner. The record that appears in Inbox Items and Completed Items views. Owner information is contained in this record. Typically there are one or more Inbox item owner records associated with one Inbox item record.

        • Name-value pairs. In addition to the predefined fields that belong to the Inbox item records (such as, type name, expiration date), there is provision to store additional data with the Inbox item in the form of name-value pairs. The name-value pairs are typically used to record data specific to the underlying feature object. The name-value pairs are stored in the Inbox Parameters table associated with the Inbox item.

        The following figure shows the relationship between Inbox items and Inbox item owners. How Inbox Interacts with Feature Objects

        The Inbox Item record, and its Name and Value parameters, appears in the Submitted Items views. The Inbox Item Owner records appear in the Inbox Items and Completed Items views.

        The following table lists the methods for the Universal Inbox business service.

        Table Universal Inbox Business Service Methods

        Method Name Description

        CreateInboxEx

        Creates an Inbox item and an Inbox item owner.

        CreateInbox

        Creates multiple Inbox items and multiple Inbox item owners.

        CreateInboxItem

        Creates multiple Inbox items.

        CreateInboxOwner

        Creates multiple Inbox item owners for an Inbox item.

        IsInboxItemExisted

        Checks if an Inbox item exists.

        GetInboxItemInfo

        Returns field values from an Inbox item and, if GetParams is true, then returns the name-value pairs for the Inbox item.

        GetInboxParamInfo

        Returns the name-value pairs for an Inbox item.

        GetInboxOwnerInfoEx

        Returns field values for an Inbox item owner.

        GetInboxOwnerInfo

        Returns field values for multiple Inbox item owners for an Inbox item, and returns information about the action status of the items.

        SetInboxParamInfo

        Inputs name-value pairs for an Inbox item.

        UpdateInboxItemInfo

        Updates field values for an Inbox item.

        DeactivateInboxItem

        Deactivates all Inbox item owners for an Inbox item and updates field values for that Inbox item.

        DeactivateInboxOwner

        Deactivates an Inbox item owner, and updates the field values for that Inbox item owner.

        UpdateInboxOwnerInfo

        Updates field values for an Inbox item owner.

        DeleteInboxItem

        Deletes an Inbox item and all associated Inbox item owners.

        Initialize

        Creates an Inbox item and starts the business service method defined in the Initialize action. This method is intended for use only by those upgrading from the 7.5.3 version of the Siebel application.

        RouteInboxItem

        Deactivates existing Inbox item owners and creates new Inbox item owners for an Inbox item. This method is intended for use only by those upgrading from the 7.5.3 version of the Siebel application. For more information about this method, see Siebel Database Upgrade Guide.

          CreateInboxEx Method

          This method creates an Inbox item and an Inbox item owner. The name-value pairs are put into the Inbox Parameters table.

          Input Arguments

          The following information lists the input arguments for this method.

          Table CreateInboxEx Method, Property Set, Type of InboxInfo

          Property Name Required Comments

          InboxName

          Yes

          This property is the name for the Inbox.

          InboxTypeName

          Yes

          This property is the name of Inbox type.

          InboxPartyId

          Yes

          This property is the party ID of the Inbox owner.

          Comments

          No

          None.

          ObjectId

          Yes

          This property is the object ID of the Inbox item.

          InboxExpirationDuration

          No

          The duration is expressed in seconds.

          InboxUTCExpirationTS

          No

          This property is the UTC timestamp.

          ReplicationLevel

          No

          This property indicates whether this Inbox item must be routed when using remote databases. Select one of the following options:

          • All. Indicates HQ, Regional, Local.

          • Regional. Indicates HQ, Regional.

          • None. Indicates HQ.

          OwnerPartyId

          Yes

          This property is the party ID of the Inbox owner.

          OwnerPriority

          No

          None.

          OwnerQueueDuration

          No

          The duration is expressed in seconds.

          OwnerUTCStartWorkingTS

          No

          This property is the UTC timestamp.

          OwnerActionLIC

          No

          This property is the language-independent code.

          OwnerUTCDueTS

          No

          This property is the UTC timestamp.

          Output Arguments

          The following table lists the output arguments for this method.

          Table CreateInboxEx Method, Property Set

          Property Name Comments

          InboxItemId

          This property is the row ID of the newly-created Inbox item.

          OwnerInfoId

          This property is the information ID for the Inbox owner.

            CreateInbox Method

            This method creates multiple Inbox items and multiple Inbox item owners. The name-value pairs are put into the Inbox Parameters table.

            Input Arguments

            The following information lists the input arguments for this method for the property set.

            Table CreateInbox Method, Property Set, Type of InboxInfo

            Property Name Required Comments

            Child properties

            No

            Multiple children are allowed. See the following table.

            The following table lists the input arguments for this method for the child property set.

            Table CreateInbox Method, Child Property Set, Type of InboxItemInfo

            Property Name Required Comments

            InboxName

            Yes

            This property is the name for the Inbox.

            InboxTypeName

            Yes

            This property is the name of Inbox type.

            InboxPartyId

            Yes

            This property is the party ID of the Inbox owner.

            ObjectId

            No

            This property is the object ID of the inbox item.

            InboxExpirationDuration

            No

            The duration is expressed in seconds.

            InboxUTCExpirationTS

            No

            This property is the UTC timestamp.

            Comments

            No

            None.

            Child properties

            No

            Multiple children are allowed. See the following table.

            The following table lists the input arguments for this method for the grandchild property set.

            Table CreateInbox Method, Grandchild Property Set, Type of InboxOwnerInfo

            Property Name Required Comments

            OwnerPartyId

            Yes

            This property is the party ID of the Inbox owner.

            OwnerPriority

            No

            None.

            OwnerQueueDuration

            No

            The duration is expressed in seconds.

            OwnerUTCDueTS

            No

            This property is the UTC timestamp.

            OwnerUTCStartWorkingTS

            No

            This property is the UTC timestamp.

            OwnerActionLIC

            No

            This property is the language-independent code.

            Output Arguments

            The following table lists the output arguments for this method for the property set.

            Table CreateInbox Method, Property Set

            Property Name Comments

            Child properties

            Multiple children can be returned. See the following table.

            The following table lists the output arguments for this method for the child property set.

            Table CreateInbox Method, Child Property Set, Type of ItemOutput

            Property Name Comments

            InboxItemId

            This property is the row ID of the newly-created Inbox item.

            Child properties

            Multiple children can be returned. See the following table.

            The following table lists the output arguments for this method for the grandchild property set.

            Table CreateInbox Method, Grandchild Property Set, Type of OwnerInfoOutput

            Property Name Comments

            OwnerPartyId

            This property is the party ID of the Inbox owner.

            OwnerInfoId

            This property is the information ID of the Inbox owner.

              CreateInboxItem Method

              This method creates multiple Inbox items. The name-value pairs are put into the Inbox Parameters table.

              Input Arguments

              The following information lists the input arguments for this method.

              Table CreateInboxItem Method, Property Set, Type of InboxItemInfo

              Property Name Required Comments

              InboxName

              Yes

              This property is the name for the Inbox.

              InboxTypeName

              Yes

              This property is the name of Inbox type.

              InboxPartyId

              Yes

              This property is the party ID of the Inbox owner.

              ObjectId

              Yes

              This property is the object ID of the inbox item.

              InboxExpirationDuration

              No

              The duration is expressed in seconds.

              InboxUTCExpirationTS

              No

              This property is the UTC timestamp.

              Comments

              No

              None.

              ReplicationLevel

              No

              This property indicates whether this Inbox item must be routed when using remote databases. Select one of the following options:

              • All. Indicates HQ, Regional, Local.

              • Regional. Indicates HQ, Regional.

              • None. Indicates HQ.

              Output Arguments

              The following table lists the output arguments for this method.

              Table CreateInboxItem Method, Property Set, Type of ItemOutput

              Property Name Comments

              InboxItemId

              This property is the row ID of the newly-created Inbox item.

                CreateInboxOwner Method

                This method creates multiple Inbox item owners for an Inbox item. If DeactivateOthers is true, then the method deactivates the current active Inbox item owners before creating new owners.

                The method searches as follows:

                1. InboxItemId

                2. ObjectId + InboxTypeName

                Input Arguments

                The following information lists the input arguments for this method for the property set.

                Table CreateInboxOwner Method, Property Set

                Property Name Required Comments

                InboxItemId

                No

                This property is the row ID of the newly-created Inbox item.

                ObjectId

                No

                This property is the object ID of the inbox item.

                InboxTypeName

                No

                This property is the name of Inbox type.

                DeactivateOthers

                No

                This property deactivates the current active Inbox item owners before creating new owners when the value is Yes (the default).

                Child properties

                No

                Multiple children are allowed. See the following table.

                The following table lists the input arguments for this method for the child property set.

                Table CreateInboxOwner Method, Child Property Set, Type of InboxOwnerInfo

                Property Name Required Comments

                OwnerPartyId

                Yes

                This property is the party ID of the Inbox owner.

                OwnerPriority

                No

                None.

                OwnerQueueDuration

                No

                The duration is expressed in seconds.

                OwnerUTCDueTS

                No

                This property is the UTC timestamp.

                OwnerUTCStartWorkingTS

                No

                This property is the UTC timestamp.

                OwnerActionLIC

                No

                This property is the language-independent code.

                Output Arguments

                The following table lists the output arguments for this method for the property set.

                Table CreateInboxOwner Method, Property Set, Type of ItemOutput

                Property Name Comments

                InboxItemId

                This property is the row ID of the newly-created Inbox item.

                DeactivateOthers

                This property indicates whether or not the other owners have been deactivated.

                Child properties (OwnerInfoOutput)

                Multiple children can be returned. See the following table.

                The following table lists the output arguments for this method for the child property set.

                Table CreateInboxOwner Method, Child Property Set, Type of OwnerInfoOutput

                Property Name Comments

                OwnerPartyId

                This property is the party ID of the Inbox owner.

                OwnerInfoId

                This property is the information ID of the Inbox owner.

                  IsInboxItemExisted Method

                  This method checks if an Inbox item exists.

                  The method searches as follows:

                  1. InboxItemId

                  2. ObjectId + InboxTypeName

                  Input Arguments

                  The following information lists the input arguments for this method.

                  Table IsInboxItemExisted Method, Property Set

                  Property Name Required Comments

                  InboxItemId

                  No

                  This property is the row ID of the Inbox item.

                  ObjectId

                  No

                  This property is the object ID of the Inbox item.

                  InboxTypeName

                  No

                  This property is the name of Inbox type.

                  Output Arguments

                  The following table lists the output arguments for this method.

                  Table IsInboxItemExisted Method, Property Set

                  Property Name Comments

                  IsInboxItemExisted

                  A 1 indicates the Inbox item exists, and a 0 indicates it does not exist.

                  InboxItemId

                  This property is the row ID of the Inbox item.

                  HasActiveOwners

                  A 1 indicates the Inbox item has active owners, and a 0 indicates it does not have active owners.

                    GetInboxItemInfo Method

                    This method returns field values from an Inbox item and, if GetParams is true, then returns the name-value pairs for the Inbox item.

                    The method searches as follows:

                    1. InboxItemId

                    2. ObjectId + InboxTypeName

                    Input Arguments

                    The following information lists the input arguments for this method.

                    Table GetInboxItemInfo Method, Property Set

                    Property Name Required Comments

                    InboxItemId

                    No

                    This property is the row ID of the Inbox item. The ID is not updated, but is used for searching.

                    ObjectId

                    No

                    This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                    InboxTypeName

                    No

                    This property is the name of Inbox type. It is not updated, but is used for searching.

                    GetParams

                    No

                    This property returns all name-value pairs if the value is Y.

                    Output Arguments

                    The following table lists the output arguments for this method.

                    Table GetInboxItemInfo Method, Property Set

                    Property Name Comments

                    ObjectId

                    This property is the object ID of the Inbox item.

                    InboxTypeId

                    This property is the ID for the Inbox type.

                    InboxTypeName

                    This property is the name of Inbox type.

                    InboxName

                    This property is the name for the Inbox.

                    InboxPartyId

                    This property is the party ID of the Inbox owner.

                    Comments

                    None.

                    InboxUTCExpirationTS

                    This property is the UTC timestamp.

                    Name - value pairs

                    None.

                      GetInboxParamInfo Method

                      This method returns the name-value pairs for an Inbox item.

                      The method searches as follows:

                      1. InboxItemId

                      2. ObjectId + InboxTypeName

                      Input Arguments

                      The following information lists the input arguments for this method.

                      Table GetInboxParamInfo Method, Property Set

                      Property Name Required Comments

                      InboxItemId

                      No

                      This property is the row ID of the Inbox item. The ID is not updated, but is used for searching.

                      ObjectId

                      No

                      This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                      InboxTypeName

                      No

                      This property is the name of Inbox type. It is not updated, but is used for searching.

                      Output Arguments

                      The following table lists the output arguments for this method.

                      Table GetInboxParamInfo Method, Property Set

                      Property Name Comments

                      Name - value pairs

                      None.

                        GetInboxOwnerInfoEx Method

                        This method returns field values for an Inbox item owner. If the Inbox item owner is in the screen-active business component record, then the method returns the values from the screen-active business component.

                        The method searches as follows:

                        1. OwnerInfoId

                        2. InboxItemId, OwnerPartyId

                        3. ObjectId, InboxTypeName, OwnerPartyId

                        Input Arguments

                        The following information lists the input arguments for this method.

                        Table GetInboxOwnerInfoEx Method, Property Set

                        Property Name Required Comments

                        ObjectId

                        No

                        This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                        InboxTypeName

                        No

                        This property is the name of Inbox type. It is not updated, but is used for searching.

                        OwnerPartyId

                        No

                        This property is the party ID for the Inbox owner. It is not updated, but is used for searching.

                        InboxItemId

                        No

                        This property is the row ID of the Inbox item. It is not updated, but is used for searching.

                        OwnerInfoId

                        No

                        This property is the information ID for Inbox owner. It is not updated, but is used for searching.

                        Output Arguments

                        The following table lists the output arguments for this method.

                        Table GetInboxOwnerInfoEx Method, Property Set

                        Property Name Comments

                        OwnerInfoId

                        This property is the information ID for Inbox owner.

                        OwnerPriority

                        This property is the owner priority for the Inbox item task.

                        OwnerActionLIC

                        This property is the language-independent code.

                        OwnerUTCDueTS

                        This property is the UTC timestamp.

                        OwnerComments

                        None.

                        OwnerStartWorkingTime

                        This property is the owner start working time for the Inbox item task.

                        OwnerEndWorkingTime

                        This property is the owner end working time for the Inbox item task.

                          GetInboxOwnerInfo Method

                          This method returns field values for multiple Inbox item owners for an Inbox item, and returns information about the action status of the items.

                          The method searches as follows:

                          1. InboxItemId

                          2. ObjectId + InboxTypeName

                          Input Arguments

                          The following information lists the input arguments for this method.

                          Table GetInboxOwnerInfo Method, Property Set

                          Property Name Required Comments

                          InboxItemId

                          No

                          This property is the row ID of the Inbox item. It is not updated, but is used for searching.

                          ObjectId

                          No

                          This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                          InboxTypeName

                          No

                          This property is the name of Inbox type. It is not updated, but is used for searching.

                          ActiveOwnerOnly

                          No

                          This property indicates that information is returned only for active owners. The default is TRUE.

                          EvaluateOR

                          No

                          This property evaluates the OR condition on all owners’ actions using the Action that is passed in from the caller.

                          EvaluateAND

                          No

                          This property evaluates the AND condition on all owners’ actions using the Action that is passed in from the caller.

                          Output Arguments

                          The following table lists the output arguments for this method for the property set.

                          Table GetInboxOwnerInfo Method, Property Set

                          Property Name Comments

                          OREvalResult

                          This property is 1 if one or more owner's inbox tasks have OwnerAction equal to the input parameter EvaluateOr. Otherwise it is 0.

                          ANDEvalResult

                          This property is 1 if all the owner's inbox tasks have OwnerAction equal to the input parameter EvaluateAnd. Otherwise it is 0.

                          Child Properties

                          Multiple children can be returned. See the following table.

                          The following table lists the output arguments for this method for the child property set.

                          Table GetInboxOwnerInfo Method, Child Property Set, Type of InboxOwnerInfo

                          Property Name Comments

                          OwnerInfoId

                          This property is the information ID for the Inbox owner.

                          OwnerPriority

                          None.

                          OwnerActionLIC

                          This property is the language-independent code.

                          OwnerUTCDueTS

                          This property is the UTC timestamp.

                          OwnerComments

                          None.

                          OwnerStartWorkingTime

                          This property is the UTC timestamp.

                          OwnerEndWorkingTime

                          This property is the UTC timestamp.

                            SetInboxParamInfo Method

                            This method inputs name-value pairs for an Inbox item. The name-value pairs are put into the Inbox Parameters table.

                            The method searches as follows:

                            1. InboxItemId

                            2. ObjectId + InboxTypeName

                            Input Arguments

                            The following information lists the input arguments for this method.

                            Table SetInboxParamInfo Method, Property Set

                            Property Name Required Comments

                            InboxItemId

                            No

                            This property is the row ID of the Inbox item. It is not updated, but is used for searching.

                            ObjectId

                            No

                            This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                            InboxTypeName

                            No

                            This property is the name of Inbox type. It is not updated, but is used for searching.

                              UpdateInboxItemInfo Method

                              This method updates field values for an Inbox item. The name-value pairs are put into the Inbox Parameters table.

                              The method searches as follows:

                              1. InboxItemId

                              2. ObjectId + InboxTypeName

                              Input Arguments

                              The following information lists the input arguments for this method.

                              Table UpdateInboxItemInfo Method, Property Set

                              Property Name Required Comments

                              InboxItemId

                              No

                              This property is the row ID of the Inbox item. It is not updated, but is used for searching.

                              ObjectId

                              No

                              This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                              InboxTypeName

                              No

                              This property is the name of Inbox type. It is not updated, but is used for searching.

                              InboxName

                              No

                              This property is the name of the Inbox. The value passed cannot be empty.

                              InboxPartyId

                              No

                              This property is the party ID of the Inbox owner. The value passed cannot be empty.

                              ReplicationLevel

                              No

                              This property indicates whether this Inbox item must be routed when using remote mobile client. Select one of the following options:

                              • All. Indicates HQ, Regional, Local.

                              • Regional. Indicates HQ, Regional.

                              • None. Indicates HQ.

                              Comments

                              No

                              None.

                              InboxExpirationDuration

                              No

                              The duration is expressed in seconds. The value passed cannot be empty.

                              InboxUTCExpirationTS

                              No

                              This property is the UTC timestamp. The value passed cannot be empty.

                                DeactivateInboxItem Method

                                This method deactivates all Inbox item owners for an Inbox item and updates field values for that Inbox item. The name-value pairs are put into the Inbox Parameters table.

                                The method searches as follows:

                                1. InboxItemId

                                2. ObjectId + InboxTypeName

                                Input Arguments

                                The following information lists the input arguments for this method for the property set.

                                Table DeactivateInboxItem Method, Property Set

                                Property Name Required Comments

                                InboxItemId

                                No

                                This property is the row ID of the Inbox item. It is not updated, but is used for searching.

                                ObjectId

                                No

                                This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                                InboxTypeName

                                No

                                This property is the name of Inbox type. It is not updated, but is used for searching.

                                InboxName

                                No

                                This property is the name of the Inbox. The value passed cannot be empty.

                                InboxPartyId

                                No

                                This property is the party ID of the Inbox owner. The value passed cannot be empty.

                                ReplicationLevel

                                No

                                This property indicates whether this Inbox item must be routed when using remote mobile client. Select from one of the following options:

                                • All. Indicates HQ, Regional, Local.

                                • Regional. Indicates HQ, Regional.

                                • None. Indicates HQ.

                                Comments

                                No

                                None.

                                InboxExpirationDuration

                                No

                                The duration is expressed in seconds. The value passed cannot be empty.

                                InboxUTCExpirationTS

                                No

                                This property is the UTC timestamp. The value passed cannot be empty.

                                Child Properties

                                No

                                Multiple children are allowed. See the following table.

                                The following table lists the input arguments for this method for the child property set.

                                Table DeactivateInboxItem Method, Child Property Set, Type of InboxOwnerInfo

                                Property Name Required Comments

                                OwnerPartyId

                                No

                                This property is the party ID for the Inbox owner. It is not updated, but is used for searching.

                                OwnerInfoId

                                No

                                This property is the information ID for the Inbox owner. It is not updated, but is used for searching.

                                OwnerPriority

                                No

                                None.

                                OwnerActionLIC

                                No

                                This property is the language-independent code.

                                OwnerComments

                                No

                                None.

                                OwnerStartWorkingTime

                                No

                                This property is the UTC timestamp. To set to the current time, enter a value of Y, T, or TRUE.

                                OwnerEndWorkingTime

                                No

                                This property is the UTC timestamp. To set to the current time, enter a value of Y, T, or TRUE.

                                  DeactivateInboxOwner Method

                                  This method deactivates an Inbox item owner and updates field values for that Inbox item owner.

                                  The method searches as follows:

                                  1. OwnerInfoId

                                  2. InboxItemId, OwnerPartyId

                                  3. ObjectId, InboxTypeName, OwnerPartyId

                                  If there is SSASqlErrWriteConflict conflict, then clear the error message to show the error message on UI.

                                  Input Arguments

                                  The following information lists the input arguments for this method.

                                  Table DeactivateInboxOwner Method, Property Set

                                  Property Name Required Comments

                                  ObjectId

                                  No

                                  This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                                  InboxTypeName

                                  No

                                  This property is the name of Inbox type. It is not updated, but is used for searching.

                                  OwnerPartyId

                                  No

                                  This property is the party ID for the Inbox owner. The ID is not updated, but is used for searching.

                                  InboxItemId

                                  No

                                  This property is the row ID of the Inbox item. The ID is not updated, but is used for searching.

                                  OwnerInfoId

                                  No

                                  This property is the information ID for the Inbox owner. The ID is not updated, but is used for searching.

                                  OwnerPriority

                                  No

                                  None.

                                  OwnerActionLIC

                                  No

                                  This property is the language-independent code.

                                  OwnerComments

                                  No

                                  None.

                                  OwnerStartWorkingTime

                                  No

                                  This property is the UTC timestamp. To set to the current time, enter a value of Y, T, or TRUE.

                                  OwnerEndWorkingTime

                                  No

                                  This property is the UTC timestamp. To set to the current time, enter a value of Y, T, or TRUE.

                                    UpdateInboxOwnerInfo Method

                                    This method updates field values for an Inbox item owner.

                                    The method searches as follows:

                                    1. OwnerInfoId

                                    2. InboxItemId, OwnerPartyId

                                    3. ObjectId, InboxTypeName, OwnerPartyId

                                    Input Arguments

                                    The following information lists the input arguments for this method.

                                    Table UpdateInboxOwnerInfo Method, Property Set

                                    Property Name Required Comments

                                    ObjectId

                                    No

                                    This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                                    InboxTypeName

                                    No

                                    This property is the name for the type of Inbox. It is not updated, but is used for searching.

                                    OwnerPartyId

                                    No

                                    This property is the party ID for the Inbox owner. It is not updated, but is used for searching.

                                    InboxItemId

                                    No

                                    This property is the row ID of the Inbox item. The ID is not updated, but is used for searching.

                                    OwnerInfoId

                                    No

                                    This property is the information ID for the Inbox owner. It is not updated, but is used for searching.

                                    OwnerPriority

                                    No

                                    None.

                                    OwnerActionLIC

                                    No

                                    This property is the language-independent code.

                                    OwnerQueueDuration

                                    No

                                    The duration is expressed in seconds.

                                    OwnerUTCDueTS

                                    No

                                    This property is the UTC timestamp.

                                    OwnerComments

                                    No

                                    None.

                                    OwnerStartWorkingTime

                                    No

                                    This property is the UTC timestamp. To set to the current time, enter a value of Y, T, or TRUE.

                                    OwnerEndWorkingTime

                                    No

                                    This property is the UTC timestamp. To set to the current time, enter a value of Y, T, or TRUE.

                                      DeleteInboxItem Method

                                      This method deletes an Inbox item and all associated Inbox item owners.

                                      The method searches as follows:

                                      1. InboxItemId

                                      2. ObjectId + InboxTypeName

                                      Usage Example

                                      Call this method when the underlying feature object for the Inbox item has been deleted.

                                      Input Arguments

                                      The following information lists the input arguments for this method.

                                      Table DeleteInboxItem Method, Property Set

                                      Property Name Required Comments

                                      InboxItemId

                                      No

                                      This property is the row ID of the Inbox item. It is not updated, but is used for searching.

                                      ObjectId

                                      No

                                      This property is the object ID of the Inbox item. It is not updated, but is used for searching.

                                      InboxTypeName

                                      No

                                      This property is the name of Inbox type. It is not updated, but is used for searching.

                                        Initialize Method

                                        This method creates an Inbox item and starts the business service method defined in the Initialize action. This method is intended for use only by those upgrading from the 7.5.3 version of the Siebel application.

                                        Input Arguments

                                        The following information lists the input arguments for this method.

                                        Table Initialize Method, Property Set

                                        Property Name Required Comments

                                        ItemType

                                        Yes

                                        None.

                                        ItemDescription

                                        Yes

                                        None.

                                        ItemObjectId

                                        Yes

                                        None.

                                        ItemSubmittedBy

                                        Yes

                                        None.

                                        ItemPriority

                                        No

                                        Not supported in version 7.7 of the Siebel application.

                                        ItemQueueDuration

                                        No

                                        None.

                                        ItemComments

                                        No

                                        None.

                                          RouteInboxItem Method

                                          This method deactivates existing Inbox item owners and creates new Inbox item owners for an Inbox item. This method is intended for use only by those upgrading from the 7.5.3 version of the Siebel application. For more information about this method, see Siebel Database Upgrade Guide.

                                          Input Arguments

                                          The following information lists the input arguments for this method for the property set.

                                          Table RouteInboxItem Method, Property Set

                                          Property Name Required Comments

                                          ItemWorkflowInstanceId

                                          Yes

                                          None.

                                          Child Properties

                                          Yes

                                          Multiple children are allowed. See the following table.

                                          The following table lists the input arguments for this method for the child property set.

                                          Table RouteInboxItem Method, Child Property Set, Type of TaskOwnerInfo

                                          Property Name Required Comments

                                          TaskOwnerId

                                          Yes

                                          This property is the ID for the task owner.

                                          TaskStatus

                                          No

                                          This property is the status for the task.

                                          TaskPriority

                                          No

                                          This property is the priority for the task.

                                          Output Arguments

                                          The following table lists the output arguments for this method for property set.

                                          Table RouteInboxItem Method, Property Set, Type of ItemOutput

                                          Property Name Comments

                                          InboxItemId

                                          This property is the row ID of the newly-created Inbox item.

                                          Child properties

                                          Multiple children can be returned. See The following table.

                                          The following table lists the output arguments for this method for the child property set.

                                          Table RouteInboxItem Method, Child Property Set, Type of OwnerInfoOutput

                                          Property Name Comments

                                          OwnerPartyId

                                          This property is the party ID of the Inbox owner.

                                          OwnerInfoId

                                          This property is the information ID of the Inbox owner.

                                            About the Sample Workflows

                                            The following pages describe three sample workflows that apply to service requests and that illustrate the use of the Inbox. You can use Siebel Tools to import the workflow files into the Siebel Sample Database, and try out the workflows. Additionally, you can import them into your own implementation and modify them for your business needs.

                                              Where to Find the Sample Workflow Files

                                              These sample workflows are provided as part of the sample database installation. You can find these workflow files in the SIEBEL_CLIENT_HOME\SAMPLE\WORKFLOWS directory. (For example, C:\Program Files\Siebel\7.8\web client\SAMPLE\WORKFLOWS)

                                              The names of the files that contain the sample workflows are:

                                              • Inbox - Service Demo Creation.xml

                                              • Inbox - Service Action.xml

                                              • Inbox - Service Detail Action.xml

                                                Creating Inbox Types for Use with the Sample Workflows

                                                If you want to try out the sample workflows in the Sample Database, then you must create the SRManager and SROwner Inbox types.

                                                To create two Inbox types for use with the sample workflows

                                                1. Create two Inbox types that use the field values in the following table.

                                                  Field Name Value for First Inbox Type Value for Second Inbox Type

                                                  Name

                                                  SROwner

                                                  SRManager

                                                  Business Object Name

                                                  Service Request

                                                  Service Request

                                                  Category

                                                  APPROVALS

                                                  APPROVALS

                                                  Default Queue Duration (Days)

                                                  0

                                                  0

                                                  Item Expiration Duration (Days)

                                                  0

                                                  0

                                                  Action Type

                                                  SR_STATUS

                                                  None

                                                  For more information, see Creating Inbox Types.

                                                2. Set up a link to the Service Request Detail View for the SROwner and the SRManager Inbox types.

                                                  For more information, see Setting Up Inbox Links to Views and SmartScripts.

                                                3. Create an Inbox Actions record for the SROwner Inbox type that uses the field values in the following table.

                                                  Field Name Value

                                                  Action

                                                  Action Field Dropdown

                                                  Business Service

                                                  Workflow Process Manager

                                                  Business Service Method

                                                  RunProcess

                                                  Business Service Method Arguments

                                                  "ProcessName", "Inbox - Service Action"

                                                  For more information, see Setting Up Inbox Actions.

                                                  Inbox - Service Demo Creation Workflow

                                                  This workflow assigns service requests and creates inbox items.The workflow acts only on service requests where Area is Network; service requests in all other areas are ignored.

                                                  If the service request does not have an owner, then it is assigned to APARKER. Inbox items and Inbox item owners are created for the service request’s owner and the service request owner’s manager. Both users are then sent email to notify them that there are new items in their Inboxes.

                                                  The workflow is triggered when a service request is created. The following figure shows the diagram for this workflow.

                                                  Inbox - Service Demo Creation Workflow

                                                  Workflow Description. This workflow performs the following actions:

                                                  1. Retrieve SRInfo. This step retrieves data about the service request, for example, its area, status, and service request number.

                                                  2. SRArea, isSR Assigned, HR Policies SR Type, and Default. If the service request is unassigned and value of the Area field is Network, then these steps assign the service request to APARKER.

                                                  3. Query Inbox Existence and Is Object Item existed in Inbox. These steps check if an Inbox item for this service request already exists.

                                                  4. CreateInbox For Owner. If an Inbox item does not already exist, then this step calls the CreateInboxEx method which creates an Inbox item of Inbox type SROwner, and an Inbox item owner. For more information, see CreateInboxEx Method.

                                                  5. Get SREmployee Info. This step retrieves the email address of the service request’s owner.

                                                  6. Manager Exist. This step determines if the owner of the service request has a manager.

                                                  7. Get Manager Info, Create InboxMngr, IsEmailAddrExisted, and Send Email to Manager and to Owner. If the owner of the service request has a manager, then:

                                                    • These steps retrieve information about the manager.

                                                    • These steps call the CreateInboxEx method to create an Inbox item of Inbox type SRManager, and an Inbox item owner.

                                                    • These steps send email to both the manager and the owner of the service request.

                                                  8. IsSROwnerEmail and Send Email to SR Owner. If the owner does not have a manager, then these steps send email to the owner of the service request.

                                                    Inbox - Service Action Workflow

                                                    This workflow synchronizes the status for service requests and inbox items.

                                                    This workflow makes sure that changes to the service request records, where the value of the Area field is Network, and the Inbox item that is based on those service requests are synchronized:

                                                    • When a user takes action on a service request Inbox item, the status of the service request record is updated accordingly. For example, when the Inbox item is closed by its owner, the workflow changes the status of the underlying service request to closed.

                                                    • When a user changes the Status of a service request, the actions available for the corresponding Inbox item are appropriately updated. In this case, the Inbox items for both the owner and the manager are deactivated and removed from the Inbox.

                                                    The workflow starts when:

                                                    • The user takes action on a service request Inbox item.

                                                    • The run-time event attached to the WriteRecordUpdate event on the Service Request business component is triggered.

                                                    The following figure shows the diagram for this workflow.

                                                    Inbox - Service Action Workflow

                                                    Workflow Description. This workflow performs the following actions:

                                                    1. GetInboxInfo. This step retrieves a set of parameters about the Inbox item. One of the parameters is ObjectId, which is the ServiceRequestId. This step positions the Service Request business component on the ObjectId that has been passed in.

                                                    2. GetSRUIStatus. This step retrieves the action taken by the user on the service request Inbox item.

                                                    3. Set SR Status. This step updates the Status of the service request according to the action taken by the user on the Inbox item.

                                                    4. GetSRStatus. This step retrieves the status and area information about the service request.

                                                    5. Network Area? This step determines if the value of the Area field is Network. If not, then the workflow ends.

                                                    6. Is SR Closed?, Deactivate Inbox Owners and Deactivate SRManagers. If the service request is closed, then these steps call the DeactivateInboxItem method to deactivate Inbox item owners for the owner of the service request and their manager. For more information, see DeactivateInboxItem Method.

                                                      Inbox - Service Detail Action Workflow

                                                      This workflow updates inbox items for status changes made in the Detail view of the Inbox.

                                                      This workflow is triggered when a user changes the status of a service request from within the Inbox screen, Inbox Items List, and then the Detail view. This workflow updates the Inbox item of the service request according to the change made to the service request.

                                                      This workflow starts when the run-time event attached to the WriteRecordUpdate event on the Service Request business component of the UInbox Item Task business object is triggered. The following figure shows the diagram for this workflow.

                                                      Inbox - Service Detail Action Workflow

                                                      Workflow Description. This workflow performs the following actions:

                                                      1. GetSRId. This step gets the service request row ID and the Inbox item ID.

                                                      2. GetSRInfo. This step gets the updated information from the service request record.

                                                      3. UpdateInboxOwnerActionInfo. This step calls the UpdateInboxOwnerInfo method to update the Inbox item owner. For more information, see UpdateInboxOwnerInfo Method.

                                                      4. IsSRClosed, DeactivateInboxOwner, and DeactivateInboxOwnerManager. If the service request is closed, then these steps call the DeactivateInboxItem method to deactivate Inbox item owners for the owner of the service request and their manager. For more information, see DeactivateInboxItem Method.

                                                        Inbox Trigger Used in ESS

                                                        This topic includes a sample of SmartScript code.

                                                        This code is entered in the Script_Finish statement of the ESS Form (SmartScript). It can be accessed from the Administration - SmartScript screen, then the Scripts view in the HelpDesk application. For more information about Employee Self Service, see Siebel HelpDesk Guide.

                                                        The purpose of the script is to take data from the ESS Form (SmartScript) and some required arguments to invoke the Universal Inbox business service under the Initialize method. When the user submits the ESS Form (SmartScript), this eScript code is launched, invoking the Universal Inbox business service, and using the parameters specified in the eScript and the Inbox type to create an Inbox item.

                                                        function Script_Finish ()
                                                        {
                                                          var szScriptSessionId;
                                                          var szRequester;
                                                          var svc;
                                                          var indata;
                                                          var outdata;
                                                          var ssPage;
                                                          var ssQuestion;
                                                          var EmployeeLastName;
                                                          var EmployeeFirstName;
                                                          var RequestedChange;
                                                          var PAFComments;
                                                          var PAFPriority;
                                                          var szSSLanguageCode;
                                                          var szSSCurrencyCode;
                                                        
                                                          ssPage = GetPage("PAF Which Change");
                                                          ssQuestion = ssPage.GetQuestion("Display Employee Last Name");
                                                        
                                                           EmployeeLastName = ssQuestion.GetCurrentValue();
                                                          ssQuestion = ssPage.GetQuestion("Display Employee First Name");
                                                          EmployeeFirstName = ssQuestion.GetCurrentValue();
                                                          ssQuestion = ssPage.GetQuestion("PAF Change Requested");
                                                          RequestedChange = ssQuestion.GetCurrentValue();
                                                          ssQuestion = ssPage.GetQuestion("PAF Comments");
                                                          PAFComments = ssQuestion.GetCurrentValue();
                                                          ssQuestion = ssPage.GetQuestion("PAF Priority");
                                                          PAFPriority = ssQuestion.GetCurrentValue();
                                                        
                                                          // Cancel saving everything to the database
                                                          Cancel ();
                                                        
                                                          indata =TheApplication ().NewPropertySet ();
                                                          outdata = TheApplication ().NewPropertySet ();
                                                        
                                                          // Get the login name of the user
                                                          szRequester = TheApplication ().LoginName ();
                                                          // Get SmartScript Save Session table ID.
                                                          szScriptSessionId = GetSessionId ();
                                                        
                                                          szSSLanguageCode = GetParameter("Language");
                                                          szSSCurrencyCode = GetParameter("Currency");
                                                        
                                                          indata.SetProperty ("SmartScriptLanguageCode", szSSLanguageCode);
                                                        
                                                          // ItemObjectId, ItemType, ItemSubmittedBy, and ItemDescription are the
                                                          // required input arguments for the "Universal Inbox.Initialize"
                                                          indata.SetProperty ("ItemObjectId", szScriptSessionId);
                                                          // Item Type is the Approvals Inbox type defined in the
                                                          // Approvals Inbox Administration screen
                                                          indata.SetProperty ("ItemType", "Personnel Action Form");
                                                          // Short Description of the inbox item
                                                          indata.SetProperty ("ItemDescription", RequestedChange + " PAF" + " for " + 
                                                        EmployeeFirstName + " " +                                                                            EmployeeLastName);
                                                          indata.SetProperty ("ItemSubmittedBy", szRequester);
                                                        
                                                          // ItemQueueDuration, ItemPriority, and ItemComments are the
                                                          // optional input arguments for the "Universal Inbox.Initialize"
                                                          indata.SetProperty ("ItemQueueDuration", "129600");
                                                          indata.SetProperty ("ItemPriority", PAFPriority);
                                                          indata.SetProperty ("ItemComments", PAFComments);
                                                          svc = TheApplication ().GetService ("Universal Inbox");
                                                          svc.InvokeMethod("Initialize", indata, outdata);
                                                        }
                                                        

                                                          Inbox Trigger Using Server Script

                                                          This topic includes a sample Server Script that calls Inbox methods.

                                                          This code is entered in the PreWriteRecord statement for the Project business component in Siebel Tools. The purpose of this code is to take data from the project record and some required arguments to invoke the Universal Inbox business service under the Initialize method. When the user changes the value of the Status field to For Approval, this eScript code is launched, invoking the Universal Inbox business service and using the parameters specified in the eScript and the Inbox type to create an Inbox item.

                                                          function BusComp_PreWriteRecord ()
                                                          {
                                                               var FldProjectStatus = this.GetFieldValue("Status");
                                                            if (FldProjectStatus == "For Approval")
                                                            {
                                                            var szScriptSessionId;
                                                            var szRequester;
                                                            var svc;
                                                            var indata;
                                                            var outdata;
                                                          
                                                            indata =TheApplication ().NewPropertySet ();
                                                            outdata = TheApplication ().NewPropertySet ();
                                                          
                                                            // Get the login name of the user
                                                            szRequester = TheApplication ().LoginName ();
                                                          
                                                            // ItemObjectId, ItemType, ItemSubmittedBy, and ItemDescription are the
                                                            // required input arguments for the "Universal Inbox.Initialize"
                                                            var FldProjectNum = this.GetFieldValue("Project Num");
                                                            indata.SetProperty ("ItemObjectId", FldProjectNum);
                                                            // Item Type is the Approvals Inbox type defined in the
                                                            // Approvals Inbox Administration screen
                                                            indata.SetProperty ("ItemType", "ChangeManagement");
                                                            // Short Description of the inbox item
                                                            indata.SetProperty ("ItemDescription", FldProjectNum);
                                                            indata.SetProperty ("ItemSubmittedBy", szRequester);
                                                          
                                                             // ItemQueueDuration, ItemPriority, and ItemComments are the
                                                            // optional input arguments for the "Universal Inbox.Initialize"
                                                            indata.SetProperty ("ItemQueueDuration", "129600");
                                                            indata.SetProperty ("ItemPriority", "High");
                                                            indata.SetProperty ("ItemComments", "Change Management Project");
                                                            svc = TheApplication ().GetService ("Universal Inbox");
                                                            svc.InvokeMethod("Initialize", indata, outdata);
                                                            }
                                                               return (ContinueOperation);
                                                          }