CopyStorm/Restore 7.37.3

Release Date: 29-Jul-2016

This is minor feature and  bug fix release.

Add Support for Disabling/Enabling Workflows

This release adds support for disabling/enabling Workflows during a restore. Both classic and Process Builder based workflows are supported.

Recognize the “Set Audit Fields” Permission

When this new Salesforce permission is enabled for a user then CopyStorm/Restore will also restore the standard Salesforce audit fields (CreatedDate, CreatedById, LastModifiedDate, and LastModifiedById).

Recognize the “Update Owners with InActive Records” Permission

When this new Salesforce permission is enabled for a user CopyStorm/Restore will set the OwnerId of records to the owner in the CopyStorm backup even if the owner is currently inactive in Salesforce.

Supercharge the Selection for Triggers and Validation Rules for Enablement/Disablement

This version takes much less time to load lists of triggers and/or validation rules in the GUI. The speed improvement is from a refactor of code base CopyStorm/Restore uses for the Metadata API.

Change Default Reference Rules for CampaignMember

Because the ContactId and LeadId fields in CampaignMember are nullable previous CopyStorm/Restore version selected “Set to Null” as the default action for these reference fields. This was the wrong choice because CampaignMember requires that at least once of these fields to contain a value. This version of CopyStorm/Restore defaults both fields to the “Create Record” policy.

Exclude AccountPartner from the List of Restorable Tables

The AccountPartner table cannot be modified via the API because it is actually a view on the primitive Partner table. CopyStorm/Restore will restore to the Partner table but it was incorrectly listing the AccountPartner table too. The bug was a misspelling in a CopyStorm/Restore configuration file.

Add Explicit Control for Restoring Deleted Records

The “Restore All” and “Restore Random” record selectors now include explicit control over whether deleted records will be considered. In previous versions these record selectors always excluded deleted records. Note that restoration of deleted records has always been possible with other record selectors.

Fix a Logging Bug in the SQL Log

Many users will not know that CopyStorm/Restore will optionally log all SQL used to update Salesforce in a form that looks like ANSI SQL and can be replayed using Capstorm’s free SQL/Force Python module.  Previous CopyStorm/Restore version incorrectly include the “Id” field in the SET clause of UPDATE statements. The UPDATE statements could still be replayed but looked wrong.

Add Support for the New Extended EmailMessage Object

Summer’16 made EmailMessage applicable to objects other than Case. This update for CopyStorm/Restore supports restoring the updated EmailMessage object type.

Stop Recording a Skipped Reason for Converted Leads

Salesforce does not support inserting or updating converted leads . When the “Ignore Converted Leads” option is checked, CopyStorm/Restore no longer clogs up the “Skiipped Reasons” list with warnings about converted leads.

Fix Default Insert/Update Options when CopyStorm was Backed Up by a READONLY API User

Previous versions choose the default values for the Insert and Update boxes on the Restore Set Editor page based on the table permissions stored in CopyStorm’s local cache. This meant that these boxes would be unchecked by default if the API user that backed up Salesforce had read-only access to all tables. This version checks the Insert/Update permissions of the active Salesforce user.

Fix a Bug When Restoring Time Columns

Previous versions were adding a GMT offset to time values before a restore. Mosts sites have likely not encountered this issue since Salesforce has virtually no  tables that use the Time column type. The bug was discovered when trying to restore the BusinessHours table.

Fix a Bug When Restoring DateTime Columns on MySQL

Previous versions were adding a GMT offset to datetime values before a restore on MySQL ONLY. Other supported databases were restored the values correctly.

Dynamically Adjust #Threads When Record Locking Errors Occur

Sometimes when CopyStorm/Restore uses mutliple threads to write data Salesforce fails with record locking errors. Though CopyStorm/Restore automatically recovers from this class of error there is overhead involved when the error is encountered. In this release CopyStorm/Restore will automatically reduce the number of threads used for a table lif record locking errors occur — this will boost performance.