It looks like the replication to the other Amazon markets is complete.
I am sure there are other Amazon.com markets that I missed, but if you just search for the book title, you should find it.
After multiple revisions and proofs, my Dynamics CRM Deep Dive: Administration book is now available for purchase at Amazon.com
I am finishing up the final details for my new book, Dynamics CRM Deep Dive: Administration.
It is currently in pre-release at Amazon.com and I hope to have the process complete around the first week of September.
Here is the table of contents:
Chapter 1. Create Your Administrative Toolbox
Chapter 2. Let’s Do a Little Housekeeping
Chapter 3. Error, Warning, and Notification Messages
Chapter 4. Managing System Jobs
Chapter 5. System Job Management: Registry and Database Settings
Chapter 6. Creating System Management Views
Chapter 7. Automating System Job Cleanup
Chapter 8. User Management Tips and Tricks
Chapter 9. Email Management
Chapter 10. Email Management – Preventative Maintenance
Chapter 11. Outlook Sync Table Cleanup
Chapter 12. Monitoring the Windows Event Log
Chapter 13. Platform Event Tracing Overview
Chapter 14. Enabling Event Tracing
Chapter 15. Troubleshooting Using Event Tracing
Chapter 16. Matching User Error Codes
Chapter 17. Troubleshooting Development Errors
Chapter 18. Workflow Best Practices
Chapter 19. CRM SQL System Jobs
Chapter 20. CRM Organization Settings Editor
Chapter 21. Creating a Management Dashboard
Chapter 22. Email Router Troubleshooting
Chapter 23. SCOM Management Pack for Dynamics CRM
Chapter 24. SQL Server Indexing
Chapter 25. Backups, Backups, Backups
Chapter 26. CRM Diagnostics Page
Chapter 27. Problems with Security
Drop me a line if you have any questions.
Just in case you missed the announcement, the Office 365 team has adding the Dynamics CRM Outlook Client to the Support and Recovery Assistant for Office 365.
Read more about it here.
Version 4.0 of SnapShot! is now live. This is the most major update I’ve made in quite a while with so many adjustments that I am skipping versions 3.8 and 3.9 and moving straight to v4.0.
The following changes and additions have been made to SnapShot!
I am really excited about this report! It shows you entity privileges across security roles. Here is a sample of the Account entity:
Since SnapShot! supports Dynamics CRM 2011, 2013, 2015, and 2016, I filter the component list based on the version of Dynamics CRM that you have connected to so that only components that are available in that version are displayed.
Previously, all privileges were shown, regardless if they were actually available within that version of Dynamics CRM.
Visit the SnapShot! product page for more information and to download the trial.
If you have any questions or suggestions for enhancements, then please let me know.
Dynamics CRM 2015 implemented a new system-wide alerts to inform you of issues with things like the Server-side Sync process. They appear in the user interface as a yellow bar at the top of the page, as you can see below:
Clicking the View Alerts button will take you to the Alerts view where you may review the individual alerts.
At this point I am not certain what will be alerted on, besides issues with Server-Side Sync, but those for sure are there.
The actual Alerts view is on the Dynamics CRM user interface at the end of the Sales Area:
The rather fascinating thing about Alerts, is that they are not actually Alerts, they are Traces. So, when you are working with Advanced Find, you need to use the Traces entity.
The Traces (Alerts) entity is actually called TraceLog, which is the entity name to use when writing code using the Dynamics CRM SDK.
Traces are fairly locked-down so here are some of things you can do with the entity:
Privileges for the Traces entity are found on the Core Records tab:
It would appear that everyone can Create, Read, and Append Trace records, but only the System Administrator role can delete them. Since these are standard security roles, you should be able to change these settings if you wish.
Traces are a very interesting addition to the Dynamics CRM platform and I need to get more information from Microsoft as to its intended use and if we as developers can actually create alerts that may be seen by the System Administrator.
That will be my next step, when I have time.
We ran into a fascinating issue when creating Routing Rule recently.
Here is the rule:
This is fairly straightforward, but for some reason, we had an issue where the rule was not firing as we expected.
I turns out that behinds the scenes, CRM actually creates a workflow to handle the magic required to route the email.
Normally, you never really see these workflows run because they have the flag set to delete the history if the workflow was successful
But unfortunately, in our case, something was not configured correctly in this workflow and it was failing:
We modified the rule slightly and everything seemed to work fine after that. (I wasn’t the one doing the modification so I an not exactly sure what was changed.
Anyway, the moral of the story is that if you ever see strange workflows, that you did not create, failing, see if they are Routing Rules.
This turned out to be a very valuable article.
Email Router configuration error "Incoming Status Failure: No results were found"
In our case, it was because the mailbox was hidden.
In a multi-server environment (Development, QA/Staging/Testing, Production), you occasionally run into an issue where you need to have the latest production data in the lower environments.
Here is a set of steps that will help you move the Production CRM database into Development or QA. PowerShell is your friend here so much of this process can be automated.
Unfortunately, I don’t have any code to share because this was a customer project. But, this is not that hard to reproduce yourself.
We will review the task of moving to the QA environment, but the steps will apply to any other environment as well.
The first step is to save any data that is specific to that environment, including:
Make or get the latest full backup of the production CRM database.
Turn off the following services:
Using the CRM Deployment Manager:
Use Disable-CrmOrganization and Remove-CrmOrganization
From the SQL Management Studio, perform the following tasks:
This can be automated using PowerShell using at least two techniques: SMO commands or raw SQL commands, with the latter being the easiest.
Using the CRM Deployment Manager, import the QA database.
From the Operating System, perform these tasks:
Perform any PHI cleanup to remove or obfuscate sensitive information including:
I would recommend the SSIS Integration Toolkit for Microsoft Dynamics CRM from KingswaySoft.
You may also wish to review the ALM Toolkit from AdxStudio for additional application life cycle management capabilities.
So that is about it. As you can see, it’s not rocket science, just a bunch of steps.
By the way, one assumption is that the servers are all in the same domain. If your environments are in different domains, you’ll have a bit more work to handle mapping users from one domain to the other, but that is something that is totally doable.