1

I am about to deploy my sandbox changes to production, and I am wondering: I have a couple of Apex Classes which has a few dependencies. These dependencies are a few newly created custom fields (in sandbox) to a couple of existing custom objects (created in production before creating the sandbox).

Now, if I create a new "Change Set" with these Apex classes as components, and also adding the field-dependencies. Will this affect the other fields in the already existing custom objects (in production, which after deploy should have the new fields)? Like, will the other fields be deleted, or overwritten in some kind?

I have read that if you change a custom object as a component in the changeset, you will have to add all the fields (even the excisting fields), otherwise they will be removed/blanked out. I'm not sure if I need to do this when uploading apex classes and the dependencies.

Any thoughts?

1

Change sets are almost never "destructive." For example, there's actually no way to delete a field or object with a Change Set. You only need to include the elements (e.g. fields) that you wish to create or update. The sole exception that I can think of off the top of my head with Change Sets being destructive are certain profile attributes, such as Login Hours and IP Ranges, being deleted if they're not included in the profile, but but these are rare exceptions to the rule.

2

Your changes will be fine, once the new fields do not have the same api name as an existing field, it should not interfere with other fields on the object. To be safe, you can always spin up another sandbox staging and test the changeset deploy there to confirm the effects of the deploy before deploying to production.

  • Good tip! Tested in another sandbox first, and it worked great – Marius W May 8 '18 at 8:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.