Implementing Oracle Service Fulfillment Manager

This chapter includes user procedures on basic setups.

This chapter covers the following topics:

Managing System Queues

The tasks that you perform with system queues are listed below:

Viewing Queue Summary Information

The Queue Console displays the following summary information about all system queues.

To display this information, perform the following steps.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue. The View Details button is enabled if there are entries in the queue, else it is disabled.

  3. Click View Details to view additional information about the entries in a queue.

  4. Close the window to return to the Queue Console.

Finding an Order in the Queue

To search for an order that is currently in the queue, perform the following steps.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue. The View Details button is enabled if there are entries in the queue, else it is disabled.

  3. Click View Details.

  4. (Optional) Select View, then Query By Example, then Enter from the View menu on the toolbar to find a specific order in the queue, or to find entries that match a search criteria.

  5. (Optional) Enter the search criteria in the provided fields.

  6. Select View, then Query By Example, then Run from the View menu on the toolbar.

  7. Select View, then Query By Example, then Cancel to close the window and return to the Queue Console.

    Note: If there are a large number of orders in the queue, this action may take several seconds to complete.

Starting a Queue

To start all processors of the queue, perform the following steps.

Prerequisites

The queue must be in Shutdown mode to start a queue.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue. If the queue is in Shutdown mode, the Startup button is enabled.

  3. Click Startup. The Queue Status changes to Enabled.

Shutting a Queue

To shut down all processors of the queue, perform the following steps.

Prerequisites

The queue must be in either the Enabled or Disabled mode for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue that is either in the Enabled or the Disabled mode.

  3. Click Shutdown. The Queue Status changes to Shutdown.

Suspending a Queue

To suspend processing of orders in the queue, perform the following steps.

Prerequisites

The queue must be in either the Enabled or Disabled mode for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue that is either in the Enabled or the Shutdown mode. If the queue is in Enabled or Shutdown mode, the Suspend button is enabled.

  3. Click Suspend. The Queue Status changes to Disabled.

Resuming Queue Operation

To resume processing orders in the queue, perform the following steps.

Prerequisites

The queue must be in the Disabled mode for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue that is in the Disabled mode. If the queue is in Disabled mode, the Resume button is enabled.

  3. Click Resume. The Queue Status changes to Enabled.

Viewing XML Messages

To view the XML content for a message that is currently in the queue, perform the following steps.

Prerequisites

To view XML message content, you must select either the Outbound Messages queue, the Inbound Messages queue, or the Event queue, and you must have an XML-enabled browser available to display XML messages.

Steps

  1. In the Navigator, choose Administration, then Queue Console. The Queue Console appears.

  2. Select a queue. The View Details button is enabled if there are entries in the queue, else it is disabled.

  3. Click View Details.

  4. Select a message from the list at the left.

  5. Click View XML. If available, the XML messages are displayed in a new window.

Planning Service Fulfillment Manager Activities

The user should be able to define business rules in the following PL/SQL procedures for the selection of work item to execute for a given service, the selection of fulfillment actions to execute for a given work item, and the selection of Oracle Workflow process to execute for a given work item.

Service to Work Item Dynamic Mapping

During order capturing time, SFM will need to determine which work items to execute for a given service. Sometimes the list of work items to execute for a service is fixed and can be defined by an SFM user during configuration time through the SFM Configurator. Sometimes the list of work items to run can vary depends on certain parameter values in the order during runtime. For example, a company can have a Nortel network and a Lucent network on different geographical areas and the work items for the same service can vary depends on which network it will be provisioned on. SFM provides a solution to such problem by allowing the user to define business logic in the service to work item mapping procedure, where the user can instruct SFM to execute different set of work items base on the actual value of a service parameter, the area code for example. An example will be given later in this chapter.

Procedure Specification

When defining the service to work item mapping procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_return_code OUT NUMBER,
p_error_description OUT VARCHAR2

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Item to Fulfillment Action Dynamic Mapping

During work item execution, SFM will need to determine which Service Fulfillment Manager activities, namely fulfillment actions, need to be executed for a given Service Fulfillment Manager job, namely work item. Sometimes the list of fulfillment actions (FAs) to execute for a work item is fixed and can be defined by an SFM user during configuration time through the SFM Configurator. Sometimes the list of FAs to run can vary depends on certain parameter value in the order during runtime. For example, a work item PROVISION_CARRIER_SWITCH may invoke different FAs depends on the long distance carrier the customer chooses. SFM provides a solution to such problem by allowing the user to define business logic in the work item to FA mapping procedure, where the user can instruct SFM to execute different set of FAs base on the actual value of a service parameter, the carrier code for example.

Predefined Fulfillment Element Types in Oracle Number Portability

The Oracle Number Portability application is seeded with a number of fulfillment element types. The following table lists these predefined element types.

Element Type Description
DIRECTORY_ GATEWAY Refers to directory assistance gateway
NRC_GATEWAY Refers to the Number Registration Center gateway
SCP Refers to the LNP database for all service control points
SP_GATEWAY Refers to messaging gateways for remote systems of other service providers
SSP Refers to signal switching point
STP Refers to signal transfer point

Procedure Specification

When defining the work item to FA mapping procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_wi_instance_id IN NUMBER,
p_return_code OUT NUMBER,
p_error_description OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Work Item Workflow Execution Procedure

Sometimes the work item execution can be a really complex process. For example, when a customer orders a T1 circuit, the carrier may need to get a circuit design first, and then provision the appropriate fulfillment elements accordingly. In such case SFM will not be able to determine which FA to execute for this particular work item at the beginning of the Service Fulfillment Manager process due to the fact Element Type Description DIRECTORY_ GATEWAY Refers to directory assistance gateway NRC_GATEWAY Refers to the Number Registration Center gateway SCP Refers to the LNP database for all service control points SP_GATEWAY Refers to messaging gateways for remote systems of other service providers SSP Refers to signal switching point STP Refers to signal transfer point that, the next FA execution is solely base on the execution result of the previous FA. SFM addresses this problem by allowing the user to associate an Oracle Workflow with the work item, where the users can define their own business process flow for the work item execution. In some practice the user may want to define multiple workflow processes for the same work item base on their network implementation. For example, they may have different network configuration on different geographical areas which in turn may require different business process to execute for the same work item. The user can then implement their workflow selection rules in the work item workflow execution procedure, which SFM will use to select the appropriate workflow process base on the order information at runtime.

Procedure Specification

When defining the work item workflow execution procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_wi_instance_id IN NUMBER,
p_wf_item_type OUT varchar2,
p_wf_item_key OUT varchar2,
p_wf_process_name OUT varchar2,
p_reurn_code OUT NUMBER,
p_error_description OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Service Fulfillment Manager Activities Execution

The user should be able to define business rules in the following PL/SQL procedures for evaluating the parameter value at runtime, identifying which fulfillment element to run against for an FA, and Service Fulfillment Manager a fulfillment element for an FA.

Work Item Parameter Evaluation Procedure

This procedure allows the user to evaluate a work item parameter value at runtime. For example, the user can use this procedure to retrieve value for certain Service Fulfillment Manager specific parameter from systems such as network inventory Considerations for Planning an Implementation Project 1-60 Oracle Service Fulfillment Manager Implementation Guide database, or change the format of the work item parameter value to best fit their business need.

Procedure Specification

When defining work item parameter evaluation procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_wi_instance_id IN NUMBER,
p_param_valIN Varchar2,
p_param_ref_valIN Varchar2,
p_param_eval_val OUT VARCHAR2,
p_param_eval_ref_val OUT Varchar2,
p_return_codeOUT NUMBER,
p_error_description OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Fulfillment Action Parameter Evaluation Procedure

This procedure allows the user to evaluate a fulfillment action parameter value at runtime. For example, the user can use this procedure to retrieve value for certain Service Fulfillment Manager specific parameter from systems such as network inventory database, or change the format of the work item parameter value to best fit their business need.

Procedure Specification

When defining work item parameter evaluation procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_wi_instance_id IN NUMBER,
Considerations for Planning an Implementation Project
Implementing Oracle Service Fulfillment Manager 1-61
p_fa_instance_id IN NUMBER,
p_param_valIN Varchar2,
p_param_ref_valIN Varchar2,
p_param_eval_val OUT VARCHAR2,
p_param_eval_ref_val OUT Varchar2,
p_return_codeOUT NUMBER,
p_error_description OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Fulfillment Element Routing Procedure

This procedure allows the user to identify which fulfillment element to provision for a fulfillment action based on the order information at runtime.

Procedure Specification

When defining fulfillment element routing procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_wi_instance_id IN NUMBER,
p_fa_instance_id IN NUMBER,
p_fe_name OUT Varchar2,
p_return_codeOUT NUMBER,
p_error_description OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Fulfillment Procedure

This procedure allows the user to define the Service Fulfillment Manager logic on a particular fulfillment element type for a fulfillment action. The user will be able to use a set of macros provided by SFM to send the appropriate commands or message to the fulfillment element, examine the response from the fulfillment element and determine the next command or message accordingly.

Procedure Specification

When defining work item parameter evaluation procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_order_id IN NUMBER,
p_line_item_id IN NUMBER,
p_wi_instance_id IN NUMBER,
p_fa_instance_id IN NUMBER,
p_channel_nameIN Varchar2,
p_fe_nameIN VARCHAR2,
p_fa_item_type IN VARCHAR2,
p_fa_item_key IN VARCHAR2,
sdp_internal_err_codeOUT NUMBER,
sdp_internal_err_str OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Network Communication Process

Sometimes the communication between SFM and the fulfillment element may require SFM to open a connection to the equipment before passing messages or commands to the FE. This chapter will describe how to implement the connection logic in the connect/disconnect procedure which will be executed by SFM when a communication channel is established between SFM and the fulfillment element.

Connect Procedure

This procedure allows the user to instruct SFM how to establish a connection to a fulfillment element.

Procedure Specification

When defining connect procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_fe_name IN Varchar2,
p_channel_nameIN Varchar2,
p_return_code IN OUT NUMBER,
p_error_description IN OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Disconnect Procedure

This procedure allows the user to instruct SFM how to close a connection from a fulfillment element.

Procedure Specification

When defining connect procedure through the Configurator, SFM will automatically generate the following procedure specification:

procedure <name of the procedure>(
p_fe_name IN Varchar2,
p_channel_nameIN Varchar2,
p_return_code IN OUT NUMBER,
p_error_description IN OUT VARCHAR2)

The user cannot change the procedure specification. However, the user can refer to the parameters anywhere in the procedure.

Managing Network Connections

You use the Connection Manager to manage all types of fulfillment elements and their Adapters. The Connection Manager is used to control network connections.

You perform the following tasks using the Connection Manager:

Monitoring Network Connections

To view the network associated with a fulfillment element, perform the following steps.

Steps

  1. In the Navigator, choose Administration, then Connection Manager. The Connection Manager appears..

  2. Click Enter a filtering value to filter the list of fulfillment elements that display in the left-hand frame.

    Conversely, erase the filtered value entry to view all defined fulfillment elements.

  3. Select a fulfillment element from the list.

  4. Select the Adapters tab to view information about adapters.

  5. Select the adapter type to view from the Usage list. You can select from the following options:

    • All Types

    • Messaging

    • Order Resubmission

    • Service Fulfillment Manager

    • Testing

  6. Select from the following:

    • The Adapters sub-tab to view information about the current status of an adapter.

    • The Options sub-tab to display the adapter display name and arguments for the adapter.

    • The Modes sub-tab to view information about Startup and Debug modes for an adapter.

    • The Requests sub-tab to view to view information about how the adapter has been scheduled.

  7. Close the form.

Defining a New Adapter Instance

To define a new adapter in the system, perform the following steps.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the Adapters tab.

  3. Click New to open the Adapter Properties dialog box.

  4. Enter a name for the new adapter.

  5. Select a value from the Usage list.

  6. Select a value from the Startup Mode list.

  7. Select a value from the Debug Mode list.

  8. Click OK to define the new adapter and close the dialog box. The new adapter now displays in the list of adapters.

    Warning: You can start a new adapter only if it does not exceed the maximum number of connections allowed (or configured) for that specific fulfillment element.

Redefining an Adapter

To edit an adapter definition, perform the following steps.

Prerequisites

The adapter must display a status of Shutdown for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter from the list at the left.

  3. Select the Adapters tab.

  4. Click Edit. The Adapter Properties dialog box displays.

  5. Edit the details of the adapter

  6. Click OK to redefine the adapter and close the dialog box.

Scheduling an Adapter

To schedule a request for an adapter, perform the following steps.

Prerequisites

You cannot schedule a request prior to the current date and time.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the Adapters tab.

  3. Click Schedule... to open the Adapter Request dialog box.

  4. Chose a value from the Request Type list of values.

  5. Chose a date and time for the request to execute the request. (If desired, open the Calendar function by clicking the [...] at the edge of the Date/Time field.)

    • To issue the request immediately, enter the current date and time.

    • To postpone the execution of the request, enter a future date.

  6. Enter the period (in days) that the adapter request is to repeat by entering a value in the Repeat Every (days) field. To schedule a request only once, leave this field blank.

  7. Click OK to schedule the request and close the dialog box.

    Note: To delete a scheduled request, select it and click Delete.

Deleting an Adapter

To delete an adapter from the system, perform the following steps.

Prerequisites

The adapter must display a status of Shutdown for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter to delete from the list of adapters.

  3. Click Schedule... to open the Adapter Request dialog box.

  4. Click Delete. The adapter no longer displays in the list of adapters.

Viewing Adapter Request Errors

If an adapter request causes an error condition, the Current Status field for that adapter displays Error.

To view details of the error condition, perform the following steps.

Prerequisites

The adapter must display a status of Error for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter from the list of adapters at the left.

  3. Select the Adapters tab.

  4. Click Show Error. The time the error message occurred and the text of the error message display.

  5. Click OK to close the Error Message window.

Issuing a Disconnect Request

To issue a disconnect request to an adapter, perform the following steps.

Prerequisites

The adapter must display a status of Running for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter from the list of adapters at the left.

  3. Select the Adapters tab.

  4. Click Disconnect. The status for this adapter now displays Disconnected.

Issuing a Connect Request

To issue a connect request to an adapter, perform the following steps.

Prerequisites

The adapter must display a status of Disconnected for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter from the list of adapters at the left.

  3. Select the Adapters tab.

  4. Click Connect. The Current Status field for this adapter now displays Running.

Issuing a Suspend Request

To issue a suspend request to an adapter, perform the following steps.

Prerequisites

The adapter must display a status of Running for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter from the list of adapters at the left.

  3. Select the Adapters tab.

  4. Click Suspend. The Current Status field for this adapter now displays Suspended.

Issuing a Resume Operation Request

To issue a resume request to an adapter, perform the following steps.

Prerequisites

The adapter must display a status of Suspended for this option to be available.

Steps

  1. In the Navigator, choose Administration, then Connection Manager.

  2. Select the adapter from the list of adapters at the left.

  3. Select the Adapters tab.

  4. Click Resume. The Current Status field for this adapter now displays Running.

Managing Services

You perform a number of tasks with services. These include:

For the steps and tasks associated with setting up a service, see Configuring Services for an overview of the processes involved.

Configuring Services

The tasks necessary to configure a service are described in the following steps.

Steps

  1. In configuring services, you must define all of the following items.

    Item See
    The details of the service (for example, version, description and activation dates) Defining a New Service
    The actions available for a specific service and version Associating Actions with a Service
    The work items used by the service actions Associating Work Items with Service Actions

Defining a New Service

Services are also referred to as products or service offerings. In each case, however, they represent services deployed by a service provider who delivers, activates, maintains and bills a subscriber for it.

To define a new service, perform the following steps.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Services.

  2. Select the Details tab.

  3. Click the New icon on the task bar. This action causes a blank entry to display in the Services list at the left.

  4. Enter a value for the Display Name. This is the name of the service that is to display in the audit trail and during configuration.

  5. Enter a value for the Internal Name. This is the name for the service that is to be used internally by the system during Service Fulfillment Manager.

  6. Enter a version number.

  7. Check the Provision this Service box.

    • If you select this box, then you can submit an order against the service.

    • If you do not select this box, then the configuration of this service is still in progress, and an order can not be submitted against the service.

  8. Enter a short description in the Description field.

  9. Enter the effective date for this service to become active.

  10. Enter the effective date for this service to become inactive.

  11. Enter a value for Responsibility. This sets who is responsible to maintain this information.

  12. Save your changes and close the window.

    To complete the definition, you need to associate an action with this service.

Associating Actions with a Service

An action is an operation performed on a service, product, and package. It instructs the Service Delivery Platform to internally call predefined sets of activities, rules, or data.

For every service that you define, you need to assign an action for Service Fulfillment Manager that desired service. A service combined with an action creates the definition of an order line item.

You can repeat an action across various services, however, this action may not necessarily be valid across all fulfillment elements.

To create a new service action, perform the following steps.

Note: It is possible to associate multiple actions with a single service.

Prerequisites

You must define a service before associating actions with it. (You may also reuse an existing service.) See Defining a New Service for details.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Services.

  2. Select the Actions tab.

  3. Select an action from the Available Actions list.

    • If you do not see the name of the desired action in the Available box, enter the name of the action in the Filter field and click the Find icon to search for it.

    • If the action is not defined yet, click Define Actions to open the Define Actions window and then add it.

  4. Use the arrow buttons to move your choice from the Available Actions list to the Selected Actions list.

  5. Enter a value for the Start Date. This is the date at which this action becomes available to the service.

  6. Enter a value for the End Date. This is the date at which this action becomes unavailable.

  7. Enter a Description for this action.

  8. Enter a name for the Work Item Mapping Procedure.

    If necessary, click the Add/Edit Procedure icon to launch the procedure builder and define a new procedure. See Using the Procedure Builder for details of this process.

  9. Save your changes and close the window.

Associating Work Items with Service Actions

To associate a work item with a service action, perform the following steps.

Prerequisites

Each service action can have one or more work items defined for it. However, there must be at least one work item for any available service action.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Services.

  2. Select a service from the list at the left.

  3. Select the Work Items on Action tab.

  4. Select an action from the drop down list of available actions associated with this service.

    If you do not see the action that you want, you need to select the Actions tab and add the action to the list of Selected Actions.

  5. Select a work item from the Available Work Items list.

    • If you do not see the name of the desired work item in the Available box, enter the name of the work item in the Filter field and click the Find icon to search for it.

    • If the work item is not defined, click Define Work Items to open the Define Work Items window and then add it. See Defining a New Work Item for details, if necessary.

  6. Use the arrow buttons to move your choice from the Available Work Items list to the Selected Work Items list.

  7. Enter a descriptive comment in the Details of a Selected Work Item field, if desired.

  8. Repeat steps 4 through 8 as many times as necessary.

  9. Save your changes and close the window.

Editing an Existing Action

To edit an existing service action, perform the following steps.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Services.

  2. Select the Action tab.

  3. Click Define Actions.

  4. Select an existing action from list.

  5. Modify the action parameters.

  6. Save your changes and close the window.

Deleting a Service

To delete a service, perform the following steps.

Prerequisites

You cannot delete a service if either of the following conditions are true:

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Services.

  2. Select a service from the list at the left.

  3. Click Delete. The service is removed from the list.

  4. Save your changes and close the window.

Packages

You perform several different tasks with service packages. These include:

Defining a New Service Package

To create a new package of services, perform the following steps.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Packages.

  2. Select the Details tab.

  3. Enter a value for the Display name. This is the name of the package that is displayed in the audit trail and during configuration.

  4. Enter a value for the Internal name. The system stores this name in its database to identify the package. (Use underscores rather than blanks in the package name.)

  5. Enter a value for the Description.

  6. Enter a value for the Start Date. This is the date at which this package becomes available.

  7. Enter a value for the End Date. This is the date at which this package becomes unavailable.

  8. Save your changes and close the window.

Associating Services with Packages

To associate a service with a package, perform the following steps.

Prerequisites

You must define the service package before you add services to it.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Packages.

  2. Select the Services tab.

  3. Select a service from the Available Services list.

    • If you do not see the name of the desired service in the Available box, enter its name in the Filter field and click the Find icon to search for it.

    • If the service is not defined yet, click Define Services and then add it. See Defining a New Service for details.

  4. Use the arrow buttons to move your choice from the Available list to the Selected list.

  5. Enter an Activation Sequence value for each service listed under Selected Services.

    This value determines the order in which the listed services are activated.

  6. Check Service Fulfillment Manager Required if this service is to be provisioned by the Service Delivery Platform.

    • If you check this box, then the service is provisioned through the Service Delivery Platform

    • If you do not check this box, then the service is defined within the Service Delivery Platform Configurator, but is not necessarily activated through the Service Delivery Platform.

      This feature enables Service Providers to implement the identical service name among different Service Fulfillment Manager medium without conflict.

  7. Enter a comment in the Comment field, if you want.

  8. Save your changes and close the window.

Work Items

You perform a number of tasks with work items. These include:

Defining a New Work Item

To define a new work item, perform the following steps.

Prerequisites

If you plan to associate a workflow with this work item, then you must create the workflow before you create the work item.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Work Items.

  2. Click the New icon on the toolbar. This action causes a blank Details window to display.

  3. Enter the Display name. System screens display this name for the work item.

  4. Enter an Internal name. The system stores this name for the work item in its database.

  5. Enter the Version. The Service Delivery Platform allows multiple versions of a work item.

  6. Enter the Duration. The work item stays active for this length of time.

  7. Enter a Description for this work item.

  8. Enter the Begin Date. The work item becomes available on this date.

  9. Enter the End Date. The work item is no longer available after this date.

  10. Chose a Work Item Type from the list. See Guidelines following for details of work item types.

  11. Chose a user role from the drop down list for Responsibility.

    This determines who is responsible to maintain this information (a user, a group, or a user group). It can also be used for fault resolution assignment (i.e., assigning it to the person responsible for ensuring that the problem is resolved).

  12. Save your changes and close the window.

Guidelines

Use the following information in determining the type of work item to choose.

Work Item Type Comments
Static If selected, then you must also define the fulfillment actions associated with this work item.
See Associating Fulfillment Actions with Work Items for details.
Dynamic If selected, then you must also select a procedure from a list of existing procedures or create a new procedure. The procedure determines the list of fulfillment action’s and their sequence at runtime.
User-defined workflow If selected, enter the Item Type, Process and Key Prefix.
You must also enter the name of the workflow that you have created. (Remember that any workflow that you create must be saved to the general Service Delivery Platform engine before it is accessible for use.)
User workflow start procedure If selected, then you must enter the name of the workflow procedure also, or define a new one.

Deleting a Work Item

To delete an existing work item, perform the following steps.

Prerequisites

The data must be visible in your log in role for you to delete it.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Work Items.

  2. Select a work item from the list at left.

  3. Click Delete.

    The system performs a validation procedure to determine that there are no ill effects to deleting this work item. For example, it checks to see that no parameters or fulfillment actions are assigned to the work item to be deleted. If it passes the validation procedure, then the work item is deleted by the system and it is removed from the list.

Defining a New Work Item Parameter

To define a new work item, perform the following steps.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Work Items.

  2. Select the Parameters tab.

  3. Click Define Parameters. The Define Parameters window opens.

  4. Click the New icon on the toolbar. A blank entry opens in the Display Name list at the left.

  5. Enter a value for the Internal Name of the parameter. The Service Delivery Platform stores this name in its database fro internal use by the system.

  6. Enter a description for the new parameter.

  7. Save your changes and close the window.

Adding Parameters to a Work Item

To add parameters to a work item, perform the following steps.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Work Items.

  2. Select the Parameters tab.

  3. Select a parameter from the Available Parameters list.

    If you do not see the name of the desired parameter in the Available box, enter its name in the Filter field and click the Find icon to search for it.

  4. Use the arrow buttons to move your choice from the Available list to the Selected list.

  5. (Optional) Enter a Display Sequence number for each item in the Selected Parameter list.

    This value determines the order in which the parameter displays in the work item sequence.

  6. (Optional) Enter a Evaluation Sequence number for each item in the Selected Parameter list.

    This value determines the order in which the work item evaluates the parameter.

  7. Check the Required box if this parameter must be present in order to provision the service.

  8. Check the Log in Audit Trail box if this parameter is to be logged and visible in the audit trail.

    Parameters that have this box selected (and are actually used with an order), become visible in the audit trail.

  9. Enter a default value, if desired.

    This value is displayed in the order, and is changed by the user. For example, this could be an IP address or a password.

  10. Enter a value in the Value Lookup SQL field.

    This value is an SQL statement that evaluates the parameter value. If necessary, click Edit Lookup SQL to launch the SQL editor.

  11. Enter a mode for when evaluation of this parameter occurs, if desired. The available choices are:

    • Upon order receipt

    • Upon Retrieval

    • Upon Work Item Start

    See the Work Item Mode Guidelines following for considerations on choosing a work item mode.

  12. (Mandatory, if a mode is selected in step 11, otherwise, ignore.) Enter a name for the procedure to be used in evaluating the parameter value.

    If necessary, click the Add/Edit procedure icon to launch the procedure builder and define a new procedure. See Using the Procedure Builder for details of this process.

  13. Save your changes and close the window.

Work Item Mode Guidelines

You may wish to review the following information before selecting a work item mode.

Order Receipt

If you select Upon Order Receipt, then you must also define a name for the procedure and write the body for the evaluation procedure.

The following steps are performed by the Service Fulfillment Manager if a parameter is marked as Upon Order Receipt. The Service Fulfillment Manager:

Upon Retrieval

If you select Upon Service Fulfillment Manager Order, then you must also define a name for the procedure and write the body for this procedure.

The following steps are performed by the Service Delivery Platform if a parameter is marked as When Service Fulfillment Manager Order. The Service Delivery Platform:

Associating Fulfillment Actions with Work Items

To associate a fulfillment action with a work item, perform the following steps.

Prerequisites

You can only associate fulfillment actions with either static or dynamic work items.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Work Items.

  2. Select a work item from the list at left.

  3. Select the Fulfillment Actions tab.

    The work item type must be static for the Fulfillment Actions tab to be accessible.

  4. Select a fulfillment action from the Available Fulfillment Actions list.

    • If you do not see the name of the desired fulfillment action in the Available box, enter the name of the fulfillment action in the Filter field and click the Find icon to search for it.

    • If the user account is not defined yet, click Define Fulfillment Actions to open the Define Fulfillment Actions window and then add it. See Configuring Fulfillment Actions for details on adding a new fulfillment action.

  5. Use the arrow buttons to move your choice from the Available Fulfillment Actions list to the Selected Fulfillment Actions list.

  6. Enter a Service Fulfillment Manager Sequence number for each item in the Selected Fulfillment Actions list.

  7. Enter a Comment for this fulfillment action, if desired.

  8. Save your changes and close the window.

Managing Fulfillment Actions

You perform a number of tasks with fulfillment actions. These include:

Configuring Fulfillment Actions

To define a new fulfillment action, perform the following steps.

Prerequisites

You must perform the following tasks before configuring fulfillment actions:

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Fulfillment Actions. The Fulfillment Actions window opens.

  2. Click the New icon on the toolbar, or chose File > New from the menu. A new, blank entry opens in the Fulfillment Actions list at the left.

  3. Enter a value for the Display name.

    This is the name of the fulfillment action that is to display in the audit trail and during configuration.

  4. Enter a value for the Internal name.

    This is the name for the fulfillment action that is to be used internally by the system during Service Fulfillment Manager.

  5. Enter the Version number for this fulfillment action.

  6. Enter a value for the fulfillment procedure to select the PL/SQL procedure to execute.

  7. Chose one of the available Fulfillment Element Routing procedures from the drop down list.

    If necessary, click the icon next to the Procedure field and create a routing procedure for use here. See Using the Procedure Builder for details.

  8. Enter a value for Evaluate a Parameter.

    If necessary, click the icon next to the Procedure field and create an evaluation procedure for use here. See Using the Procedure Builder for details.

  9. Chose a Responsibility from the drop down list, if desired.

    If this field is left blank, any user role can use this fulfillment action.

  10. Save your work.

Adding Parameters to a Fulfillment Action

To associate parameters with a fulfillment action, perform the following steps.

Note: A fulfillment action can have more than one parameter associated with it.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Fulfillment Actions. The Fulfillment Actions window opens.

  2. Select a fulfillment action from the list at the left.

  3. Select the Parameters tab.

  4. Select a parameter from the Available Parameters list.

    • If you do not see the name of the desired parameter in the Available box, enter its name in the Filter field and click the Find icon to search for it.

    • If the parameter is not defined yet, click Define Parameters and then add it. See Defining a New Work Item Parameter for details.

  5. Use the arrow buttons to move your choice from the Available list to the Selected list.

  6. (Optional) Enter a Display Sequence number for each item in the Selected Parameter list.

    This value determines the order in which the parameter displays in the fulfillment action sequence.

  7. Enter a Default Value, if desired.

    This value is displayed in the order, and is changed by the user. For example, this could be an IP address or a password.

  8. Enter a name for the Evaluation Procedure to be used in evaluating the parameter value. Specify an evaluation procedure for each parameter that you need to define, if desired.

    If necessary, click the icon next to the Procedure field to launch the procedure builder and define a new procedure. See Using the Procedure Builder for details of this process.

  9. Save your changes and close the window.

Associating a Fulfillment Procedure with a Fulfillment Action

To associate fulfillment procedures with a fulfillment action, perform the following steps.

Prerequisites

A single fulfillment action can have more than one fulfillment procedures defined. However, it must have at least one procedure to indicate the adapter type.

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Fulfillment Actions.

  2. Select a fulfillment action from the list at left.

  3. Select the Fulfillment Procedures tab.

  4. Chose a Fulfillment Element Type from the drop down list.

    If necessary, click Define Types and create a new fulfillment element type.

  5. Enter a value for Software Version (Adapter Type) to set the software version and the connect/disconnect values.

  6. Enter a value for the fulfillment procedure to select the PL/SQL procedure to execute.

    If necessary, click the icon next to the Procedure field and create a new procedure for use here.

  7. Save your changes and close the window.

Modifying a Fulfillment Action Procedure

To modify or edit an existing fulfillment procedure, perform the following steps.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Service Definitions, then Fulfillment Actions

  2. Click the icon next to the Procedure field that you wish to modify.

    The Add/Edit Procedure window opens.

  3. Modify the procedure as desired.

  4. Save your changes and close the window.

Procedure Builder

You use the Procedure Builder to perform the following tasks:

Creating a Procedure

To create a new procedure, perform the following steps.

Prerequisites

None

Steps

  1. Open the Add/Edit Procedure window by clicking the icon next to the Procedure field.

  2. Verify the procedure type.

    This field is read-only. Its value depends on the form field that called the Add/Edit Procedure window.

  3. Enter the internal name for this procedure.

    The Service Delivery Platform uses this name to reference the procedure in its database.

  4. Enter the display name.

    This name is displayed in the system screens.

  5. Enter a description of this procedure.

  6. Do one of the following:

    • Enter the desired PL/SQL code in the Procedure code field.

    • Click Copy From to copy the code from an existing procedure. Use the Edit function to modify it to meet your needs.

  7. Click OK to compile and generate the procedure.

Guidelines

Use the following guidelines during creation of a procedure.

Deleting an Existing Procedure

To delete an existing procedure, perform the following steps.

Prerequisites

The procedure to be deleted must not be used by any other objects.

Steps

  1. Open the Add/Edit Procedure window by clicking the icon next to the Procedure field.

  2. Verify that the procedure Type lists the procedure that you wish to delete.

  3. Click the Delete icon on the toolbar.

  4. Click the Save icon on the toolbar to save your changes.

  5. Select File, then Close.

Viewing Procedure Parameters

To view the parameters or attributes which can be used in the procedure, perform the following steps.

Prerequisites

None

Steps

  1. Open the Add/Edit Procedure window by clicking the icon next to the Procedure field.

  2. Click Attributes.

  3. Click OK to close the Parameters window.

  4. Click OK to exit the Add/Edit Procedure window.

    Note: The parameters or attributes displayed are the internal names of the fulfillment element attributes that you have previously configured. Only internal names can be used inside the procedure body.

Editing an Existing Procedure

To edit an existing procedure, perform the following steps.

Prerequisites

Do not modify a default procedure.

Steps

  1. Open the Add/Edit Procedure window by clicking the icon next to the Procedure field.

  2. Verify the procedure type.

    This field is read-only. Its value depends on the form field that called the Add/Edit Procedure window.

  3. Click on the Procedure Code field.

  4. Select Edit, then Edit Field from the menu.

  5. Modify the PL/SQL code in the Procedure Code text field.

  6. Click OK to compile and generate the procedure.

Managing Fulfillment Element Types

For every fulfillment element that you define, there must first exist a definition of that fulfillment element type.

The following tasks are associated with fulfillment elements types:

Defining a Fulfillment Element Type

Note: Any service order request provisioned through the Service Delivery Platform requires that a specific fulfillment order type for that request also be configured through the Service Delivery Platform.

To define a new fulfillment element type, perform the following steps.

Prerequisites

Fulfillment element types are defined by system experts only.

Steps

  1. In the Navigator, choose Setup, then Interface Definition, then Fulfillment Element Types. The Fulfillment Element Types window opens.

  2. Select the Details tab.

  3. Click Define Types.

  4. Click Add. This action causes a blank Define Fulfillment Element Types window to open.

  5. Complete the fields in the Details tab.

  6. Complete the fields in the Attributes tab.

  7. Complete the fields in the Software tab.

  8. Save your changes and close the window.

Deleting a Fulfillment Element Type

To delete an existing fulfillment element type, perform the following steps.

Prerequisites

You can not delete a fulfillment element type if either one of the following conditions is true:

Steps

  1. In the Navigator, choose Setup, then Interface Definition, then Fulfillment Element Types. The Fulfillment Element Types window opens.

  2. Select the Details tab.

  3. Select the fulfillment element type to delete from the list at the left.

  4. Click the Delete icon on the toolbar.

  5. Save your changes and close the window.

Managing Fulfillment Elements

There are a number of tasks associated with fulfillment elements. These include:

Defining a New Fulfillment Element

To add a new fulfillment element, perform the following tasks.

Warning: Each Fulfillment Element name must be unique and consist only of alphanumeric characters.

Prerequisites

The type of fulfillment element that you wish to add must exist before you can add the fulfillment element.

Steps

  1. In the Navigator, choose Setup, then Interface Definition, then Fulfillment Elements.

  2. Select the Details tab.

  3. Click the New icon on the toolbar. This action causes a blank Details screen to open.

  4. Complete the fields in the Details tab.

  5. Complete the fields in the SW Versions tab, including both the Details and Attributes sub-tabs.

  6. Save your changes and close the window.

Deleting a Fulfillment Element

To delete a fulfillment element, perform the following tasks.

Warning: If you delete a fulfillment element, then the logical and physical entity of the fulfillment element is removed from the Service Delivery Platform database.

Prerequisites

You can not delete a fulfillment element, if either the following is true:

Steps

  1. In the Navigator, choose Setup, then Interface Definition, then Fulfillment Elements.

  2. Select the Details tab

  3. Select the fulfillment element that you wish to delete from the list at the left.

  4. Click Delete.

  5. Save your changes and close the window.

Modifying a Fulfillment Element Configuration

If changing a fulfillment element configuration (for example, disabling a fulfillment element, or changing the fulfillment element attributes such as the IP address), perform the following steps.

Prerequisites

None

Steps

  1. Shutdown the Work Item queue to stop the work item dequeuers.

  2. Ensure that there are no fulfillment actions remaining in the Wait for FE queue and the FE Ready queue. This means that all the fulfillment actions are processed at this point.

  3. Shutdown the adapters for the fulfillment element.

  4. Change the attributes for the fulfillment element.

  5. Restart the adapters for the fulfillment element.

  6. Restart the Work Item queue.

Creating an Activity or Process Timer

Perform the following steps to create either an activity or process timer.

Prerequisites

None

Steps

  1. In the Navigator, choose Setup, then Message Definition, then iMessage Studio.

  2. Click the New icon on the toolbar to create a new timer message.

    A blank field opens in the Message Code list.

  3. Enter a name for the new timer in the Message Code field.

    The system uses this name for internal identification.

  4. Select the Details tab.

    The Elements and Structure tabs are grayed out. Timer messages come with two predefined, mandatory elements: Interval and Duration.

  5. Select Timer from the drop-down list of available types.

  6. Enter a short name for the timer in the Display Name field.

  7. Enter a brief description for the timer.

  8. Select a priority for the timer.

    This value sets the priority for the timer message in the Timer Message queue.

  9. Select Timer Queue from the Queue Name drop-down list of values.

  10. (Optional) Choose a responsibility for this message from the drop-down list of values.

  11. Click the Save icon on the toolbar.

    You must save your work before proceeding.

  12. Select the Data Source tab.

  13. Select the tree root for the timer.

  14. Select SQL Query from the Data Source Type drop-down list of values.

  15. Select One and Only One from the Data Source Cardinality drop-down list of values.

  16. Specify the source code for the timer in the Source field.

  17. Select the Delay branch from the tree root for the activity timer.

  18. Enter a reference for the Delay branch in the Reference field.

  19. Select the Interval branch from tree root for the Activity Timer

  20. Enter a reference for the Interval branch in the Reference field.

  21. Click the Save icon on the toolbar.

  22. Select the Detail tab.

  23. Click Compile to compile the timer. If an error occurs, verify that you have followed steps 2 - 23 above correctly. After correcting the error, recompile the message.

  24. Click the Close Form icon on the toolbar to close the window.

Source Guidelines

The source SQL structure for the activity timer must be of the following format:

SELECT ’<D>’ DELAY, ’<I>’ INTERVAL FROM DUAL

Where <D> is delay integer value (in seconds)

<I> is the interval integer value (in seconds)

For example:

SELECT ’0’ DELAY, ’900’ INTERVAL FROM DUAL

Delay Guidelines

The reference value must be of the following format:

xnp$<activity_timer_name>.<select-list column name>

Where <activity_timer_name> is the internal name defined in step 3 above.

<select-list column name> is the first select-list value of the SQL source specified in step 16.

For example:

XNP$ACT_TIMER_1.DELAY

Interval Guidelines

The reference value must be of the following format:

xnp$<activity_timer_name>.<select-list column name>

Where <activity_timer_name>is the internal name defined in step 3 above.

<select-list column name> is the first select-list value of the SQL source specified in step 16.

For example:

XNP$ACT_TIMER_1.INTERVAL

Creating a Message Timer

Perform the following steps to create a message timer.

Prerequisites

Before creating the message timer, you must first create the message with which it is associated.

Steps

  1. In the Navigator, choose Setup, then Message Definition, then iMessage Studio.

  2. Click the New icon on the toolbar to create a new timer message.

    A blank field opens in the Message Code list.

  3. Enter a name for the new timer in the Message Code field.

    The system uses this name for internal identification.

  4. Select the Details tab.

  5. Select Message from the drop-down list of available types.

  6. Enter a short name for the timer in the Display Name field.

  7. Enter a brief description for the timer.

  8. Select a priority for the timer.

    This value sets the priority for the timer message in the Timer Message queue.

  9. Select Outbound Message Queue from the Queue Name drop-down list of values.

  10. (Optional) Choose a responsibility for this message from the drop-down list of values.

  11. (Optional) Enter a path reference in the DTD Location field.

  12. Click the Save icon on the toolbar.

    You must save your work before proceeding.

  13. Use the Elements tab to add elements to the message.

  14. Use the Structure tab to define the structure of the message.

  15. Save your work before closing the window.

Workflow Procedure Guidelines

Use the following rules during procedure definition.

Compiling Procedures

After creating a new procedure, you must compile it. The procedure builder prompts you with compilation errors if you have either of the following conditions exist:

The AOL Generic Loader

The Oracle Application Object Library loader is a general purpose data migration tool that is used for patching seed data, delivering translations, or copying setup or transaction data from development to production systems.

The loader is a concurrent program named FNDLOAD. To use this utility, enter the following command at a UNIX prompt.

FNDLOAD apps/pwd 0 Y mode configfile datafile entity [ param ... ]

The table following lists the parameters used with this executable and describes them.

Parameter Description
apps/pwd Specifies the APPS schema and password.
  • If the connect_string is omitted, it is taken in a platform-specific manner from the environment using the name TWO_TASK

0 Y Concurrent program flags
mode Specifies either UPLOAD or DOWNLOAD operation.
  • UPLOAD causes the specified data file to be uploaded to the database.

  • DOWNLOAD causes the loader to fetch rows and write them to the specified data file.

configfile Specifies the configuration file to use.
  • The configuration file usually ends with a suffix of.lct, but this rule is neither enforced nor supplied by the loader.

datafile Specifies the data file to write.
  • (DOWNLOAD) If the data file already exists, then it is overwritten.

  • The configuration file usually ends with a suffix of.lct, but this rule is neither enforced nor supplied by the loader.

entity Specifies the entity type to begin the download or upload.
  • If you wish to upload all of the entity types in a data file (.ldt), specify a dash (-) as the entity type.

  Specifies zero or more additional parameters that are used to provide bind values in the access SQL (for both the UPLOAD and DOWNLOAD operations).
  • Each parameter is of the form NAME=VALUE. The given NAME must not conflict with an attribute name for the entities being loaded.

Loader File Definitions

You can find the FNDLOAD configuration files for XDP at the following location:

$XDP_TOP/patch/115/import/*.lct

The following table lists the loader files used with Oracle Service Fulfillment Manager and provides the entities and download parameters supported by each.

See the contents of the individual configuration file for full documentation on usage.

Name Description Entity Optional Download Parameters
xdpparpl.lct Parameter Pool XDP_PARAMETER_POOL PARAMETER_NAME
xdpprbod.lct Procedure Body XDP_PROC_BODY PROC_NAME
xdpaccod.lct Action Codes XDP_ACTION_CODES ACTION_CODE
xdpfacts.lct Fulfillment Actions XDP_FULFILL_ACTIONS FULFILLMENT_ACTION
VERSION
xdpwipar.lct Work Items XDP_WORKITEMS WORKITEM_NAME
VERSION
xdpfetyp.lct Fulfillment Element Types XDP_FE_TYPES FULFILLMENT_ELEMENT_TYPE
xdpfes.lct Fulfillment Elements XDP_FES FULFILLMENT_ELEMENT_NAME
xdpsrves.lct Services XDP_SERVICES SERVICE_NAME
VERSION
xdppkges.lct Packages XDP_SERVICE_PACKAGES PACKAGE_NAME
PACKAGE_VERSION

The following tables lists dependencies between the various files.

Name Dependency
apps/pwd Specifies the APPS schema and password.
  • If the connect_string is omitted, it is taken in a platform-specific manner from the environment using the name TWO_TASK

0 Y Concurrent program flags
xdpfacts.lct First run xdpparpl.lct
xdpwipar.lct First run xdpparpl.lct
xdpfes.lct First run xdpfetyp.lct
xdpsrves.lct First run xdpaccod.lct.
xdppkges.lct First run xdpsrves.lct.

Several of the loader files also support optional upload parameters. The table following lists them.

Name Upload Parameter Comments
xdpwipar.lct OVERRIDE_MAPPNG
  • If this command line argument is set to ’Y’, then all existing mappings from a work item to a fulfillment action are deleted first. Then, the mappings being inserted by the loader.

  • If this command line argument is set ’N’ or if it is not defined, mapping are inserted for a work item only if it did not exist previously.

xdpsrves.lct OVERRIDE_MAPPNG
  • If this command line argument is set to ’Y’, then all existing mapping from service valid actions to work items are deleted first. Then the mappings are inserted by the loader.

  • If this command line argument is set ’N’ or if it is not defined, mapping are inserted for service valid actions only if it did not exist previously.

Event Subscription

Applications register with the Event Manager if they need information on specific messages (events) or all instances of that message type. An application can be an external system, an operating system or a mediation layer.

Every message and event is sent to the Event Manager which becomes the source of distribution for events and messages. This is known as event subscription. Event subscription is a business process handled within Workflow.

Setting Up Event Subscription

In the Event Manager, it is possible for default subscribers to subscribe to specific events of the application. When a message occurs, the Event Manager ensures that an outbound message is automatically sent to the subscriber identified by a Fulfillment Element, OSS or gateway.

Responding to an Event

Steps

  1. Create the message or event that is to the trigger for a response.

  2. Configure an Acknowledgment/ Response to the message or event that you created in step 1.

  3. Link the Acknowledgment that you created in step 2 to the message/event that you created in step 2.

Automatic Responses

If desired, you can associate one or more responses with an event. A response is an acknowledgment to a message.

For example, valid message responses for the message "Is this an existing customer?" are:

These responses are messages in themselves and must be configured in Oracle Service Fulfillment Manager Name before they can be linked as responses to a message.

Administering the Oracle Service Fulfillment Manager

The Service Fulfillment Manager of various network elements is accomplished with the use of adapters. Adapters are processes which are specialized in certain protocols. (Telnet, FTP, or other protocols.). You direct the adapters to perform various tasks in the system.

Note: To administer the Oracle Service Fulfillment Manager Concurrent Manager, open the Administer Concurrent Managers form the window available through Concurrent > Administer Manager.

Oracle SFM Start

Application Start is a concurrent request that is performed by the Oracle Service Fulfillment Manager Concurrent Manager.

You use the Application Start process to perform the following tasks:

The system automatically starts all the dequeuers and the Controller during the start process. If any dequeuers are already started, the number actually running is first determined, and matched against the number that are required to be started. The system automatically starts as many dequeuers as needed.

Note: You set the number of running dequeuers through the Queue Console, available through Administration > Queue Console.

Prerequisites

Application Start and Stop are mutually exclusive processes. If one is pending, the opposite operation does not proceed until the first finishes. In addition, the Oracle Service Fulfillment Manager Concurrent Manager processes must be up and running.

Steps

  1. In the a Navigator, select Applications, then Start. The Parameters window appears.

  2. Enter a value in the Options field from the drop-down list of values.

    See the Guidelines for information on these choices.

  3. Enter a value in the Fulfillment Element field that is to be included (or excluded) from the application start process.

    This choice depends on the value that you chose in step 2, preceding.

  4. Enter a value (0 - 3) for the Debug Mode.

    This value sets the level of logging that can be used for debugging purposes.

  5. Click OK.

    The Oracle SFM Start dialog box becomes available. Parameters that you set in the previous dialog box display in the Parameters field.

  6. (Optional) Click Copy, if you wish to use start parameters from a prior start request, otherwise proceed to step 7.

    If you chose this option, then select from the provided list and continue to step 10.

  7. (Optional) Click Languages..., if you wish to change the default language used in generating the log entries, otherwise proceed to step 8.

    If you chose this option, then place a check mark in the box next to the language, or languages, you wish to add. Continue to step 8.

  8. (Optional) Click Schedules..., if you wish to change the default time at which this request is to be run. Perform either 1 or 2, following.

    1. Click Apply a Saved Schedule... to choose from a list of predefined schedules.

    2. Chose an option from the Run the Job... list.You can set how often, and when, you wish the start request to run. Depending on which radio button you check, a number of additional fields display so that you may specify exact dates and times.

  9. (Optional) Click Options..., to specify to whom, and in what language, you wish a notification to be sent. You can also direct the output log files to be sent to a specific printer.

  10. Click Submit to initiate the start process and to close the dialog box.

Note: Each request generates a Request ID. You can use this Request ID to view the request status and the log entries through the View Requests form window, available through Concurrent > View Requests.

Guidelines

Options: The table following lists the available choices. This option indicates which adapters are to be started. You must select from the provided list of values.

Option Description
ALL All adapters (for all fulfillment elements) marked AUTOMATIC are started.
(You set an adapter to AUTOMATIC through Administration > Connection Manager. You can also use the Adapter Properties form window to configure adapter properties.)
INCLUDE Only adapters marked AUTOMATIC that are associated with the designated fulfillment element are started.
EXCLUDE All adapters marked AUTOMATIC are started, except for those associated with the designated fulfillment element.
NONE No adapters are started.

Fulfillment Element: Select the fulfillment element that is to be included or excluded (see the preceding table) from the application start. You must select from the provided list of values.

Debug Mode: Select the debugging mode to be used for the Controller and the dequeuer processes. You must select from the provided list of values.

The following table lists the available options.

Debug Level Description
0 No trace
1 Minimum trace
2 Medium trace
3 Maximum trace

Note: Adapters are started with the debug level configured through the Adapter Properties window.

Oracle SFM Stop

Application Stop is a concurrent request that is performed by the Oracle Service Fulfillment Manager Concurrent Manager.

You use the Application Stop process to perform the following tasks:

Prerequisites

Application Start and Stop are mutually exclusive processes. If one is pending, the opposite operation does not proceed until the first finishes. In addition, the Oracle Service Fulfillment Manager Concurrent Manager processes must be up and running.

Steps

  1. In the a Navigator, select Applications, then Stop. The Parameters window appears.

  2. Enter a value in the Options field from the drop-down list of values. See Guidelines for information on these choices.

  3. Enter a value in the Fulfillment Element field that is to be included (or excluded) from the application stop process. This choice depends on the value that you chose in step 2.

  4. Enter a value for the Stop Mode.

  5. Click OK. The Oracle SFM Stop dialog box becomes available. Parameters that you set in the previous dialog box display in the Parameters field.

  6. (Optional) Click Copy, if you wish to use stop parameters copied from a prior stop request, otherwise proceed to step 7.

    If you chose this option, then select from the provided list and continue to step 10.

  7. (Optional) Click Languages..., if you wish to change the default language used in generating log entries, otherwise proceed to step 8.

    If you chose this option, then place a check mark in the box next to the language, or languages, you wish to add. Continue to step 8.

  8. (Optional) Click Schedules..., if you wish to change the default time at which this request is to be run. Perform either step 1 or 2 given below.

    1. Click Apply a Saved Schedule... to choose from a list of predefined schedules.

    2. Chose an option from the Run the Job... list.You can set how often, and when, you wish the start request to run. Depending on which radio button you check, a number of additional fields display so that you may specify exact dates and times.

  9. (Optional) Click Options..., to specify to whom, and in what language, you wish a notification to be sent. You can also direct the output log files to be sent to a specific printer.

  10. Click Submit to initiate the stop process and to close the dialog box.

Note: Each request generates a Request ID. You can use this Request ID to view the request status and the log entries through the View Requests form window, available through Concurrent > View Requests.

Guidelines

Options: The followingtable lists the available choices. This option indicates which adapters are to be stopped. You must select from the provided list of values.

Option Description
ALL All adapters, for all fulfillment elements, dequeuers and the Controller are stopped. This option signifies the complete application stop.
INCLUDE Only adapters marked AUTOMATIC that are associated with the designated fulfillment element are stopped.
EXCLUDE All adapters marked AUTOMATIC are stopped, except for those associated with the designated fulfillment element.

Fulfillment Element: Select the fulfillment element that is to be included or excluded (see the preceding table) from the application stop. You must select from the provided list of values.

Stop Mode: Select the mode to be used. You must select from the provided list of values.

Debug Level Description
Normal This specifies the standard shutdown mode. Depending on the choice that you made under Options, this could be the entire system, or only a subset of it.
For example, if you select the NORMAL mode, and the Options value is set to ALL, then the following occurs:
  • If there are no adapters still processing orders, then all the dequeuers and the Controller are stopped.

  • If some of the adapters are still processing orders, all the dequeuers stop, except for the Event Manager. Once an adapter has finished processing an order, the Event Manager shuts the adapter down and a database job shuts down the Event Manager and Controller.

Abort Specifies an abnormal mode of shutdown. All the running processes (as specified in the Options selection) are terminated at the operating system level.

Service Fulfillment Manager Procedure Macros

Oracle Service Fulfillment Manager comes with a set of predefined constructs that can be used to build procedures. These constructs are.

SEND

The SEND macro accepts a command string as an argument. This command string is sent to the fulfillment element as the command to be executed. You use the SEND macro to “send” commands to the network elements.

Signature

The signature of the SEND construct is as follows:

SEND(<command>  <varchar2>, <encrypt flag> <varchar2>, <prompt (optional)><varchar2>, <err code (out)> <number>, <error string (out)> <varchar2>)

The application stores all the transactions sent and received, to and from the fulfillment elements in its audit trail. However, it also provides a mechanism that allows you not to store, or write sensitive information contained in the service order request to the audit trail, if desired. Responses from fulfillment elements may also carry the same sensitive information.

Therefore:

Syntax

The usage of the construct is defined as follows:

SEND(
<command> string which contains the command to be sent,this is where you specify your service parameters in $variable_name format.
<‘Y’ or ‘N’> to indicate whether the command response must be logged into the audit trail, 
<prompt> is an optional field which indicates the prompt at the Network Element after the execution
of <command>>
<a number place holder for the out parameter error_code>,
<a varchar2 place holder for the out parameter error string>
);

Restrictions

Note the following restrictions on the use of the SEND macro.

  1. For parameter values with white spaces, specify the corresponding $variable_ names in double quotes.

  2. Eliminate white spaces between SEND and the "(" following it.

    Correct Usage: SEND(

    Incorrect Usage: SEND (

  3. Do not use SEND inside comments.

SEND HTTP

The SEND_HTTP macro accepts a command string as an argument. This command is then sent to the fulfillment element as the command to be executed using the HTTP protocol. Typically, in this scenario, the command is an URL.

Signature

The signature of the construct is as follows:

SEND(
a string which contains the URL to be sent> ,
<‘Y’ or ‘N’ indicator which indicates whether the URL should be logged into the audit trail>,
<a number place holder for the out parameter error_code>,
<a varchar2 place holder for the out parameter error string>
);

Restrictions

Note the following restrictions on the use of the SEND_HTTP macro.

  1. Eliminate white spaces between SEND and the "(" following it.

    Correct Usage: SEND(

    Incorrect Usage: SEND (

LOGIN

The LOGIN macro accepts a command string as an argument. It uses the argument to initiate a connection. Use this macro to initiate a connection to a fulfillment element which has an interactive interface (for example, Telnet).

Note: The LOGIN construct should appear before the first SEND construct in the procedure.

Signature

The signature of the LOGIN construct is as follows:

LOGIN(
<a string which contains the command to be sent> ,
<a string which contains the command response expected>,
<a number place holder for the out parameter error_code>,
<a varchar2 place holder for the out parameter error string>
);

SEND (Connection Procedure)

This SEND macro accepts a command string as an argument. It uses the argument to send the command set (connect) to the fulfillment element. One of the connection commands is executed.

Signature

The signature of the LOGIN construct is as follows:

LOGIN(
<a string which contains the command to be sent> ,
<a string which contains the command response expected>,
<a number place holder for the out parameter error_code>,
<a varchar2 place holder for the out parameter error string>
);

Restrictions

Note the following restrictions on the use of the LOGIN macro.

  1. Use the LOGIN macro once only before any SEND construct.

  2. Use the LOGIN macro only in a connect procedure.

  3. Do not use order, line, work item, and fulfillment action as service parameters. The $ variables are fulfillment element attributes, and, as such, can not be used as service parameters.

RESPONSE_CONTAINS

The RESPONSE_CONTAINS procedure macro is a PL/SQL function that compares a user-defined string against the string returned by a fulfillment element in response to the last command that it received. The macro returns TRUE if the two strings match, otherwise it returns FALSE.

Signature

The signature of the LOGIN construct is as follows:

RESPONSE_CONTAINS(
<a string which contains the string to be matched>
)
return BOOLEAN;

Restrictions

Note the following restrictions on the use of the RESPONSE_CONTAINS macro.

  1. Do not use $ variables.

  2. Eliminate white spaces between RESPONSE_CONTAINS and the "(" following it.

    Incorrect Usage: RESPONSE_CONTAINS (

    Correct Usage: RESPONSE_CONTAINS(

GET_RESPONSE

The GET_RESPONSE macro returns the response string from the fulfillment elements for the last command sent.

Signature

The signature of the construct is as follows:

GET_RESPONSE return VARCHAR2

Syntax

The usage of the construct is defined as follows:

err_code number;
err_str varchar2(400);
lv_user varchar2(80);
BEGIN
lv_user := GET_PARAM_VALUE(‘$WI.user’);
SEND(‘AddProfile -h $WI.hostname -p $FA.dbport -u $WI.user’, ‘Y’, err_code, err_str);
IF RESPONSE_CONTAINS(‘profile already exist’) THEN
NOTIFY_ERROR(‘Error when Service Fulfillment Manager Cisco Secure HA Server. Subscriber ‘ ||
lv_user || ‘ already exists’,’A’);
RETURN;
END IF;
EXCEPTION
WHEN OTHERS THEN
RAISE;
END;

Restrictions

Note the following restrictions on the use of the GET_RESPONSE macro.

  1. Do not use $ variables.

  2. Eliminate white spaces between RESPONSE_CONTAINS and the "(" following it.

    Incorrect Usage: GET_RESPONSE (

    Correct Usage: GET_RESPONSE(

GET_PARAM_VALUE

Use the GET_PARAM_VALUE procedure macro to obtain the value of the parameter during run-time.

Signature

The signature of the construct is as follows:

GET_PARAM_VALUE (<parameter name> <varchar2>) return VARCHAR2

When using this macro, specify the parameters as a $ variable. For example, parameter TN (if used inside a Service Fulfillment Manager procedure), is specified as $ORDER.TN.

Restrictions

Note the following restriction on the use of the GET_PARAM_VALUE macro.

  1. Eliminate white spaces between GET_PARAM_VALUE and the "(" following it.

    Incorrect Usage: GET_PARAM_VALUE (

    Correct Usage: GET_PARAM_VALUE(

NOTIFY_ERROR

The NOTIFY_ERROR procedure macro indicates an abnormal exit point from the procedure. The Service Fulfillment Manager of a service order request at a fulfillment element has an ERROR status.

This macro appends or replaces a response initiated by the fulfillment element / network element. This is the input string.

Signature

The signature of the construct is as follows:

NOTIFY_ERROR(<user’s string> <varchar2>, <mode> <char>)

Guidelines

  1. You use this macro under the following conditions:

    • You want to identify errors coming from the fulfillment element during the Service Fulfillment Manager process.

    • You want to identify errors when exiting from the Service Fulfillment Manager procedure.

  2. You use the NOTIFY_ERROR macro to abort a Service Fulfillment Manager procedure.

  3. You use the NOTIFY_ERROR macro to abort a Service Fulfillment Manager procedure.

  4. The Service Delivery Platform uses the <user's string> to display the Service Fulfillment Manager errors of a failed Service Order Request. Make this name user-friendly. This name provides the ability to translate cryptic network element error messages into those that are more user friendly.

Example Service Delivery Platform Procedures

Following are several example workflow procedures:

Service Fulfillment Manager Procedure

The following is an example of a Service Fulfillment Manager Procedure.

DECLARE
err_code number;
err_str varchar2(400);
lv_user varchar2(80);
BEGIN
lv_user := GET_PARAM_VALUE (‘$user’);
SEND(‘AddProfile -h $hostname -p $dbport -u $user’, ‘Y’, err_code, err_str);
IF RESPONSE_CONTAINS (‘profile already exist’) THEN
NOTIFY_ERROR(‘Error when Service Fulfillment Manager Cisco Secure HA Server. Subscriber ‘ ||
lv_user || ‘ already exists’,’A’);
RETURN;
END IF;
EXCEPTION
WHEN OTHERS THEN
RAISE;
END;

Connect Procedure

The following is an example of a Connect Procedure.

DECLARE
err_code number;
err_str varchar2(400);
lv_user varchar2(80);
BEGIN
LOGIN(‘telnet $ip_address’, ‘login:’, err_code, err_str);
SEND(‘$username’, ‘$Password:’, err_code, err_str);
SEND(‘$Password’, ‘$’, err_code, err_str);
EXCEPTION
WHEN OTHERS THEN
RAISE;
END;

Workflows

Using Timers in Workflow

You can build timer functionality into your user-defined Workflow by using a set of drag-and-drop activities provided by Oracle Service Fulfillment Manager. These activities are part of the SFM Standard item type.

The following table lists the activities that can be associated with timers in Workflow:

Function Name Description
Deregister Remove all timers for a given order
Fire Timer Function to start either a process or activity timer
Send Message Function that sends a message which has a timer associated with it
Start Related Timers Function to start either an activity timer or a timer associated with a message
Subscribe to Acknowledgements Function to subscriber for possible results from the Send Message function
Get Jeopardy Flag Checks whether or not a jeopardy timer exists for a given order
Get Timer Status Returns the status of a timer
Recalculate all timers Recalculates the delay and interval elements for all timers associated with the given the Work Item name, Instance ID, Order ID, or the Fulfillment Action Instance ID.
Remove Timer Deletes the timer with the given name

Activity Timers

An Activity Timer is used in conjunction with a workflow activity. The purpose of an Activity Timer is to provide the ability to set a predefined period of time within which a workflow activity must be completed.

For example, a workflow activity is defined to check the network capacity for a requested data service. The time period to perform the workflow activity is set to 30 minutes. An Activity Timer is then associated with the workflow activity to handle the required business logic if the 30 minute time frame for the activity is exceeded.

Process Timers

A Process Timer is used in conjunction with a Workflow process. The purpose of a Process Timer is to provide the ability to set a predefined period of time within which a Workflow process must be completed.

For example, a workflow process is defined to provide a requested data service. The time period to perform the Workflow process is set to one business day. A Process Timer is then associated with the workflow process to handle the required business logic if the one day time frame for the process is exceeded.

Message Timers

A Message Timer is used in conjunction with a message. The purpose of a Message Timer is to provide the ability to set a predefined period of time within which a message acknowledgment must be received.

For example, a workflow process is defined to set up an account for a network service. A message is sent to the associated network service administrator. If a reply is not received back with in 30 minutes, then the timer message is published and picked up by the workflow activity that is Waiting for the Acknowledgments. The acknowledgment may be a message reply or a timer in which the workflow follows a path based on the message received.

The Waiting For Acknowledgments activity subscribes to events. An event can be configured to include an acknowledgment for the message sent out, as well as a timer. Depending on the message received, the workflow progresses.

Workflow in Oracle Service Fulfillment Manager

Workflows are processes that execute during the main Service Fulfillment Manager process to process and fulfill the order. Workflows can be run before starting the Service Fulfillment Manager process.

You use the Oracle Workflow Builder to configure the workflows to be executed during the Service Fulfillment Manager process. The workflow can be invoked for a work item or a fulfillment action.

The main Service Fulfillment Manager workflow waits until all sub-processes complete their activities before continuing to fulfill the order.

If an error occurs during the main Service Fulfillment Manager process, you can intervene manually and launch appropriate workflows as the situation dictates. You can launch any workflow process in Oracle Service Fulfillment Manager, as necessary.

The Workflow Builder

Refer to the Oracle Workflow Guide for details on the workflow builder.

Workflow Processing of a Service Order Request

During the execution of a service order, the line items associated with it are processed by workflow. Which fulfillment procedures execute depend on the type and software generic of the fulfillment element configured in Oracle Service Fulfillment Manager.

Processing a Service Order Request

The Workflow Monitor

The Workflow Monitor utility provides a graphical interface to track a service order’s path in Oracle Service Fulfillment Manager. When launched, it opens in a web browser screen.

Using the graphical interface, you can: