cancel
Showing results for 
Search instead for 
Did you mean: 

Variant configuration

former_member595688
Participant
0 Kudos

Hello all,

While selecting the Value (quantity) for e.g "3" for characteristic 'abc' the corresponding component '123' is not getting the quantity 3.

Syntax maintained to get the Component '123' is as below.

$root.abc specified    (Selection condition)

$self.bomqty =      $root.abc       (Action)

Can anyone help me out to resolve the issue.

Thanks in Advance

Regards,

Ali

Accepted Solutions (1)

Accepted Solutions (1)

Ritz
Active Contributor
0 Kudos

make usre you created referance charactertsic correctly , created dependecny to calculate value correctly and assigend it to correct BOM position.

Go through below link to know more on referance characterstic.

http://help.sap.com/saphelp_erp60_sp/helpdata/en/92/58c3a1417011d189ec0000e81ddfac/content.htm?frame...

THanks

Ritesh

former_member595688
Participant
0 Kudos

Hi Ritesh,

The reference characteristic bomqty is created properly which refers to table STPO, field MENGE.

The dependency is created with above syntax and is assigned to correct component '123'.

Regards,

Ali

Answers (2)

Answers (2)

former_member595688
Participant
0 Kudos

Hello all,

During debug we came to know that system is not updating the values in table IBSYMBOL because of which the corresponding component is not getting the values.

Can anyone let me know on what basis the Values get updated in table IBSYMBOL.

Regards,

Ali

Former Member
0 Kudos

Hello Ali,

First it seems you are using an obsolete dependency type. Actions should not be used anymore. Please use procedure instead.

Also please ensure that the procedure is created along the following lines

******

Master Data References in Bills of Material - Variant Configuration (LO-VC) - SAP Library

Procedure

  • Create a reference characteristic called QUANTITY with the following master data reference:

Table STPO field MENGE

  • Create a procedure with the following source code:

$SELF.QUANTITY = 3 if BACKPEDAL = 'Yes'

  • Allocate the procedure to BOM item 0030 (component BRAKE).

Result

When you configure the bike, if you set value ‘Yes’ for characteristic BACKPEDAL, the quantity for component BRAKE increases to 3.

******

Please ensure that the procedure is assigned to that item you want to change the qty for.

Regards

Amber

former_member214775
Contributor
0 Kudos

Hi Ali,

regarding this you can try to run transaction CUUPDMV to refresh the table.

Best regards

Tamas

former_member595688
Participant
0 Kudos

Hello Amber,

Many thanks for the quick reply.

The above syntax is helpful when we want the default quantity for particular characteristic.

but here the requirement is when value-qty 1 selected for char 'abc' system should  assign qty 1 for component '123' and when value- qty 2 is selected for char 'abc' system should assign qty 2 for component '123' and so on...


The reference char Bomqty is created which refers to table STPO, field MENGE with Numeric data type.


This reference char is working fine with other char, other BOM only when we use with char 'abc' with particular BOM it is not working.


Regards,

Ali 


Ritz
Active Contributor
0 Kudos

Ali k,

Whats the type of dependency you are using for assigning this quantity?

you should use procedure as mention by Amber too.

can you please share details of characterstic ABC?

Thanks

Ritesh

former_member595688
Participant
0 Kudos

Hello Tamas,

Run the transaction CUUPDMV but did not solve the issue.

Regards,

Ali

former_member595688
Participant
0 Kudos

Hi Ritesh,

We are using 'Action' for assigning the quantity. I have tried changing this to procedure but it's not working.

Syntax maintained to get the Component '123' is as below. and dependency is assigned to Component '123

$root.abc specified    (Selection condition)

$self.bomqty  =  $root.abc       (Action)

Details of char abc: Numeric format, Value assignment-Single value, Values tab-No values maintained.

Details of Ref char bomqty: Numeric format, Value assignment-Single value, Values tab-No values maintained, Add data tab: Table STPO, Field MENGE, Not ready for input checked, No Display checked.

Regards,

Ali

Ritz
Active Contributor
0 Kudos

Ali,

Instead of converting existing dependency into priocedure , create a new dependency type procedure with sysntex

$self.bomqty  =  $root.abc

and assign it to component and check , I hope it will work.

Give it a try and come back.

Thanks

Ritesh

former_member595688
Participant
0 Kudos

Hi Ritesh,

Tried, but did not work..

What I observed is when I lock the second dependency $self.bomqty  =  $root.abc system is picking the qty 1 for component 123 even when value selected is 3..

It clearly states that first dependency is working, but the second dependency is not working. I don't know why??

Regards

Ali

Ritz
Active Contributor
0 Kudos

Are you sure your referance characterstic is created correctly ?  please check otehr wise create a new characterstic QUAN1 refering to STPO & MENGE and use it in new procedure and check.

It may work , also try tgo remove tick for do not display, it will verify what value charactertsic is picking.

Thanks

Ritesh

former_member595688
Participant
0 Kudos

Hi Ritesh,

Tried creating new Ref Char as well as OD with procedure,but did not work...

Regards,

Ali

Former Member
0 Kudos

Hi Ali,

If it is with the characteristic abc, then please check the data type of this characteristic. In general it should be the exact same as the data type of the reference quantity. So for STPO-MENGE, data type for abc should be numeric with length 13.

Also check if the bom item has correct settings in the bom (CS02) ie if it is valid for sales application. Please test in CU50 if the item is being displayed when you click on master data.

If I understand it correctly , your scenario is you have component 123.Now you have selection condition and a procedure

$root.abc specified                  (Selection condition)

$self.bomqty = $root.abc        (procedure)

Now if you say e.g your header material is HEAD_MATERIAL with component_123.

Now please maintain it in the following way.

HEADER_MATERIAL                   (is assigned to class HEADER_CLASS)

            ---------> COMPONENT_123

Make sure characteristic abc is assigned to class HEADER_CLASS which is assigned to the header material i.e. HEAD_MATERIAL.

Characteristic bomqty does not need to be assigned if the component is not configurable..

Now ensure that selection condition and procedure both are assigned to component_123 in the bom (CS02). Selection condition should be assigned before the procedure.

If this is all set correctly you should have the quantity changed. Please let me know if it still does not help.

Regards

Amber

former_member595688
Participant
0 Kudos

Hello Amber,

Thanks for the reply!!

1. The data type of Char abc as well as Bomqty is Numeric format with length 13.

2. The BOM items 123, 234, 345 is marked as relevant to sales. Yes the items 123, 234, 345 are displayed when I check the Master data in CU50.


3 The BOM structure is as follows.

Header material  12345

Sub component    1234 (Itm cat L)

Components          123, 234, 345 (Item cat L)

- The header material 12345 and sub component 1234 is assigned to class S12345.

- The Char 'abc' is assigned to class  S12345

- The selection condition and procedure both are assigned to component_123 in the bom (CS02). Selection condition is assigned before the procedure.

$root.abc specified                  (Selection condition)

$self.bomqty = $root.abc        (procedure)

Regards,

Ali

Former Member
0 Kudos

Hi Ali,

The only thing that I can think of is that value is entered in the right level. You are using the same classs S12345 for the header and subcomponent

Header material  12345  -> Class  S12345      

Sub component    1234 (Itm cat L)  -> Class  S12345     

Components          123, 234, 345 (Item cat L)

Now the OD you are using are for level root which means it will check the value on the header level ie Header material  12345  -> Class  S12345. Can you please check if the characteristic abc has value on the root level.

You can check one more thing ..use subcomponent as CU50. Test the example with Sub component    1234 in CU50. Does that work ?

Thanks Amber

former_member595688
Participant
0 Kudos

Hello Amber,

The OD we are using are for level root only

$root.abc specified                  (Selection condition)

$self.bomqty = $root.abc        (procedure)

During the creation of sales order the values are selected for the char at header level only for Header material 12345 we can't select the values for Sub component 1234 .

I checked the sub component 1234 in CU50 the BOM is not exploding, but when I check for sub component 1234 in CU52 the BOM is exploding with '0' value for component 123.

Regards,

Ali

Former Member
0 Kudos

Hi Ali,

I am afraid I have no other reason , as if it has the right setting then it should work. Without looking at the system , I cant find out the reason. You can check the trace and see if the selection conditions and procedures are run successfully. May be that can give you any idea what is wrong

Regards

Amber

former_member595688
Participant
0 Kudos

Hello Amber,

During debug we found that the Char value is not getting stored in table IBSYMBOL which is causing the issue.

Could you please let me know how this Char values gets updated in table IBSYMBOL and in our case why it is not updating.

Regards,

Ali

Ritz
Active Contributor
0 Kudos

Ali,

For BOM explosion please check settings in cinfiguration profile which application you have maintain there , ( PP01 or SD01 etc) , also check tick for multilevel, and if your lower levels are also configurable maintain same settings for those levels too.

Also , specify selection condition to select components at lower level too.

check and reply.

Thanks

Ritesh

Former Member
0 Kudos

Hi Ali,

Values are stored in the end. I am not too sure how is this causing it ? or you referring to some internal table ?

Thanks

Amber

former_member595688
Participant
0 Kudos

Hello Experts,

Can anyone help me out here.

Thanks in Advance.

Regards,

Ali