A few hundred custom fields, another hundred or-so workflows, and twenty tabs; all for one form? Sounds like you’re building an XRM. The term “XRM” refers to an extension of a CRM that encompasses business processes beyond the typical sales, service and marketing oriented systems. An XRM leverages a CRM’s framework and capabilities to manage relationships that may bear no connection to a customer. Many organizations would rather build from existing infrastructure than develop new software to manage these processes. Dynamics 365 offers a well-developed, consistently updated, secure product that is a perfect match for development of an XRM.
Here are some useful tips and tricks to help you along the path of implementing large-scale XRM’s in Dynamics 365.
1. Establish a naming convention early
Having 300 custom fields for a single form can be cumbersome enough, but a well thought out naming convention can save you hours of hassle down the road. Identify similarities between multiple fields and use them in your naming convention. For example, if you have tens or hundreds of fields that all represent different data in the current year, and another set of fields that represent data from the past year, add something like “CY” and “PY” at the beginning or end of each field name to easily separate data that looks similar but varies by year. Naming conventions go beyond fields, however. Make sure to establish conventions for naming sub-grid views, entity names, relationships, tabs, sections, and more. All of these will come in handy later on in the process when you need to link a specific tab or sub-grid to a portal webpage, for example.
2. Take steps to reduce system stress
Consolidate and delete unnecessary bulk. The first strategy to tackle a large XRM project may include an excess of fields, workflows, tabs, etc. Later on, you may want to revisit this extra “stuff” and see if it can be better managed. Have 300+ workflows on a single form? That’s not unheard of for an XRM, but maybe you can combine workflows together that share some common ground; like belonging to the same entity, and using the same steps but with different fields for each. Suppose you want fields that display the increase/decrease between two decimal fields, and you want this data displayed on two new fields- one field showing the increase/decrease as a percent, and the other showing the difference of the two as a decimal number. You could create two separate workflows for this, or you could combine these two workflows, as they calculate from the same two fields, and just set two update steps for each of the two fields to be calculated.
3. Pay attention to duplicate fields and workflows
Take steps to resolve these issues as soon as possible. It happens; when you are working inside of a massive system with hundreds of fields and workflows, you’re bound to add a duplicate field here and a doubled-up workflow there. Take the steps necessary to remove duplicates early on as they can slow down performance and cause errors in your data.
4. Test thoroughly.
Try your hardest to break your creation. Large projects require a degree of thorough testing just like any other CRM build before the product can be pushed out to production. Systematically test until every field and workflow is proven to be working as they should.
5. Find ways to improve efficiency
Remove the extra time spent doing redundant tasks. Do you have dozens of workflows that have similar steps, but work off of different fields? Create a template workflow to start with a base to work from. Finding yourself constantly copying and pasting different lines of text over and over? Use an application like Ditto to hold multiple ctr-C’s and paste whichever one you need at that time, without the need to go back and copy that next line before pasting it. When you find yourself doing a redundant task, ask yourself- is there a way I can make this work more efficient?
Beringer Technology Group, a leading Microsoft Gold Certified Partner specializing in