Moving Event Forms from One Campaign to Another

While Events doesn't directly support moving a form from one campaign to another, it can be done, but requires using the Developer Console Execute Anonymous window; these steps should only be performed by an experienced System Administrator.

Download the existing form

Download the existing form

Navigate to the Campaign that has the form you want to move. In the Attachments related list, right-click "View" next to the name of the form you want to move, and select "Save Link As..." from your browser's context menu.

Save the file to your computer - the file name will be registration-form.json.

Upload to the destination campaign

Navigate to the Event Campaign where you want to add the form. Click the Attach File button.

Upload the file you downloaded from the other Campaign. Click the Choose File Button; select the file you downloaded previously. Click "Open" (or other similar button depending on your operating system). Click Attach File. Click Done once the upload is complete.

Confirm that the file appears on the Attachments related list of the new Campaign. Click the File Name to go to its detail page.

Get the Attachment's record ID

Get the Attachment's record ID

Copy the Attachment's Salesforce Record ID from the URL. It will be 15 characters and start with 00P. Paste into a text document for the next step.

Open the Developer Console

Open the Developer Console

Click your name, and then Developer Console. The Developer Console will open in a new window. Read and/or dismiss any informational pop-ups that appear.

Run Anonymous Apex Script

From the Debug menu, select Open Execute Anonymous Window.

Copy and paste the following script into the window. Replace the [attachment id here] with the Attachment Record ID you copied previously. Make sure to leave the single quotes in place.

Attachment a = [SELECT Id, ContentType 
                FROM Attachment 
                WHERE Id = '[attachment id here]' LIMIT 1];
a.ContentType = 'application/x-roundcause-form';
update a;

Uncheck the "Open Log" box and click Execute. The Execute Anonymous window will disappear and you'll briefly see a "Submitting Request" box. If no errors appear, close the Developer Console.

Additional Notes

This is not an officially supported solution! We have tested it, and it should work in most environments. Some things to be especially careful of:

  • If you are moving from one instance to another (eg, Sandbox to Production), ensure that the Events installation steps have been followed in the destination instance.
  • Ensure that relevant configurations match between the two instances.
  • Even within the same instance, if you move a form from one campaign to another, and the Events have very different configurations, the results are unpredictable.
  • Moving multi-page forms is not supported.