cancel
Showing results for 
Search instead for 
Did you mean: 

Variant Configuration $Root $Parent $Self

Mahendran8888
Contributor
0 Kudos

Hi

I can understand $ROOT is the highest-level configurable material in a configuration. $PARENT refers to the object immediately above $SELF in a multi-level configuration.In dependencies that are allocated to BOM items, $PARENT refers to the configurable material for which the BOM was created, whereas $SELF refers to the material of the BOM item.

SELF

   00010 - $self.computer = 'PC' if software = 'ABC' ,

PARENT

   00010 - $parent.computer = 'PC' if software = 'ABC' ,

ROOT

   00010 - $root.computer = 'PC' if software = 'ABC' ,

What will be the result of this program? or Could anyone please help me to understand SELF, PARENT and ROOT usage in obj dependancy? How these are three variables used in programming in VC. I searched enough i am unable to get clear picture on this three.

Accepted Solutions (1)

Accepted Solutions (1)

keyur_mistry1
Active Participant

MAHENDRAN PARAMASIVAN,


Okay first of all just give one view to the below given link.

Object Variables - Variant Configuration (LO-VC) - SAP Library

Now we will see here in my words with example.

Ex - Computer image

To manufacture the computer we need 3 componenet (CPU,Moniter,Mouse)

To manufacture the CPU 3 option - (XX, YY, ZZ)

To Manufacture the Moniter 2 option - (JJ, KK)

To Manufacture the Moniter 2 option - (AA, BB)

$self - to achive self level of result. At same material, from one material charcteristics to other material charcteristics or charcteristics value if want to achive.

No required explianation, hope you know very well.

$Parent - refers to the object immediately above $SELF in a multi-level configuration.

CPU material charcteristics value if we want to achieve base on the Computer material characteristics.

Suppose here Order qty is Cstics.

If Computer order qty is > 10 then CPU type will be "INTEL_80486"

Syntex:

$SELF.CT_CPU_TYP = "INTEL_80486" IF

$PARENT.CT_ODR_QTY >= 10.


$ROOT - is the highest-level configurable material in a configuration.

To achieve the self level of result base on the root level (Finish goods level) cstics configuration value.


The materil KK will have cstics value 'K' if Coputer type is "3D".


Syntex:

$SELF.CT_KKK = 'K' IF

$ROOT.CT_COM_TYPE = '3D'


means in $.Parent we are achieving the value of self level cstics base on parent material cstics value.

AND

in $.ROOT we are achieving the value of self level of cstics base on the highest level (Finish Goods level) of cstics.


Thanks,

Mahendran8888
Contributor
0 Kudos

Hi keyur,

     It is simplest example. I appreciate your response. How can i get some more examples to know about object dependancy program further. Last three years i am working in SAP VC. But i need more OD programs. Is it Possible to get from any web?

keyur_mistry1
Active Participant
0 Kudos

MAHENDRAN PARAMASIVAN,


Sorry I don't think so it is possible to get VC syntax as like ABAP program we can get.

This all about base on our Business requirement for product configuration.

According to me just start with the basic and small program only. you can easily design big syntax too, if business requirement is clear.


Just keep spending time here as well as LOVC reading. 

Answers (1)

Answers (1)

Mahendran8888
Contributor
0 Kudos

Keyur,

     Case: kmat A, B is Halb kmat of A and C is the Halb kmat B

     Ch Val of  A :   xx, yy, zz

     Ch Val of B :    mm, nn

     Ch Val of C :    pp,qq

Choosing XX should choose mm and pp

Chooisng others should choose nn and qq

How to write Dependancy for the same using $self,$parent and $root?

Ritz
Active Contributor
0 Kudos

Try dependency type procedure with below syntax.

$SELF.CHAR.B = 'MM' if $PARENT.CHAR.A = XX,

$SELF.CHAR.C=  'PP' If $ROOT.CHAR.A = XX.

As per my knowledge , $ROOT is absolute now , you can use $PARENT at any node regardless of hierarchy.

Check with above syntax once it work replace $ROOT with $PARENT , it will still work for you.

Check and reply , Also please open the thread if you still have doubts. Otherwise create a new thread.

Thanks

Ritesh

Mahendran8888
Contributor
0 Kudos

Hi Ritesh

     Please help created now.