|Oracle® Application Integration Architecture Oracle Communications Order to Cash Integration Pack Implementation Guide for Siebel CRM, Oracle Order and Service Management, and Oracle Billing and Revenue Management
Part Number E26501-03
|PDF · Mobi · ePub|
This chapter provides an overview of the Query Product Classes business flow and discusses Siebel Customer Relationship Management (Siebel CRM) interfaces, industry Oracle Application Integration Architecture (Oracle AIA) components, and integration services.
This chapter includes the following sections:
Product administrators define product classes and transaction attributes in Siebel CRM. The SCE product-to-service mapping specialist queries and imports the product class and the associated transaction attributes into a cartridge from SCE Studio. The product-to-service mapping specialist then maps the product class to a product specification in the cartridge. They use the product specification to associate decomposition rules, fulfillment functions, and their dependencies. After all the design time setup is completed, they deploy the cartridge to Oracle OSM. The cartridge defines various fulfillment topologies to process order lines during order processing.
Figure 6-1 illustrates the flow.
The product administrator performs the following operations in Workspace projects in the Siebel application:
Creates a new product class and transaction attributes and then associates attribute definitions to them.
Updates the product class by adding or deleting transaction attributes.
Updates the attribute definitions (value sets) by adding or removing values from them.
For this step, select any class that has the transaction attribute that is associated with the valueset and send the notification.
For more information about creating classes, attributes, and attribute definitions in Siebel, see the Siebel Product Administration Guide.
Whenever these operations are performed, the Siebel product administrator notifies the product-to-service mapping specialist in SCE Studio. The product administrator can send the notification in multiple ways:
Use the notify menu function provided by Siebel. This function is provided in the Product Class UI in the Siebel application. The notification uses fixed templates to communicate the product class details and requires additional configuration in the Siebel application. One or more classes can be selected, and a single notification can be sent from Siebel.
For more information about setting up the notification in Siebel, see the Siebel Quick Fix Installation Guide, "Email Notification for the Product Class" and "Attribute Query Feature."
Use a company's email application. This method provides additional flexibility to add more required information. This method is not dependent on a template and does not require additional configuration steps.
Regardless of the mechanism used to send the notification, you must include the product class name. The product-to-service mapping specialist uses the product class name to query in SCE Studio. If you use the notify menu function, the template adds the product class name.
The integration solution provides services that the product-to-service mapping specialist can use to query or import new or updated product classes from Siebel into SCE Studio.
The SCE product-to-service mapping specialist logs in to SCE Studio and queries or imports the product class and the transaction attribute details from Siebel into a cartridge. The import process uses the product class name. SCE Studio also offers the flexibility to query all the classes in the hierarchy associated with a product class. For more information about using SCE Studio, refer to the SCE documentation
For more information about using the SCE Studio, see the design studio section in the "OSM System Components" chapter of the Oracle Communications Order and Service Management Concepts Guide. See also the Design Studio online help.
After you import the product classes into a cartridge, the system stores all the transaction attributes and the associated valuesets in the SCE Studio data dictionary. Map the product class to a product specification in the cartridge. You can create a new product specification or map an existing product specification to the product class.
After you map the product class and the product specification, the product-to-service mapping specialist defines and associates fulfillment functions and their dependencies to the product specification. After defining the validation and decomposition rules, they deploy the cartridge to the studio environments.
SCE Studio provides a function that tests the design-time configuration after you submit a sample test order. If issues occur with the product specification in the cartridge, then you create a new product specification or import the product class again. If you create a new product specification, you must perform the configuration again. You must redeploy the cartridge for your changes to take effect. Oracle OSM uses the deployed cartridge to process order lines that are submitted for fulfillment.
Figure 6-2 illustrates how you query the product class and attributes from SCE:
When this process initiates, the following events occur:
The product-to-service mapping specialist must include all the necessary product class names in the query dialogue in SCE and invoke the query operation. The SCE Client calls the SCE Query Product Class Application Business Connector Service (ABCS) and provides one or more Class details as input. SCE must be configured to provide the input in the Product Class EBO structure that has only the Product Class names.
The SCE Query Product Class ABCS provides the Product ClassEBM.
The SCE Query Product Class ABCS routes the Product ClassEBM to Siebel Query Product Class ABCS.
The Siebel Query Product Class ABCS transforms the Product ClassEBM, extracts the product class name, and invokes the Siebel getProductClass web service.
The Siebel getProductClass web service returns the complete product class information for all input product classes to the Siebel query product class ABCS.
The Siebel Query Product Class ABCS transforms the response message into the Product ClassEBM.
The Siebel Query Product Class ABCS routes the Product ClassEBM to the SCE Query Product Class ABCS.
The SCE Query Product Class ABCS identifies that the ProductClass has references to one or more attribute definition entities. It has to query all the attribute definitions associated with all of the product classes. It aggregates all of the attributes that are associated with all of the product classes. It provides all attribute IDs that are associated with all the product classes.
The SCE Query Product Class ABCS routes the request to the Siebel Query Attribute ABCS.
The Siebel Query Attribute ABCS invokes the getAttributeDefinition web service provided by Siebel.
The getAttributeDefinition service returns the complete attribute information for all attribute IDs to the ABCS.
The Siebel Query Attribute ABCS performs the transformation, filters the necessary fields, and constructs the AttributeEBM.
The Siebel Query Attribute ABCS routes the Attribute enterprise business message (EBM) back to the SCE Query Product Class ABCS.
The SCE Query Product Class ABCS identifies that the attributes have references to the valueset entity. It must query all of the valuesets associated with all the attributes. It aggregates all of the attributes that are associated with all the valuesets.
The SCE Query Product Class ABCS routes the request to the Siebel Query Valueset ABCS.
The Siebel Query Attribute ABCS invokes the getAttributeDefinition web service provided by Siebel.
The getAttributeDefinition service returns the complete attribute information to the ABCS.
The Siebel Query Valueset ABCS performs the transformation, filters the necessary fields, and constructs the ValuesetEBM.
The Siebel Query Valueset ABCS routes the ValuesetEBM back to the SCE Query Product Class ABCS.
The SCE Query Product Class ABCS composes the Product ClassEBM, the AttributeEBM, and the ValuesetEBM and returns it to the SCE Client application.
Figure 6-3 illustrates the logical data model.
The Siebel product administrator can update the attribute valueset associated with the attribute definition in the project workspace. This action automatically updates all the classes and their subclasses. The product administrator selects a class that is associated with the updated attribute definition and sends the notification. The product-to-service mapping specialist queries the product class from SCE Studio, which updates the corresponding valueset metadata in the data dictionary.
You can use product classes in Siebel (or the equivalent ICC in Product Hub) to represent unique product specifications. Product specifications represent a type of product offering and can only be sold through a product offering. Product specifications represent the unique entities that must be fulfilled. Not all product classes are created for this purpose. For the subset of product classes created to represent product specifications, at design time you must map the product class name and the corresponding fulfillment pattern name in Oracle OSM in its Central Order Management role. Consequently, changes to these product classes affects the mapping for both design time and run time order management handling. This section describes an important aspect of this mapping effectivity: how the time of a new mapping or a change to an existing mapping takes effect in coordination across Order Capture (Siebel) and Central Order Management (Oracle OSM).
References to product classes in this section are limited to those used to represent product specifications. To distinguish these, it is recommended to use a naming convention, such as ending the name with the term ProdSpec. You can create and update product classes directly in Siebel or from a Product Master, such as Oracle Product Hub for Communications. In this section, whenever you see Siebel design time product class changes, it is also applicable to product master when one is used.
Specify the effectivity for the product class in Siebel when:
You create a new product class.
You update an existing product class.
You make an existing product class inactive.
Whenever these scenarios or any combination of these scenarios occur, you must query the product classes in the Design Studio, which is the design time tool for Oracle OSM from the Siebel application. After the product classes are successfully queried, product classes and the product specification are updated manually, and a following condition occurs:
The product class is mapped to a new product specification. The new product specification definition involves defining the fulfillment metadata.
The product class is mapped to an existing product specification.
The product class mapping is changed to a different product specification.
Product class effectivity must be the same as the product specification effectivity. You update product specification effectivity manually in the Design Studio after the product class is successfully queried and the product specification is mapped to it.
When the mapping between the product class and product specification is updated (when the effectivity of the product class and product specification changes), the cartridge version in SCE Studio must be updated and the cartridge must be redeployed to the environment.
For more information about updating the cartridge version and the various deployment options, see the Oracle Communications Order and Service Management Cartridge Guide for Oracle Application Integration Architecture.
Whenever the previously mentioned scenarios or their combination occur, you must create a new version of the cartridge and redeploy it. All orders the Oracle OSM system has submitted for processing uses the existing cartridge version. Any subsequent new orders (including revision orders, follow-on orders, and change orders) or existing orders that are not yet submitted for processing by the Oracle OSM system uses the new version of the deployed cartridge. You should group product class changes and set effectivity for a date-time that is suitable for deploying a new cartridge version, such as an off-peak hour.
You deploy a new version of the cartridge only if you introduced a new mapping or changed an existing mapping.
The support for effectivity on the product class and the effectivity on the product specification is manifested in Oracle OSM by the effectivity of deployment of the cartridge. Effectivity is defined and controlled by the deployment dates for the cartridge. To manage effectivity across the applications, you must consider the following issues:
The effective dates on the product class are the same as the deployment dates on the cartridge.
In this case, the Siebel product administrator and the product-to-service mapping specialist in SCE Studio must reach a consensus on the effectivity dates of the product class and the deployment dates of the cartridge, respectively.
The effective dates on the product class differ from the deployment dates on the cartridge.
In this case, the deployment dates on the cartridge control effectivity. You can handle effectivity as follows:
Create a new product class or update an existing product class. Import the product class and define the mappings to the product specification in the cartridge. Deploy it based on when the changes must be applied to the order lines in the Oracle OSM fulfillment system.
Create a new product class; the mappings to the product specification are not yet done in the cartridge. If the product class is subsequently updated, Siebel queries the updated version of the product class and defines the mappings in the cartridge before deploying it. In this case, multiple versions of the product class may be defined with different effective dates and queried before the mappings are defined and the cartridge is deployed. Again, the deployment is based on when the changes must be applied to the order lines in the Oracle OSM fulfillment system.
If you create a new product specification in the cartridge, you must configure the product specification before deploying the cartridge.
This integration flow uses the following interfaces:
Figure 6-4 illustrates the query product classes integration flow.
When this process initiates, the following events occur:
An SCE user (a product-to-service mapping specialist) triggers the Query Product Class and Attribute definitions integration flow using the SCE client, which provides the Class Code and the Oracle Fusion Middleware (FMW) URL. In the case of an update, SCE also provides the Class Codes for all of the subclasses.
The SCE invokes the QueryProdClassAndAttributesSCEReqCommsABCSImpl with the QueryClassificationListEBM, which contains the Product Class codes.
QueryProdClassAndAttributesSCEReqCommsABCSImpl passes through the QueryClassificationListEBM to the QueryClassificationListSiebelCommsProvABCSImpl.
QueryClassificationListSiebelCommsProvABCSImpl transforms the QueryClassificationListEBM into the Siebel Class Definition IO application business message (ABM), along with the Workspace Name from AIAConfigurationProperties.xml file and invokes the Siebel GetProductClass web service.
The Siebel GetProductClass web service returns the complete product class information and associated Attribute IDs for all input product Class Codes. The QueryClassificationListSiebelCommsProvABCSImpl transforms the Siebel GetProductClassResponseABM into the QueryClassificationListRespEBM.
The QueryClassificationListRespEBM goes all the way back to the QueryProdClassAndAttributesSCEReqCommsABCSImpl.
Next, the QueryProdClassAndAttributesSCEReqCommsABCSImpl picks up the Attribute IDs from the QueryClassificationListRespEBM and maps these IDs to the QuerySpecificationListEBM and QuerySpecificationValueSetListEBM.
One attribute may appear in multiple class definitions. While mapping Attribute IDs from the QueryClassificationListRespEBM to the QuerySpecificationListEBM and QuerySpecificationValueSetListEBM, you must take the union of these attribute definitions.
The QueryProdClassAndAttributesSCEReqCommsABCSImpl invokes the QuerySpecificationListSiebelCommsProvABCSImpl with the QuerySpecificationListEBM.
The QuerySpecificationListSiebelCommsProvABCSImpl transforms the QuerySpecificationListEBM into the Siebel Attribute definitions IO (ABM) along with the Workspace Name from the AIAConfigurationProperies.xml file and invokes the Siebel GetAttributeDefinition web service.
The GetAttributeDefinition service returns the complete attribute information for one or more attribute IDs. The QuerySpecificationListSiebelCommsProvABCSImpl transforms the response into the QuerySpecificationListRespEBM.
The QueryProdClassAndAttributesSCEReqCommsABCSImpl then invokes the QuerySpecificationValueSetListSiebelCommsProvABCSImpl with the QuerySpecificationValueSetListEBM. The QuerySpecificationValueSetListSiebelCommsProvABCSImpl transforms the QuerySpecificationValueSetListEBM into the Siebel Attribute definitions IO (ABM) along with the Workspace Name from the AIAConfigurationProperies.xml file and invokes the Siebel GetAttributeDefinition web service.
The GetAttributeDefinition service returns the complete attribute valueset information for one or more attribute IDs. The QuerySpecificationValueSetListSiebelCommsProvABCSImpl transforms the response into the QuerySpecificationValueSetListRespEBM.
The QuerySpecificationListRespEBM and QuerySpecificationValueSetListRespEBM go all the way back to the QueryProdClassAndAttributesSCEReqCommsABCSImpl. The QueryProdClassAndAttributesSCEReqCommsABCSImpl merges the QuerySpecificationListRespEBM, QuerySpecificationValueSetListRespEBM and the QueryClassificationListRespEBM and maps them to the QueryProdClassAndAttributesRespABM.
The QueryProdClassAndAttributesSCEReqCommsABCSImpl replies to SCE along with the QueryProdClassAndAttributesRespABM, which contains the class and attribute details for all the Class Codes provided by the product to the service mapping specialist.
The process integration for Product Lifecycle Management uses these Siebel CRM interfaces:
SWIAdminISSClassDefinitionIO: This web service is used to perform query operations on product class definitions.
SWIAdminISSAttributeDefnIO: This web service is used to perform query operations on product attribute definitions.
For more information, see the Siebel CRM Web Services Reference, "Siebel CRM Primary Web Services."
The integration uses these industry components:
The industry enterprise business object (EBO) and enterprise business message XML schema (EBM XSD) files are located here: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Industry/Communications/EBO/
The industry enterprise business service (EBS) WSDL files are located here: $AIA_HOME/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Industry/Communications/EBO/
For detailed documentation of individual EBOs and EBMs, click the AIA Reference Doc link on EBO and EBM detail pages in the Oracle Enterprise Repository (OER).
For more information about using the OER and configuring it to provide the AIA Reference Doc link, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Configuring and Using Oracle Enterprise Repository as the Oracle SOA Repository."
EBOs can be extended, for instance, to add new data elements. These extensions are protected and remain intact after a patch or an upgrade, so long as the extensibility guidelines are followed.
For more information, see Oracle Fusion Middleware Developer's Guide for Oracle Application Integration Architecture Foundation Pack, "Working with AIA Design Patterns," AIA Assets Extensibility Patterns, Extending Existing Schemas in AIA.
These services are delivered:
QueryProdClassAndAttributesSCEReqCommsABCSImpl with operation QueryProdClassAndAttributes
QueryClassificationListSiebelCommsProvABCSImpl with operation QueryProductClass
QuerySpecificationListSiebelCommsProvABCSImpl with operation QuerySpecificationList
QuerySpecificationValueSetListSiebelCommsProvABCSImpl with operation QuerySpecificationValueSetList
Some of these services have been enabled to use Session Pool Manager.
For more information about Session Pool Manager, see Oracle Application Integration Architecture Pre-Built Integrations 11.1: Utilities Guide, "Session Pool Manager."
The QueryProdClassAndAttributesSCEReqCommsABCSImpl is a synchronous BPEL process and is the SCE requestor ABC implementation and performs all of the Product Class related actions like Create Product Class, Update Product Class, Query Product Class, and so on. This service follows all of the standards of a requester ABCS. This service has one operation: QueryProdClassAndAttributes. This accepts a QueryClassificationListEBM as a request and returns QueryProdClassAndAttributesRespABM as a response.
This is the Siebel Classification List Provider ABC Implementation. This service follows all the standards of a Provider ABCS implementation. This service has one operation: QueryProductClass.
The QuerySpecificationListSiebelCommsProvABCSImpl is the Siebel attribute provider ABC implementation and performs all of the Specification List related actions like Query Specification List, Create Specification List, Update Specification List, and so on. This service follows all the standards of a provider ABCS implementation. This service has one operation: QuerySpecificationList.
The QuerySpecificationValueSetListSiebelCommsProvABCSImpl is the Siebel attribute value set provider ABC implementation and performs all of the SpecificationValueSet List related actions like Query SpecificationValueSet List, Create SpecificationValueSet List, Update SpecificationValueSet List, and so on. This service follows all the standards of a provider ABCS implementation. This service has one operation: QuerySpecificationValueSetList.