Often we have requirement where we would like more than one child to be copied when the parent record is copied and similarly when we delete the parent records its child records are also deleted. There are couple of user properties that have been provided to us which can help us to accomplish that without using scripting.
- Deep Copy n
- Deep Delete n
Deep Copy n:
Syntax:
Name : Deep Copy n
Value : Child Business Component Name
I will try to explain this with example.
Normally when you click copy button of Quote only Quote is copied. None of its child records are copied.Our requirement is to copy Quote item, quote attachment and Order (Child BC of Quote) when we copy Quote record then we can make use Deep Copy user property. Now to implement our requirement we will have to follow the steps given below:
1. On Quote BC create 3 Deep Copy user properties
Deep Copy 1 Quote Item
Deep Copy 2 Quote Item Attachment
Deep Copy 3 Order
*Value of Deep Copy user property is the name of the Child business component that you want to copy.
2. Add a multivalue link in the parent business component for each child business component.
3. Create a multivalue field in the parent business component from each child business component specifying the multivalue link to use.
4. Set the No Copy property of that multivalue link to TRUE
Deep Delete n
Syntax:
Name: Deep Delete n
Value: Child Business Component Name
If we continue with the above example then we would want to delete these children also when we delete the quote record.
To accomplish that we would follow the following steps
1. Create 3 Deep Delete user properties on Quote BC
Deep Delete 1 Quote Item
Deep Delete 2 Quote Item Attachment
Deep Delete 3 Order
2. Set the No Delete Property for the Multivalue links to TRUE
Yes, I know it is a bit confusing
. I will repeat once again
Setting No Copy to TRUE will allow you copy child BC with Deep Copy user property and setting No Delete to TRUE will allow to delete child BC with the help of Deep delete User Property.

5 Comments at "Siebel Deep Copy-Deep Delete explored."
“No Copy” True means it cann’t be copied right..how come we are able to delete
can you please explain me what happens actually when we do this by taking a record for example…
Hi,
I have small doubt in above example.
Why we need to add MVF from each one of childBcs through MVL.If possible could you please explain me the logic of adding MVF for deep copy user property
Hi Neel,
I think we can copy the child record values (Quote Item) when we copy Quote by making No Copy = False in Quote Item MVL itself. There’s no need of Deep Copy user property.
Deep Copy user property is used for some other purpose. Please check my next post for details.
Thanks,
Vijaya
Hi Neel,
Deep Copy is used to copy child records over multiple levels, whereas making MVL No Copy = False copies child records for only one level. I think this is what you also meant but was not very clear with Quote, Quote Item, Quote Attachment and Order example.
Thanks,
Vijaya
Comment Now!