Salesforce Changesets – Best Practices

Salesforce changesets are an excellent means of an organization sending an affiliated organization pertinent customizations related to its operations. A good example is an object created by a sandbox organization intended for the use of its production organization. Unlike what some ill-informed individuals often think, these customizations usually contain modification that have been made in the salesforce setup menu. Hence you can never utilize them to upload items such as contact records. In essence change sets happen to contain metadata as opposed to actual data as we know it. 

Salesforce Changesets – Best Practices

What are the requirements for change sets utilization?

Sending of these messages necessitates a deployment connection , which means that they can be sent only, like earlier mentioned, between ventures that are affiliated to each other. However, the mere act of sending these customizations does not always guarantee that their contents will be implemented. The target organization must deploy them, which put in a layman’s language means that they have accepted them. Additionally, inbound change sets can be deployed in their entirety and not on a component basis. 

The following are some critical best practices that organizations that use this invaluable functionality ought to implement to make the most of it.

Only send change sets that have all dependant components

When sending outbound change sets make it a point to ensure that all interdependent components are included and are not already existing in the organization of target. Attempting to refer a component to another that may not be in existence in the give change set as well as the target organization effectively guarantees that its eventual deployment will fail. 

How are custom objects migrated?

Nevertheless, this functionality offers a fine-tuned management over the components that are deployed. For instance, users have the ability to migrate custom objects and their custom fields individually. Deploying a customised object and its custom fields necessitates the addition of the object; as well as custom fields to the change set. However, just adding the custom object does not lead to a failed deployment. But it does lead to a custom item that is empty when the deployment takes place. Read more about creating custom objects in salesforce.

Validate the change sets before deployment

It is always highly recommended for an organization that receives an in-bound changeset to initiate validation tests for it. This facilitates for the effectual viewing of either the success or flop messages that it would offer in an actual deployment setting. Which can be especially invaluable for any organization that wishes to carry out deployment at a specific time (perhaps during low hours) and is keen to ascertain if the entire process can go ahead of schedule.

Nevertheless, it is not advisable to carry out these deployments for every change set an organization receives. This is largely because this process happens to be very lengthy as well as effectively locking out an organization while it is underway. To validate an in-bound change set, click on it and then click on validate on the message box that materializes.

Limit the contents of changesets to 5000 files (400MB)

All change sets have a limit to hold a maximum of 5,000 files or in other words not larger than 400MB. Which means that those larger than this only carry the first 5,000 files or 2,500 components and the rest are omitted. To walk around this technicality you can attempt to create various change sets, especially those such as email templates Salesforce, reports or even dashboards. These types of change sets can be numerous as they by in nature contain lesser dependencies.

Take into account delays when deploying change sets that contain custom field types alteration

By default change sets that have a lot of custom field type alterations are known to deploy very slowly. This is due to the undeniable fact that custom field changes include changes to a wide variety of records. To avoid this frustrating and sometimes even annoying occurrence, you can manually make changes to the custom types after successful deployment.

Clone changesets whenever you want to include omitted dependency components

You may for one reason or the other have mistakenly omitted a dependency component to a changeset that you may have already uploaded. As most seasoned users would readily know uploading a change set effectually bars you from making any alterations to its contents. However, there is still an excellent way of going around technicality. When you wish to add an omitted dependency, just clone the entire change set and then proceed to add the elements you want before uploading it again.

Carry out change set deployment during your organization’s maintenance runs

It is highly recommended to deploy change sets during the time your firm carries out its maintenance schedules. This applies for both a sandbox as well as production organization. As most well informed individuals would readily appreciate there happen to some information related to these customization that can only be obtained from the sandbox. Not to mention that the validation process for outbound change sets locks up the organization. While a target organization’s, like earlier stated, is also locked up in process of deploying an in-bound change set. Both organization will still be in a position to read and write data during these processes , however they cannot make any setup changes that geared to modify metadata. 

Rename or delete by using the web interface

You cannot utilize change sets by themselves to either rename or delete any given component. The right way to go about conducting these executions is by using the salesforce web interface of the target organization. Should you wish to change the name of any component, first delete it on the organization of target web interface and then go ahead to upload the renamed item to the set.

Plan test to run on target organization system

By default when change sets that are in-bound deployed in a production company, each apex test in that business establishment is automatically conducted. It is consequently wise to prepare for these tests prior to the actual deployment.

Conclusion

There are many benefits of using this functionality, which include convenient tracking of all deployments, and the fact that they can be cloned is an added advantage. Further Salesforce changesets facilitate for effortless migration of data between affiliated organizations.


Amanda McDonnald
Amanda is the Lead Author & Editor of Rainforce Blog. Amanda established the Rainforce blog to create a source for news and discussion about some of the issues, challenges, news, and ideas relating to Salesforce usage.
Amanda McDonnald on sabtwitterAmanda McDonnald on sabgoogle