Wednesday, 30 October 2013

Configurator Overview

Configurator Overview
--Lokanadham

1. What is an Oracle Configurator?
2. Why Configuration?
3. Configurator server
4. Configurator in Betsy (Order Management)
5. Configurator Programs in Betsy and Bryan
6. Configurator in Bryan

1. What is an oracle configurator?

Oracle provides a number of applications, such as Order Management, iStore, Quoting, etc., to manage the ordering of items. Whether the item to be ordered is configured or non configured, these applications will still be used.

Oracle Configurator is a tool that augments each of these ordering applications at runtime (during the processing of an order) by taking a raw configurable item and helping the end user to configure it.

Oracle Configurator is merely an adjunct to Inventory and Bills Of Materials.

As with a non-configurable item, INV and BOM manage the parts and their structure with the only difference being the inclusion of Optional items in the BOM.

Once the setup of items is complete in INV and BOM, they can be used in Oracle Configurator Developer (“OCD”) and this is where the Configurator modeling would take place.

Therefore, the Oracle Configurator product is an adjunct product to Inventory and Bills Of Materials for model setup and to Order Management, iStore, Quoting, etc. for runtime.
Once the configurable BOM has been built, it can be “imported” into Configurator.

The importing process copies the information from the BOM
into Configurator so that the Configurator tools can work with the BOM data.

2. Why Configuration ?

• Different customers have different requirements from a common base.

• Configuration provides a flexibility to the supplier to meet the expectations of audience with different needs.

• Configuration gives a modulating capability to the same item to be able to designed and converted into a new different item, even with a slight change.

• Configuration exhibits a benefit of providing multiple items without the creation of new item from the base every time.

• Configuration adds value to business.

Example: iPhone 8 plus and iPhone X

Both these phones belongs to the same iPhone family but with different configurations.






3. Configurator Server

In our company we are using Apache server for the configurator.

  • Apache server comprises of four segments, AP1 AP2 AP3 and AP4.
  • AP3 and AP4 segments are dedicatedly assigned to configurator.
  • Models are assigned to a specific CZ pool at runtime.
  • CZ pool will be assigned to a single node present at any available server at the runtime.
  • JVM is the Java Virtual Machine which works on Apache server.
  • Oracle Configurator is extendable through the use of what is known as Configurator Extensions (CXs, formerly known as Functional Companions).
  • CXs are generally written in Java and are stored as java files in OCD.
  • Even a single model UI can comprise of multiple CXs

  • Apache server: This is a server used for all Java objects. Since, configurator page is a Java object which opens on server, it works on Apache server.

  • CZ : This is a configurator schema which comprises of all the Oracle Configurator related information.

  • CZ Pool: This acts as a container which works for pooling the multiple models into one container.

  • Nodes: Nodes acts as a pointer for a CZ pool which directs the model to the web page and is released from the model in milliseconds.

4. Configurator in Betsy (Order Management)


Enter the base model with mandatory line details and click on Configurator button.


User Item Type for any model item we use is ATO MODEL



Betsy is being connected to the Bryan instance which will launch the configurator UI for the end user to configure the raw model as per his/her need



  • User can select the desired options manually.
  • Options marked a yellow mark are the mandatory options.
  • Other than those are the optional choices given to the user.


The other way to configure the model is to enter the model string provided by the business in Model String field and click on Apply Selections button.


Once you click on Apply Selections, all the options which belongs to the model string will be selected automatically.

A model string might contain the optional choices as well.

Even on using the same model string for the same model, the star item generated will be of different name always. Though properties of all the star items generated from the same model and model string will be identical.


Click on Preview Configuration button available at the bottom and top of the configurator page.

Check for the message under Configuration Status should be “The configuration is complete/valid”.  Click on Finish button.

Once you click on Finish button, the apache server will be released form the model and configurator page will be closed automatically.

Model string will be populated automatically and the Cfg Status will change to Valid. Now you can check for other details and book the sales order. Once the workflow will progress, star item will be generated.    Star item is the actual item we use for any transactions.


*item (R-2120*26570976) Vs *item (R-2120*26546797)



INVENTORY attributes:

Order Management attributes


5. Configurator Programs in Betsy and Bryan:


In Betsy:

Pre-Explode Configurable Bills of Material:
Responsibility: EMR BOM XXX

This program is executed when there are any changes made in the existing model BOM or a new model is created. This program will cascade all the changes to Bryan instance.


2. EMR Configurator Model Pool Mapping Refresh :

Responsibility: EMR IT sysadmin

This program is executed when pool mapping is missing for the model.  The outcome of this program is that a pool will be assigned to the eligible models.

In Bryan:

EMR Populate Configuration Models:

This program is executed when we want to populate the newly created model. We run this program immediately after running pre explode program.

Responsibility:  EMR Configurator Administrator EPM

Under Submit Section you will find all the three programs which we will be discussing.
For now select the first program and click on Submit button.


Fill the highlighted parameters:

Organization Code: This is the organization provided by business in which business wants to populate the model. It might be MVO or not.
Model Inventory Item From/to: The name of the new created model.
Urgency code and Enable Notification:  can be kept default.


2. EMR Process a Single Publication

This program is executed when the model is republished. After creation of a republication ID, we run this program to republish the model.

Parameters:  (Publication: The Publication ID generated when the model is republished.)


3. EMR Refresh a Single Configuration Model

This program is executed when there is a change in the model structure in Betsy. This program is executed when there are changes made in a model which is already existing in Bryan.

This program is executed after running the pre explode program in Betsy.

Parameters: Folder: This is the location of the model in Bryan.

Search for a model’s exact location in Bryan:

Navigation ->


In Repository main click on Simple Search button:


Enter the model name in Item Name field and click on Go button.


Lock the model and click on Edit icon.


You will be directed to the Workbench page where you find the Model name and the path to the location where the model is saved in Bryan.


Move to Repository Main, click on Views button and follow the path:



This is the final folder where you will find the model.


You will find your model in the folder.
You may notice that the edit button is enabled because we have locked the model.


Once you click on Edit button, you will be directed to the workbench to play with model:


Coming back to the request parameter, click on the torch on Folder field:


In Search and Select: Folder page, select Search By as “Description” and enter the final folder name and click on Go button.


Select the Level folder in row number1.
Folder ID in this case signifies that it belongs to RMT business.


Click on search icon in Configuration Model ID field:


Keep Search By option as “Description”, put the model name with % and click on Go button.
Select the Model ID with description as your model name and click on select button.

Once the all the parameters are filled, click on Submit button.


6. Configurator in Bryan

  1. Locking and Unlocking:

  1. Locking: Locking is done when we are performing some actions on the model in Bryan. This will ensure that the model cannot be used by anyone while we are working on that particular model in Bryan.

  1. Unlocking: Once the changes has been made in the model, it is important to unlock the model so that it is available for public use.   

For all the functionalities we will be discussing in further slides, we will be using the highlighted responsibility and form.


Repository -> Main -> Click on Simple Search button.


In Repository Main form, enter the model name in Item Name field and click on Go button.
Model is not locked by anyone currently:


Model is locked by the highlighted user:


Once you lock the model, edit button will be enabled:  Remember to Unlock the model after use !


  1. Generate Logic:

There are three parts to Configurator modeling: Structure, Rules, and UI.The first two parts are combined to collectively build the Logic Net: the network of nodes in the structure and the rules that relate them.  Whenever a change is made to either the Structure or the Rules in Config Developer, the modeler must click the button to “Generate Logic” before testing.

This button is compiling the set of nodes and rules in the Logic Net and storing the result in the database.  When the model is run, the appropriate Logic Net is loaded into memory allowing the quick interaction for the end user


On Clicking the edit button, you will be directed to the Workbench.


Scrolling down you will find the Generate Logic section.

  1. Refresh UI:  

Once we generate the logic, it is important to refresh the User Interface of the model as the changes has been made in the model but the user interface is still having the old version of the model.


Once we click on Refresh UI button, the page will be reloaded and will look like below: Click on UI Refresh Status button


The message shows that the UI for this specific model is refreshed and is ready to be sued by the end user:


  1. Test Model:

Test model is done to ensure whether all new functionalities of the model are working fine or not. Generally, we test the model after refreshing the user interface for the model to make sure if the user interface is up to date. Test model can also be done as a standalone activity anytime when we encounter any issue with the model configuration.



Click on Finish button:


Enter the model string, Click on Apply Selections button , click on Preview Configuration button.

Verify for the Configuration Status to be Complete/Valid.

Click on Finish button.


A unique Configuration Header ID will be generated.
Click on Return to Configurator Developer button to return back.

You can also restore an existing configuration by selecting the below option:


A list of existing configurations will be displayed:

Select the configuration of your choice and click on Next button. Click on Finish.


Model string will already be present, Preview the configuration, click on Finish.


A new configuration ID will be generated which will represent the current configuration.
Click on Return To Configurator Developer button.

  1. Model Republish:

Whenever any issue is encountered in any working model. Or there are new changes made in an existing model, the model is republished. Model republication ensures that the model is available with the latest publication.

Responsibility: EMR Configurator Administrator MMI
Configurator Developer -> Publications -> Simple search -> Go



  • There should be only one publication which is not checked as Disabled.
  • Once you select the current enabled publication and click on republish button, a new publication ID will be generated.


Now copy the new publication ID and switch the responsibility to EMR Configurator Administrator EPM.


Submit Section -> Process a Single publication -> Submit.


  • Enter the Publication ID and click on Submit button.


  • Monitor the request submitted in Your Requestor’s name until the phase becomes Completed.

cid:image001.png@01D476AE.87B01D00