The Mutually Exclusive attribute is only applicable to the option class parent item. As an example
- - PTO_OPTION_CLASS -- (Mutually Exclusive = checked/unchecked)
- - - - OPT1 -- (Optional = checked)
- - - - OPT2 -- (Optional = checked)
In the above, in the PTO_MODEL bill of material, I have a component - PTO_OPTION_CLASS. I can make this option class mutually exclusive by selecting the attribute. Selecting the attribute for the OC will apply the the optional components within that Option Class bill of material.
Thanks Jason for helping out. I did the setting at PTO option class level and was able to configure.
However when i configure and then try to book the order then it gives me the following error:
"configuration validation resulted in error(s)"
From Order Management, are you invoking the Java Applet configurator? Or did you import the BOM into Configurator Developer, generate a UI and publish the model?
When you configure the order line, did you leave any required option classes/selections unsatisfied?
When I have seen this happen in the past, it has to do with server configurations/firewalls. When you book the order, you are invoking configurator Batch Validation (BV). For BV to work, the DB makes a call to the configurator servlet. For it to be successful, the DB must be allowed to communicate with the middle tier server. In many cases, when customers start initially using configurator - they may find that network settings/firewall settings do no allow the DB to connect to the middle tier.
One way to confirm your DB can connect to the Middle Tier is to use this script.
1. Get the value of the following profile setting - "BOM:Configurator URL of UI Manager". Confirm the value at Site Level vs User level. Usually you would not need a user level value.
2. Use the script below - running in SQL Developer/Toad/SQL Plus for the Apps User:
utl_http.set_detailed_excp_support (ENABLE => TRUE);
l_url := l_url || '?test=version';
pieces := utl_http.request_pieces(l_url);
for i in 1 .. pieces.count loop
WHEN OTHERS THEN
l_sql_code := utl_http.get_detailed_sqlcode;
l_sql_errm := utl_http.get_detailed_sqlerrm;
dbms_output.put_line('detail err code: '|| l_sql_code);
dbms_output.put_line('detail err message: '|| l_sql_errm);
3. In the above Script, change the value of "l_url" to the value of the profile from "BOM:Configurator URL of UI Manager" in #1.
4. When you run the script, make sure you have DBMS Output enabled. You should see a result like below - the HTML returned from the servlet will be displayed in the output
PL/SQL procedure successfully completed.
<title>UI Server Version</title>
<p>Using configuration software build: 126.96.36.199.11</p>Expecting schema: 31b
If you do not get the results above - or the response times out. Then your problem lies with the setup of the communication between the DB and Middle Tier. Let us know the results of the above.