Tip #176: Adminless traceless troubleshooting

No administrators allowed

tl;dr When users are presented with a generic error message, URL in a browser address bar sometimes contain enough details about the error to determine the actual cause. How to fish “An error has occurred.” How wonderful. We all have seen it at one point of our CRM lives or another. Users unable to login, […]

Tip #175: Miscellaneous privileges with multiple access levels

Send As Privilege

We are all familiar with the record privileges in Dynamics CRM. User-owned entities have 5 access levels (None, User, Business Unit, Parent: Child Business Units, Organization) while organization-owned entities have only two of those (Go/No Go). Then there are miscellaneous privileges and training documentation states that (highlight is mine): Each Security Role also includes miscellaneous […]

Tip #172: Easy forecasting with Dynamics CRM

I can see the future!

Dynamics CRM deployment can amass vast quantities of data, both relevant and irrelevant. If this information is not used, it’s a burden on your infrastructure (on premises) or your wallet (online), and a dead weight for your business. It’s important to know or, at very least, have appreciation of forecasting techniques, for example, as demonstrated […]

Tip #171: If email router is having a slow day or how to add custom index

Sometimes things are slow. Very. Slow. So slow that your email router starts spitting dreadful messages: #9628 – An error occurred while delivering the e-mail message with subject “None of your business” in mailbox foo@bar.baz for delivery to https://crm.bar.baz. System.ServiceModel.FaultException`1 [Microsoft.Xrm.Sdk.OrganizationServiceFault]: SQL timeout expired. (Fault Detail is equal to Microsoft.Xrm.Sdk.OrganizationServiceFault). If you are on CRM […]

Tip #170: There is no queue like a business queue

Business Queue View

When user wants to add item to a queue, the default view used to perform the lookup is the “Business Queues” view. Don’t try to look it up in customizations – it’s not there and seems to be hard-coded. Not only that, it’s not documented anywhere [I could find] making it extremely difficult to understand […]

Tip #166: Become role customizer ninja

Role Editor

If you frequently modify security role and your wrist hurts because of all tiny mouse movements, there are some undocumented explicit links on the role dialog that could make your life much easier. Clicking on the entity name (e.g. Account) will cycle all privileges for this entity (i.e. Create, Read, etc) through all access levels […]

Tip #165: 1:1 with security twist

Usability of 1:1 relationships stretches far beyond UI candy. They can become a very useful tool that secures parts of the same logical record. For example, financial services company might use account entity to hold information about their customers but due to Chinese walls within the company, investment manager should not be able to access […]

Tip #164: Not all roles are created equal

It’s a reasonably well-known fact that recreating roles from scratch and adding all privileges to replicate one of the system roles is not the same as copying that system role. There are some hidden privileges that are not exposed via security dialog. This topic has been discussed and documented for CRM 4.0 and for CRM […]

Tip #160: If all I have is a Surface, how do I test Windows client?

Windows 7 & 8 in Azure

My work laptop is a mighty Lenovo W530 with upteen cores, bazillion GBs of RAM and quadrillions of TBs of SSD drive space. The only problem is that carrying it around keeps my chiropractor very busy. So when I travel, I dock this monster behind the firewall and carry around something like Surface or the […]