I have a class where we define some behavior under an IsClone() condition. Specifically a few fields are nulled/blanked. I was asked to change it so that a specific field persists across clones (lets call it status), so I updated the code to be q.Status = q.SBQQ__Source__r.Status;
This didn't work, it continued to null the fields. However when I removed that line entirely it copied the field, which makes sense. However I'm wondering why exactly the specified source copying didn't do anything. If I defined it vs. letting the typical cloning process do it's thing, why wasn't the behavior the same?
For reference, the method in which we set up the cloned fields is called on a BeforeInsert trigger.