SnapShot! for Dynamics CRM

If you are looking to simply document your Dynamics CRM metadata, I would recommend this excellent set of utilities: http://xrmtoolbox.codeplex.com

It is free (donations are accepted) and is part of an excellent toolbox for both the Dynamics CRM developer or administrator.

But, if you need more than just metadata, then SnapShot! is the tool for you. In fact, the only way to extract most of the data in these reports is to write a custom application to do so. Let us save you the time and trouble by doing it for you.

Finally, the documentation tool that gives you a complete SnapShot!
of your Dynamics CRM Organization configuration
in only minutes.

all-per-page

Metadata

What would be a collection of documentation for a Dynamics CRM organization without metadata.  We have that and more:

Entities

All of the settings found on Entity definition page, including the Areas where the entity is displayed settings, are documented.

Fields

All of the settings found on the Field definition page are documented, along with some extra information:

  • Forms where this field is present
  • Minimum and maximum values (for numbers)
  • Minimum and maximum lengths (for strings)
  • Associated entity (for lookups)

Relationships

All of the settings on the Relationships definition page are document including:

  • Relationship type
  • Field and Entity associated names.
  • Cascading relationship settings

Views

Views actually have two reports:

  • An overall summary which shows you the basic information regarding the view, the parent entity, and the columns being return
  • A detailed report lists all of the components that make up the query: Columns, Filter Criteria, FetchXml statement, and the Sorting definitions

Forms

Basic information regarding the forms, their parent Entity, and the security roles that may use the form are documented.

OptionSets

Both global and entity-specific OptionSets are documented.

Security

Is broken down into several reports:

  • Field Security Profiles
  • Field Permissions
  • Security Roles
  • User Permissions

The  Security Roles and User Permissions reports consist of two sets of files.

  1. Detailed information showing the security configuration as you would see it within Dynamics CRM (with the circles).
  2. Raw data – which is the data directly as it comes out of the database. This is useful when performing comparisons.

The User Permissions report is the final permissions that have been applied to a user after their: Licensing, personal Security Roles, and team Security Roles have been assigned.

 

siport
workflow-green

Automation

By automation we mean anything that has been added to the system to add additional business logic functionality or which will automate any existing business processes. These reports include:

  • Plugin assemblies
  • Plugin steps
  • Custom workflow activities
  • Processes

In addition the Automation Testing Matrix report shows all of the plugins and workflows that are executed in the system. This list is grouped by Entity and function so you can verify your testing processes cover each of the possible data paths.

JavaScript and Web Resources

There are a number of JavaScript-related reports, including:

Web Resources summary

This report contains a dump of all web resources, their type and the solution that are contained within.

JScript Library usage

This report contains a list of JScript web resources and on what entity and form they are referenced.

JScript Function reference

This report is taken from the form event configuration dialogs and contains the following information:

  • Entity Name
  • Form Name
  • Field Name
  • Event Name
  • Enabled
  • Library Name
  • Function Name
  • Pass Execution Context
  • Parameters

 

organizational-unit
mailbox

Email Settings

This report gives you a list of all of the email settings related to your users so you can see both system-level and personal email settings.

This report was created as a result of having to debug some very strange email-related issues.  Since many of the personal settings related to email have a major affect on how email is processed, it is valuable to have all email settings in a single report.

Business Administration

We completely document the following:

  • Business units
  • Users
  • Teams
  • Queues
  • Team membership
active-directory
waffle-ice-cream

Miscellaneous

Now that most of the major categories have been reported, we still have a few reports remaining:

  • System settings
  • User settings
  • Solutions
  • Templates
  • Connection roles

There is even an extra Auditing report that consolidates all of the auditing information for both Entities and Attributes.

For Developers

There are a handful or reports that were created specifically for the developers in your organization.

JavaScript Function Reference

Lists all of the JavaScript functions found in your JScript web resources.

JavaScript Event List

Dynamics CRM 2011 and 2013 allows you to define OnSave and OnChange events using either configuration or code. Normally, most developers use the configuration to attach events, but occasionally, it is more efficient to  define your events in code.

This  report actually extracts the events from the configuration and creates the equivalent in code.

research

Licensing and Pricing

SnapShot! has a variety of licensing options including single-organization, site, and partner licenses.

Single Organization License

$249

per CRM organization

  • Covers all developers within a single firm
  • One CRM Organization
  • Annual maintenance: $90, 1st year included

Site License

$745

per development site

  • Covers all developers within a single firm
  • Unlimited CRM Organizations
  • Annual maintenance $270, 1st year included

Partner License

$4,995

per legal entity

  • Covers multiple-office partner firms, all of their developers
  • Unlimited CRM Organizations
  • Annual maintenance: $1,450, 1st year included
314

report-run

Need More Detail?

More detailed information may be found on the Details page.

Sample Report

You may download a sample report from one of my developer organizations here.

The report was generated from the Contoso demo organization but has had additional commercial and custom solutions added to it, as many typical Dynamics CRM organizations have. This should give you a good feel for the data being extracted.

report
not-specified

Frequently Asked Questions:

Here are a few ways SnapShot! can help:

Even though I have assigned the proper security roles to a user, they are still receiving security errors.
SnapShot! uses the Dynamics CRM SDK to extract all information from the system. When working with security roles, an SDK method is used that reports the security applied to a user, after all of their security has been applied. If you look at the User Privileges report for that user, you will see that they only have read-access to most fields. In all likelihood, this is caused by the License Type for the user being set to Read Only or Administrative.
I need to review all of the System Settings to ensure that the previous administrator has everything set correctly.
The System Settings report will show all settings within the system – both those on the System Settings page as well as the internal settings that are not displayed within the Dynamics CRM user interface.
I am new to the company, customer, or project and I need to know everything I can about the Dynamics CRM configuration.
No problem. Do these steps:
  1. Run SnapShot!
  2. Select all options.
  3. Check the Pack and Go checkbox on the ribbon.
  4. Click the Create button.
  5. Go get yourself a cup of coffee.
  6. When you get back, plus or minus a few minutes, your Dynamics CRM system will be fully documented and all of the files zipped for easy transport via email or thumb-drive.
I need a compete export of all Entity and Field schema information.
There are several reports that will help in this case: Entities, Fields, and Relationships.
I need to a complete list of supporting data: Business Units, Users, Teams, and Queues.
There are reports for each that contain the most relevant information about each entity type.
We have a huge JavaScript code-base and I need to get a handle on what is being used and where.
We have three reports for web resources:
  • The Web Resources report lists all web resources within the organization.
  • The JScript Library report lists the Entities and Forms where each JScript Library is used.
  • The JScript Function Reference report documents each Form Event within the organization and what function is being called for that event.
I need a complete list of all custom security roles.
Custom security roles and their privileges are documented and look exactly like the forms with Dynamics CRM – right down to the colored circles.
I have a problem with one user’s security and I don’t know what security she should actually have.
The User Privilege report shows the exact security the user has after all user and team security roles have been applied. Many people overlook the team security roles so sometimes unexpected privileges get applied. This report looks just like the Security Role report (colored circles) and shows the end result of all merged security roles. This is very useful for tracking down privilege issues.
I need a complete list of all of my System Views.
The Views report lists a summary of all views. In addition, should you wish, you can create additional documents that list the detail of each view which includes the display columns, filter criteria, and FetchXML statement used to perform the search.
I have a problem with option set values not showing the same values when a Lead is converted into a Contact.
The Option Set report shows all option sets, Entity-based and global, in a single list. This allows you to compare the numerical value with the display label to make sure values match across Entities.

Did We Miss Anything?

Do you have a documentation problem not address by SnapShot! If so, please let us know.

question