πŸ“ˆ

Data Analytics: Reports, Dashboards, and Analytics Security

Report formats, formulas, charts, and visibility of analytical folders.

⏱️ Estimated reading time: 60 minutes

Report Formats: Tabular, Summary, Matrix, and Joined

Choosing the right format is the foundation of analysis.

1. Tabular: A simple list (like Excel). Does not allow Charts unless row limited. Ideal for mailing lists.
2. Summary: Grouped by rows (e.g., Opportunities by Rep). Allows charts and summary formulas. Most common.
3. Matrix: Grouped by rows AND columns (e.g., Sales by Month vs Product). Necessary for cross-data comparison.
4. Joined: Shows two different reports side-by-side (blocks) sharing a common field (e.g., Accounts with open Cases AND closed Opportunities).

🎯 Key Points

  • βœ“ To create a chart, the report MUST have at least one grouping (Summary or Matrix)
  • βœ“ Joined reports cannot be exported to formatted Excel (only flat CSV) and cannot be subscribed to
  • βœ“ Bucket Columns: Allow grouping values without creating formulas (e.g., Country -> Region: Spain/France = Europe)

Advanced Filtering and Cross Filters

Beyond standard filters (Date, Owner), there are powerful tools:

Cross Filters: Allow filtering a parent object based on its children.
- WITH: "Show Accounts WITH Won Opportunities."
- WITHOUT: "Show Accounts WITHOUT Cases in the last year" (Vital for reactivation campaigns).

Filter Logic: Allows using parentheses and boolean operators: (1 AND 2) OR 3. Ideal for complex scenarios.

🎯 Key Points

  • βœ“ Cross Filters allow filtering a parent object based on its children
  • βœ“ Locked Filters: In Lightning, you can lock a filter so the viewing user cannot change it
  • βœ“ Row-Level Formula: Allows calculating a value row-by-row (e.g., `CloseDate - CreatedDate` = Days to close). Limit: 1 per report

Custom Report Types

If a user tells you: *"I can't find field X in the report"*, the solution is usually here.

Standard Report Types: (e.g., Accounts with Contacts) only show records that have a relationship (Inner Join) and standard fields.
Custom Report Types: Allow you to:
1. Define if children are mandatory (With) or optional (With or Without).
2. Add Fields via Lookup: Bring in fields from related objects not directly connected.
3. Change field labels and default order.

🎯 Key Points

  • βœ“ If you create a new field on an object, you must manually add it to the Custom Report Type Layout to make it visible
  • βœ“ Allow relationships of up to 4 objects (A -> B -> C -> D)
  • βœ“ Inner Join: 'Accounts with Opportunities' (Only shows accounts that bought)
  • βœ“ Outer Join: 'Accounts with or without Opportunities' (Shows all)

Dashboards and the Running User

A Dashboard visualizes data from multiple reports. The most important security concept is the Running User.

1. Run as Me (Static): Everyone sees the data the dashboard creator SEES. Ideal for sharing global metrics with low-level users.
2. Run as Logged-In User (Dynamic): Each user sees ONLY their own data. Ideal for "My Performance". (Limit: 5 dynamic dashboards in Enterprise Edition).

Components: Chart, Gauge (speedometer for goals), Metric (single number), Table.

🎯 Key Points

  • βœ“ If the Running User is 'Admin' and you share the dashboard with a basic user, the basic user will see ALL the Admin's data (security warning)
  • βœ“ Dashboard Filters: Allow the user to filter all charts at once (e.g., by Region)
  • βœ“ The Source Report must be Summary or Matrix to be used in most components

Security: Sharing Folders

Golden Rule: You don't share reports, you share FOLDERS.

If a user has a link to a report but lacks access to the folder it's saved in, they will see an 'Insufficient Privileges' error.

Folder Access Levels:
- Viewer: View and run only.
- Editor: View, edit, save (in the same folder), and move.
- Manager: All the above + manage who has access to the folder.

🎯 Key Points

  • βœ“ Private Reports (My Personal Custom Reports): Only the user can see them. Cannot be shared.
  • βœ“ Public Reports (Unfiled Public Reports): Accessible by all users with report permissions.
  • βœ“ Enhanced Folder Sharing must be enabled (default in new orgs)

Reporting Snapshots and Subscriptions

Reporting Snapshots: Salesforce doesn't save standard report history. If you want to know "How many open opportunities were there on the 1st of each month?", you need a Snapshot.
- How it works: Runs a report periodically and saves the results into a Custom Object for historical analysis.

Subscriptions:
- Allows receiving reports or dashboards via email at a specific date/time.
- Can be configured to send only if a condition is met (e.g., "Send me the report only if there are > 5 critical cases").

🎯 Key Points

  • βœ“ For a Snapshot, you need: 1 Source Report + 1 Target Object + Field Mapping
  • βœ“ A user can subscribe themselves and others (requires 'Subscribe to Reports' permission)
  • βœ“ Subscription limit: Usually 5 or 7 per user (depends on edition)