cancel
Showing results for 
Search instead for 
Did you mean: 

Variant Configuration

former_member595688
Participant
0 Kudos

Hi VC experts,

User is facing problem while simulating the material 6000 (BOM multi level).

6000

3000

1000,2000

Syntax: $root.abc = '100' and $root.xyz = '200' (Selection condition)    which results in component 1000

              $root.abc = '300'                                     (selection condition)     which result in component   2000

He is selecting characteristic 'abc' with values 300, 100 and characteristic 'xyz' with value 200 this should result in component 1000, 2000.

but this results in only one component i,e.  2000.

Please advice me what went wrong.

Thanks in advance,

Ali

Accepted Solutions (1)

Accepted Solutions (1)

Ritz
Active Contributor
0 Kudos

Ali k,

Only 2000 is geting selected as the xharacterstic $root.abc  is having $root.abc = '100' & '300'.

and but as you have written syntex for 100 , it only need $root.abc = '100' and $root.xyz = '200' so a additional " 300" for characterstic abc is making it differ.

change it to $root.abc = '100' & '300'' and $root.xyz = '200', and it will work.

Thanks

Ritesh

former_member595688
Participant
0 Kudos

Hi Ritesh,

Thanks for your reply!! but I don't understand your analysis, could you please explain in detail.

Here I see there are 2 different selection condition with 2 different syntax resulting in 2 different components

$root.abc = '100' and $root.xyz = '200' (Selection condition 1 )    which results in component 1000.

$root.abc = '300'                                     (selection condition 2 )     which result in component   2000

selecting characteristic 'abc' with values 300, 100 and characteristic 'xyz' with value 200 this should result in component 1000, 2000.

=(change it to $root.abc = '100' & '300'' and $root.xyz = '200', and it will work)  I don't understand this.



Thanks in advance,

Ali.


Former Member
0 Kudos

Hi Ali,

Your selection condition logic is correct as is - i've just tested in my own system and it shouldn't matter that you're selecting multiple values for your characteristic.  As long as the one you need is selected, there should be no problem.

Perhaps your problem is occurring with the retrieval of characteristic XYZ.  Is characteristic XYZ actually located in configurable material 6000, or is it in 3000?

If it occurs in material 3000, you should say $parent.xyz = '200' instead of $root.xyz = '200'

Mike

Ritz
Active Contributor
0 Kudos

Ali.,

first check your multi-value characterstic is setup correctly , it should happened that while selecting 300 the 100 which was selected earlier is geting deleted.

I havent give it a try in system , but seems Michael Bordelon already did it so you existing syntex will work fine with this setup.

tyr out below sysntex as alternative

(($root.abc = '100') and ($root.xyz = '200))

Thanks

Ritesh

former_member595688
Participant
0 Kudos

Hi Michael,

Thanks for your analysis,

When I simulate only characteristic $root.abc = '100' and$ root.xyz = '200' results in component 1000.

and when I only simulate $root.abc = '300'  results in component 2000.

but ,when I simulate the combination $root.abc = '300

                                                                                          100

and                                                              $ root.xyz = '200

I am not getting both the components I am getting only one component 2000.

please advice

Regards,

Ali



kakshat
Advisor
Advisor
0 Kudos

Hi Ali,

Have you tried searching for a Note for this problem. This could be a bug related to multi-valued characteristics.

former_member595688
Participant
0 Kudos

Hi Ritesh,

Could you please confirm the exact syntax, is it double bracket

(($root.abc = '100') and ($root.xyz = '200))

                   or single bracket

($root.abc = '100') and ($root.xyz = '200)

and one more query how to change the syntax.

while trying to change syntax from T-code CS02 I am unable to change it.

error: editor in blocked mode.

Ritz
Active Contributor
0 Kudos

Hi Ali,

You can use CU02 to change it if its global dependency.

syntex is (($root.abc = '100') and ($root.xyz = '200)),

have you checked,

Your multilevel characterstic is setup correctly ?

before executing result in CU50 , can you see both the value in configuration screen?

you also can try trace function in CU50 to check how many dependecy is geting trigger and what exactly is happening.

Also check for SAP note of multilevel characterstic as suggested by Kumar Akshat.

Hope it will help you.

Thanks

Ritesh

former_member595688
Participant
0 Kudos

Hi Ritesh,

The actual syntax is

000010    $root.abc = '100' and $root.xyz = '200 or        both syntax result in component 1000

000020     $root.def = '400'

What changes need to be made to pick the component 1000 please suggest.

Regards,

Ali

former_member595688
Participant
0 Kudos

Hi Ritesh,

000010    (($root.abc = '100' and $root.xyz = '200) or      

000020     ($root.def = '400'))


Is this will work??

Please reply

Regards,

Ali

Answers (0)