MoveData App Pre-1.167

If you are on a version of Fundraising & Donation Extensions prior to 1.81, this article assumes you have completed Upgrade Guide: Fundraising & Donation Extensions Pre-1.81. If you have not already performed this upgrade, please do so before returning to this page.

To support Ecommerce and Ticketing a number of upgrades have been made to MoveData. This has involved the centralisation of a number of fields from the Fundraising & Donation Extension into the core MoveData product.

  • We recommend backing up your data (Setup → Data Export) before performing this upgrade and reviewing in a sandbox before implementing in Production

  • If you need MoveData to perform this upgrade for you please create a ticket (we will require access to your Salesforce Org to perform this upgrade)

1. Upgrade the MoveData App

Expected Time: 5min

Upgrade the MoveData App by visiting https://api.movedata.io/installer/app and following the prompts.

2. Perform General Checks

Expected Time: 5min

MoveData will execute an automated upgrade using an Apex job called MoveDataBatchWorker. This will execute after MoveData is upgraded and will copy data from the deprecated fields into the new fields.

It is important to ensure this has executed successfully and you can confirm via the Salesforce Setup interface (Setup → Environments → Jobs → Apex Jobs).

Depending on the volume of data this job will run one or many times. You can consider it to have completed successfully when all jobs are marked as Completed and no MoveDataBatchWorker job has run for 5 mins. If you encounter an error other than Not allowed to install or modify metadata via Apex, please create a ticket and we will help work through your issue.

Encountered a Not allowed to install or modify metadata via Apex Error

If you encounter the above error, you need to run a specific command. To do this click the "Gear Icon" in the top-right of Salesforce, select "Developer Console" from the drop-down menu. Select "Debug" -> "Open Execute Anonymous Window" and run the following command:

new movedata.MoveDataInstallHandler().onInstall(null);

Technical Checks

If you are more technically minded and want to perform SOQL checks to ensure the data has transferred cleanly these can be found by expanding the below:

Optional: Technical Checks

Below is a suite of SOQL checks you can execute to ensure the data has transferred cleanly.

Note: Some queries require a visual review as SOQL does not support WHERE clauses comparing two fields (ie. md_npsp_pack__Protect_Name__c <> movedata__Protect_Name__c).

  • Account Keys

    • Query: SELECT Id, md_npsp_pack__Platform_Key__c, md_npsp_pack__Platform__c, md_npsp_pack__Account__c FROM md_npsp_pack__Account_Platform_Key__c

    • Expected Result: 0 Record(s)

  • Account

    • Query: SELECT Id, md_npsp_pack__Protect_Name__c, movedata__Protect_Name__c FROM Account

    • Visual Review to ensure Values are Similar

  • Campaign

    • Platform & Platform Keys

      • Query: SELECT Id FROM Campaign WHERE md_npsp_pack__Platform__c <> NULL OR md_npsp_pack__Platform_Key__c <> NULL

      • Expected Result: 0 Record(s)

    • Campaign Code

      • Query: SELECT Id FROM Campaign WHERE md_npsp_pack__Campaign_Code__c <> NULL

      • Expected Result: 0 Record(s)

    • Protect Name

      • Query: SELECT COUNT(Id) FROM Campaign WHERE (md_npsp_pack__Protect_Name__c = TRUE AND movedata__Protect_Name__c <> TRUE) OR (md_npsp_pack__Protect_Name__c = FALSE AND movedata__Protect_Name__c <> FALSE)

      • Expected Result: 0 Record(s)

    • Protect Campaign Parent

      • Query: SELECT COUNT(Id) FROM Campaign WHERE (md_npsp_pack__Protect_Campaign_Parent__c = TRUE AND movedata__Protect_Campaign_Parent__c <> TRUE) OR (md_npsp_pack__Protect_Campaign_Parent__c = FALSE AND movedata__Protect_Campaign_Parent__c <> FALSE)

      • Expected Result: 0 Record(s)

  • Opportunity

    • Platform Key

      • Query: SELECT Id FROM Opportunity WHERE md_npsp_pack__Platform_Key__c <> NULL

      • Expected Result: 0 Record(s)

3. Upgrade Extension: Fundraising & Donations

Expected Time: 5min

Upgrade the Fundraising & Donation Extensions by opening the MoveData App and navigating to Settings → Extensions → Extension: Fundraising & Donations and click "Update".

4. Update Field Sets and Page Layouts

MoveData uses Field Sets to perform evaluations when writing information into Salesforce. Additionally, there are certain fields which you may have enabled on your Page Layouts (like Protect Name on the Campaign) which perform certain functions. Salesforce does not allow automatic updates to Field Sets or Page Layouts so these need to be updated manually as part of the upgrade process. At a technical level, these fields have moved from Extension: Fundraising & Donations to the MoveData package so these can be shared across all extensions.

4a. Field Sets

Expected Time: 10min

Update Field Sets by navigating to Setup → Object Manager → Object (like Campaign) → Field Sets → Field Set (like [MoveData] Donation: Campaign Fieldset) → drag fields listed below into the Field Set → click Save.

ObjectField SetAdd Field

Account

[MoveData] Donation: Account Fieldset

Protect Name

Opportunity

[MoveData] Opportunity Fieldset

Platform Key

Campaign

[MoveData] Donation: Campaign Fieldset

Campaign Code, Platform, Platform Key, Protect Name, Protect Campaign Parent

4b. Page Layouts

Expected Time: 10min

This only impacts you if you use fields now marked [Deprecated] on your page layouts. If so, replace the field marked [Deprecated] with the updated equivalent.

ObjectOld FieldReplace With

Account

[Deprecated] Protect Name

Protect Name

Campaign

[Deprecated] Protect Name

Protect Name

Campaign

[Deprecated] Protect Campaign Parent

Protect Campaign Parent

Campaign

[Deprecated] Platform

Platform

5. Review Extension Flows

Expected Time: up to 1h - but unlikely you will need to undertake this step

Finally, if you have customised MoveData and your Extension Flows / Extension Field Sets reference the deprecated fields, these must be updated to the new equivalents. We do not suspect many organisations will need to undertake this exercise as it is unlikely that you will be referencing the migrated fields in your Extension Flows.

ObjectOld FieldNew Field

Account

[Deprecated] Protect Name

Protect Name

Campaign

[Deprecated] Protect Name

Protect Name

Campaign

[Deprecated] Protect Campaign Parent

Protect Campaign Parent

Campaign

[Deprecated] Platform

Platform

Campaign

[Deprecated] Platform Key

Platform Key

Campaign

[Deprecated] Campaign Code

Campaign Code

Opportunity

[Deprecated] Platform Key

Platform Key

Congratulations, MoveData is now compatible with Ecommerce and Ticketing Integrations

Last updated