- July 18, 2017 at 1:52 pm #21086saloni gupta #190
What are the parameters of a clone method in Salesforce?
What are the parameters of a clone method, sometimes we call clone method by one parameter , sometimes by two and more. how would we differentiate when to use one/two/three/four parameters?July 20, 2017 at 2:36 pm #21148Sudhir #588
I am not going to duplicate the explanation if it is already existing somewhere.
Bringing it at your click here: Clone Explained
Let me know if you wanted to know any specifics which are not explained in this blog post.January 25, 2018 at 2:42 pm #24488PRANAV #14
clone(opt_preserve_id, opt_IsDeepClone, opt_preserve_readonly_timestamps, opt_preserve_autonumber)
Determines whether the ID of the original object is preserved or cleared in the duplicate. If set to true, the ID is copied to the duplicate. The default is false, that is, the ID is cleared.
Determines whether the method creates a full copy of the sObject field, or just a reference:
If set to true, the method creates a full copy of the sObject. All fields on the sObject are duplicated in memory, including relationship fields. Consequently, if you make changes to a field on the cloned sObject, the original sObject is not affected.
If set to false, the method performs a shallow copy of the sObject fields. All copied relationship fields reference the original sObjects. Consequently, if you make changes to a relationship field on the cloned sObject, the corresponding field on the original sObject is also affected, and vice-versa. The default is false.
Determines whether the read-only timestamp fields are preserved or cleared in the duplicate. If set to true, the read-only fields CreatedById, CreatedDate, LastModifiedById, and LastModifiedDate are copied to the duplicate. The default is false, that is, the values are cleared.
Determines whether auto number fields of the original object are preserved or cleared in the duplicate. If set to true, auto number fields are copied to the cloned object. The default is false, that is, auto number fields are cleared.
Note: All the parameters are optional.
Phase__c phaseObj = [SELECT Name, Milestone__c FROM Phase__c LIMIT 1];
Phase__c phaseCopy = phaseObj.clone(false, false, false, false);
If you insert phaseCopy, it will be the exact copy of phaseObj.
Hope this helps you.
Please Register to reply to this topic. /