- Accueil
- / Publications
- / White Papers
- / Have You Captured Everything in Salesforce?
Have You Captured Everything in Salesforce?
-
10 février 2025
-
As a data science professional, clients often seek guidance on extracting responsive data from various systems for internal projects, investigations, or regulatory requests. Typically, this involves targeted extracts for specific queries and full backups or data dumps for broader requests. However, for systems like Salesforce, there are specific nuances to consider. It’s essential to ensure that you or your vendor/consultant fully understand these considerations before concluding that all necessary data has been retrieved.
Permissions
Salesforce and other Customer Relationship Management (“CRM”) software or databases often implement independent permissions at the object / table, field / column, or the record / row level. What does this mean? Understanding these nuances is critical when working on a project or investigation:
- Object / Table Level – The credentials in use may be restricted from accessing entire objects in the database. As a result, you may be unaware that the object exists and is available to other users with sufficient permissions. Any extract or data collection using these restricted credentials may not capture all the objects.
- Field / Column Level – The credentials in use may be restricted in editing or even viewing certain fields in an object. This means that you may think you are looking at all available information within an object, but additional fields may be available to other users with the appropriate permissions. Consequently, any data extract or collection using the restricted credentials would not capture all the available information, even if all the objects are visible.
- Record / Row Level – The credentials in use could also have restrictions on viewing specific records.
The key takeaway is that the provided credentials may be blind to certain objects, fields, or records whether they are being used via manual or systematic processes. Determining whether these restrictions exist and to what extent can take some time due to ownership and role hierarchy security settings.
Retention
Beyond the permission-based issues mentioned earlier, it’s important to consider information governance polices that may restrict access to certain data. For instance, you may find yourself pulling information from the active data sources without any permission restrictions, but run afoul of existing information governance polices or Salesforce archiving settings that restrict available information. For example, if the additional Field Audit Trail package is not purchased, then the history of tracked fields is only available for 18 months online through the user interface and accessible via automated processes. Automated processes, such as Application Programming Interfaces (“APIs”), can have access to this data for up to 24 months before it’s deleted.
In cases like these, you may be able to leverage available historical snapshots or inferred information, such as standard reports to partially address the lost information and missing data.
Deletion
Particularly when conducting an investigation, you may encounter situations where a user has intentionally or unintentionally deleted records. Salesforce is one of the applications where relationships are enforced, meaning that records relating to the deleted record will also be deleted so that orphaned records will not be maintained. For example, this means that a deletion of superseded account record prior to moving the related assets to the new record will cause those related asset records and potentially other related records like complaints or events to also be deleted.
Salesforce, like some other systems, retains data records for a limited time, depending on the circumstances related to the event. As with the retention issues mentioned earlier, you may be able to recover lost information by leveraging available historical snapshots or inferred information like standard reports to partially address the lost information.
Definitions: Data vs. Metadata
Salesforce has different definitions into what it considers data versus metadata. Compare the definitions between these two words for Oracle (which Salesforce used to run on)1, 2 and Salesforce:
Word | Definition | Oracle | Salesforce |
---|---|---|---|
Data | Factual information (such as measurements or statistics) used as a basis for reasoning, discussion, or calculation Information in digital form that can be transmitted or processed Information output by a sensing device or organ that includes both useful and irrelevant or redundant information and must be processed to be meaningful3 |
Information (in digital form)5 | “Data refers to all of your records, including Accounts, Contacts, Leads, Opportunities, Cases, Contracts, and other records. Data also includes your custom object records, files, content, and Chatter.”7 |
Metadata | Data that provides information about other data4 | "Data about data. Typically stored in database tables, and often associated with data warehousing, metadata describes the history, content, and function of database tables, columns, and joins in understandable business terms."6 | “Metadata refers to all of your configuration settings, such as custom fields, page layouts, Reports, Dashboards and custom code like Apex and Visualforce.”7 |
These definitions appear aligned, but Salesforce considers items like Reports, Dashboards, and custom fields as metadata whereas other applications (e.g., Windows OS, Apple OS, Microsoft SQL Server, Oracle, etc.) would consider those items as data elements.
Salesforce recently has made it clearer that two types of backups—data and metadata are required to fully save and / or export all elements from the Salesforce installation:2
The current version, as of Winter 2024, of Salesforce now offers the option to include formula fields, which is considered as metadata by Salesforce in data backups. However, these have to be enabled either globally or on an object level.3 If you are interfacing with older Salesforce backups, or if you are unsure whether the Salesforce administrator(s) enabled those settings, you should be aware that you may not have captured everything.
Conclusion
For Salesforce and other CRM systems, it can be challenging to confirm whether you have gotten everything you need. If you need assurance that you have captured the right data, our experts can assist to ensure a comprehensive extraction of all desired Salesforce objects and data.
Learn more about our Salesforce Extraction services here.
Footnotes:
1: TechCrunch Staff, “Why Oracle and Salesforce, Once Bitter Rivals, Are Now on Cloud Nine,” TechCrunch (June 29, 2013).
2: Paul Krill, “Oracle CEO Ellison Mocks Salesforce.com's Itty-Bitty Application,” InfoWorld (March 1, 2010), (viewed through Wayback Machine at https://web.archive.org/web/20100301180344/https://www.infoworld.com/d/applications/oracle-ceo-ellison-mocks-salesforcecoms-itty-bitty-application-169).
3: Merriam-Webster, “Data,” Merriam-Webster Dictionary.
4: Merriam-Webster, “Metadata,” Merriam-Webster Dictionary.
5: Oracle Documentation, “Data” is not defined but “Database” is defined as “Organized collection of data treated as a unit. The purpose of a database is to store and retrieve related information." Therefore, data would be defined as information (in digital form), Oracle Documentation (Date Unknown).
6: Oracle Documentation, “IR Metadata Properties,” Oracle Documentation (Date Unknown).
7: Salesforce Help Center, “Understanding the Salesforce Platform,” Salesforce Help Center (October 16, 2024).
8: Salesforce Help Center, “Backup and Restore with Share Formula,” Salesforce Help Center (December 11, 2024).
A lire aussi
Date
10 février 2025
Contacts
Senior Managing Director