Monday, August 23, 2021

Configure To Order (Part 3)

Writing Rules:

There are different rules that you can write and use in configurator.

Navigation: Oracle Configurator Developer

select 'workbench' as shown below and click on Rules




click on create rules

There are different rules that you can write and use in configurator.



Select logic Rule and click continue.

In this example, we use rule as if any option is selected in desktop - Lenovo (left side of logic), then power cord and HDMI cable should be picked from accessories (Right side of logic) as shown below



Anytrue :     Any one from desktop - Lenovo is selected
AllTrue :       HDMI cable and Power cord (both) should be selected


The box circled in above picture are logical relationships.

Once the logic (left side and Right side selected), 

select the logical relationship. In above example lets use 'Implies'. This tells if 'Desktop - Lenovo' is selected, then HDMI cable and power cord should be picked.

Now, we have condition for left side, right side along with logical relationship. Next step is to convert this logical rule into statement rules. 

Click on 'convert to statement rules' to perform this action as highlighted in below snapshot.


below is the converted statement rule


click on 'Validate Rule text' to validate the rule as shown below


if rule is successful, then you see below message.


If there are errors, you can fix them and validate the text again.


***********************************************************************************
Brief snapshot on rules and logical relationships

Brief on Rules :

Rule Type

Description

Logic 

Defines a logical relationship between most types of Features, Options, and any type of BOM nodes.

Numeric 

Express constraints between Model objects in terms of numeric relationships.

Comparison

Performs a comparison between the values or Properties of two nodes, or a constant value.

Property-based Compatibility 

Specifies matches between the options of one or more Features or BOM Option Classes that have a common Property.

Explicit Compatibility 

Specifies matches between the options of one or more Features or BOM Option Classes in explicit tabular form.

Design Chart 

Specifies compatibility matches among the options of Features or BOM Option Classes in explicit tabular form.

Statement 

Allows more complex expressions and constraint definitions using the Constraint Definition Language (CDL).

Rule Sequences 

Specifies an ordered set of rules whose effectivity dates are set so that a rule in the sequence becomes effective at the same time its predecessor ceases to be effective.

Configurator Extensions

Use Java code that you write to perform functions that go beyond the functionality and rules that Oracle Configurator Developer provides.


Condition :

  • Select the AllTrue condition when defining a Logic Rule (or use the AllTrue function when defining a Statement Rule) if you want the relation to evaluate to true only when all terms are true. The relation is false if any term is false. This is a logical AND expression.

  • Select the AnyTrue condition when defining a Logic Rule (or use the AnyTrue function when defining a Statement Rule) if you want the relation to evaluate to true if any term is true. The relation is false only when all terms are false. This is a logical OR expression.

Implies

The effect of the Implies relation: If the end user selects Option A it becomes true and Option B is also selected. In other words, Option B’s logic state becomes true.

Logical Relationships

Excludes

The effect of the Excludes relation: If the end user selects Option A, it becomes true and Option B becomes false. In other words, Option B is excluded from the configuration.

Requires

If the end user selects an option on one side of the rule, the option on the other side of the rule is also selected. The same is true when the end user deselects an option. In other words, both options must be either included in the configuration, or excluded from the configuration.

Negates
The Negates relation is similar to the Requires relation, in that it also "pushes both ways." However, the Negates relation prevents an option from being selected when an option on the other side of the rule is selected. In other words, selecting one option prevents the other option from being included in the configuration.

Defaults
The effect of the Defaults relation: If the end user selects the Option A, it becomes true and Option B is also selected and becomes true.

***********************************************************************************

Next step is to create 'UI' (User Interface) for the model.

From configurator developer > workbench > click on User interface (as shown below)



click on 'create' to create user interface




give a name for UI (Desktop - Lenovo)


select the master template from the drop down list (Note : These are seeded templates. If you want to use your own template you can either customize it or can have completely custom UI as well).


Let me use "Single page layout' template and click on apply. 

Now we are good to test the model.

Thursday, August 19, 2021

Configure To Order ( Part 2)

 2. Creation of Model item

Let's use the seeded model item template to define the model item. In our case, lets define model item as 'Desktop - Lenovo'.


When we talk about creating a model item, pay attention to below attributes which are core for model item

Bills of Material Tab, BOM Item type = Model

Create configured item, BOM = This you can pick based on requirement and need. Here in this example I'm using value as 'based on Model'.



Order Management Tab,

Assemble to Order = Checked


Assign the item to 'M1' Organization



Creation of Option Class item

Let's use the seeded option class item template to define the option class item. In our case, lets define option class item ' Monitor'.


pay attention to below attributes

Bills of Material tab,

BOM Item Type = Option Class

Order Management tab, 

Assemble to Order = Checked


save the item and assign it to 'M1' organization.

Creation of Option Item

Option item can be Finished good / Sub Assembly / Purchased item. 

For now, I'm assuming Cabinet as finished good and all other options as purchased item.

Item = 24 inch IPS


apply 'Purchasing item' template.

save the item and perform organization assignment to assign item to 'M1' organization.

Create other options for option class desktop as needed for the structure (I'm skipping other screenshots to keep article compact.

let me create 'Cabinet' as it is structured as finished good.

Item = Cabinet

template = Finished good template



Create this item 'Cabinet' and assign it to 'M1' organization.


Note: Create other options  as needed for the structure (I'm skipping other screenshots to keep article compact. )

3. Creation of BOM - Model BOM and Option class BOM

Model BOM


Look at the below highlighted Order management Tab. 

Optional - Select this, if you want specific option class to be optional. 

                    Unchecking this flag tells that this option class is mandatory.

Mutually Exclusive - Select this if you want to pick only one option in this option class

Optional Unchecked and Mutually Exclusive Checked - shows that this option class is mandatory and user has to select only one option in this option class.


Option class BOM







Create Routing

Create Routing as required. In this example I'm using below routing.
Note: For detailed steps on how to create Routing, Refer Routing Creation Topic.




 4.    Creation of Common Bill

Next step is to create common bill for Model and option class. The common bill should be created in IVO (Item validation Organization). In many cases, IVO will be the master org, hence creating common bill in master org (V1).

Navigation : Bills of Material > Bills > Create Common Bills


once program completes successfully, you can see the bill for Model "Desktop - Lenovo" in V1 org as well.


5. Import Model into Oracle configurator

            Import of Model BOM structure including option class as well as options into oracle configurator (CZ schema) can be done by running below program

Responsibility : Configurator Developer
Program: Populate Configuration Models




Monitor the request for successful completion. If there are any warnings or program completes in Error, check your log file and resolve the issue.

Upon successful completion of populate configuration model program, you can see the model structure in Oracle configurator as below

Responsibility: Oracle configurator Developer 
( Note -  Oracle configurator Developer and Configurator Developer are two different Responsibilities.)

click on configurator Developer (it will open a new window in your browser)


In the configurator Developer screen, we can see our model 'Desktop-Lenovo' as below




Click on the Edit button and click on structure as highlighted


we see our model with its complete structure as per Model BOM 


continue.....














Monday, July 19, 2021

"Configure To Order", CTO, Configurator process flow


Configure To Order Process

(Part 1)

"Oracle Configurator" is usually launched from a host application, such as Oracle Order Management or iStore, and displays the selected configuration model to the end user. During an Oracle Configurator session, an end user makes selections and specifies requirements for the product or service being configured.  

 Overview of Configurator flow

The steps involved in the flow of an "Oracle Configurator" implementation are as follows.

1.       The steps involved in the flow of an Oracle Configurator implementation are as follows

2.       Define Model Inventory items, Option Classes, option items and Finished Goods Items

3.       Create ATO model using Oracle Bills of Material to represent the product model.

4.       Create Common Bill

5.       Import model Bill into Oracle Configurator module to create product structure in Configurator schema.

6.       Modify the model structure in Oracle Configurator Developer (If Required)

7.       Define Rules in OCD.

8.       Generate UI definition in OCD.

9.       Test model in OCD

10.   Publish Model from OCD

11.   Invoke Configurator from the Hosting Application (Order Management responsibility)


 Below is the pictorial representation of steps to be followed for creating a configurator model.






Model Structure:

Lets use simple example of building a desktop as the model.

Below is the Desktop model structure used for this demo.

Model

Desktop - Lenovo

Optional

Mutually Exclusive

Rule

Option Class

Monitor

No

Yes

 

Option

24 inch IPS

 

 

 

Option

22 Inch IPS

 

 

 

Option

18 inch Basic

 

 

 

Option Class

Processor

No

Yes

 

Option

I5 8th Gen

 

 

 

Option

I7 7Th gen

 

 

 

Option

I7 7th gen

 

 

 

Option Class

RAM Memory

No

Yes

 

Option

8GB

 

 

 

Option

12GB

 

 

 

Option Class

Hard Disk

No

No

 

Option

1 TB HDD

 

 

 

Option

256GB SSD

 

 

 

Option

512GB SSD

 

 

 

Option Class

Other Accessories

Yes

NO

When monitor is selected, HDMI cable, Power card and adaptor should be selected.

When 512 SSD is selected, keyboard is offered as free

Option

Web cam

 

 

 

Option

External Speakers

 

 

 

Option

Keyboard

 

 

 

Option

AMD Graphics card

 

 

 

Option

Cabinet

 

 

 When processor is selected, then cabinet should be selected by default

Option

Power Cord and adaptor

 

 

 





  Oracle Cloud Inventory Certification sample questions Sample cloud inventory certification questions 1.    Identify the correct movement r...