Tip #373: Careful with delete button

As it turns out, Spießrutenlaufen is no longer exclusive developers domain and can be equally applied to the customizers. Shan “Smoke ’em” McArthur reminded all of us (and not for the first time) that it’s not all unicorns and rainbows with managed solutions. If you ever delete a form for the entity that is part […]

Tip #372: IIS in the middle

Ages ago we had a tip on how to apply IP restrictions to your IFD CRM on-premises deployment. Traditional “this is unsupported” disclaimer followed. There is a way, however, to make it a) supported and b) infinitely more flexible and useful. Enter Application Request Routing. Basically, the idea is to put a small IIS server […]

Tip #368: Keep your early bound classes lean

The convenience of early bound classes often overshadows the side-effects of using those. It is, indeed, very easy to write: CrmSvcUtil.exe /url:https://myorg.api.crm.dynamics.com/XRMServices/2011/Organization.svc /out:GeneratedCode.cs /username:”myname@live.com” /password:”myp@ssword!” then add generated file to the project and use syntax-checked a.accountname = “Acme Inc” instead of a[“acountname”] = “Acme Inc” (see what I’ve done here to demonstrate the usefulness of […]

Tip #358: How to delete deleted report

Import renamed report

No, it’s not a typo – I am going to talk about deleting the deleted. – “What?!” Let me explain. We all have that Rupert/Vernona/Joe/Jill on our team who think they know best and, for some inexplicable reason, management agreed and granted them privileges sufficient to deliver some real damage. Like going into SQL Server […]

Tip #351: Tracing for plugins and custom workflow activities

CRM Online continues to improve on the existing features, as Andre “I’ve got 88 in my handle” Margono noticed when looking at the tracing functionality. ITracingService was available to the savvy developers since CRM 2011, however, the catch always has been that trace is only available when things go wrong, exception kind of wrong. Enter […]

Tip #347: How to use datetime fields in WHERE clause

Gotta love user Q&A sessions, like the one at Convergence 2015 that I had a privilege to take part in. Questions from users are always refreshing, very often challenging and sometimes they are just the reminder that any small bit of information that one possesses is not necessarily the common knowledge. On this occasion question […]

Tip #343: In Dynamics CRM we trust

Having customer’s commitment issues? Something like this? Oh, I don’t trust corporations, they are out there to get you and your money. Remember Lehman Brothers? To start with, unlike subprime mortgages, Microsoft Dynamics CRM is a real product. What’s important though, that Microsoft, unlike payday lenders, recognizes concerns customers and prospects alike might have about […]