By Ram Yarramasu | Reading time 6 mins
One has to be living under a rock for not knowing the versatility and the scalability feature of Microsoft Dynamics 365 CRM in today’s business environment. Compared to the other CRM products that are available in the market, Dynamics 365 stands out as a highly flexible and comprehensive solution provider. The product can be tailor-made as per the client’s requirements, industry or even the last-minute change that the Consultant might have thought of to provide ease of business. The size of the organization isn’t a challenge at all, because Dynamics 365 CRM fits like a glove everywhere.
Most companies are looking for an ‘out of the box’ solution, and D365 has the range to provide exactly the same. I can go on and on about why most enterprises are making the switch from their current CRM software to Microsoft Dynamics 365-with its filters feature it provides an effective and a better decision-making environment for the staff, business owners are on the winning side with more customers to cater, information silos are done away with, and so on. With a best practice methodology encouraged by Dynamics 365, business improves.
But the blog isn’t about that. I want to discuss a specific challenge that certain enterprises may face and how a knowledgeable Consultant could have prevented that.
We have multiple instances (test instance and Production instance) of Dynamic CRM in our organization. Due to some reasons, all the environments are not in sync (some customizations usually go missing in test environments).
Every organization follows a pattern to implement new enhancements or fix bugs into a production environment. We can make our changes directly in the production environment, but we avoid this step, as it isn’t a best practice. Therefore, we need to have a Dev environment and testing environments (such as QA and UAT) along with the production environment. Our cycle starts with developing/ customizing in Dev and then promoting it to test environments. Once it passes all the test cases, then we promote it to our live environment (production environment).
The regular pattern may break sometimes due to some odd circumstances. But to make it simple, I’m going to provide you a reason as an example, where this problem may occur.
A business in an organization has requested a new enhancement which has a lot of components involved. The developers did a great job and it went to production by going through all test cases. Soon a new test case was discovered. This new test case was the reason that the enhancement was failing and unfortunately, there was a challenge in reverting and amending it. As the business was getting affected, a quick fix was requested.
Let’s say, one of the developers named John came up with a plan and thought of working in UAT because there was no time for going through the entire regular process (developing in dev, unit testing, promoting to QA and testing in QA, promote to UAT and test in UAT and finally promote to prod). John fixed the issue and promoted it to production, and he saw that everything was working fine. However, John forgot to make that change in other test instances and dev instance .
Just remember there are few Johns in an organization and there are few enhancements or hotfix items which need to be addressed quickly.
In case if we lose track of those customizations, the instances will not sync. If you want to compare different instances or check whether they are in sync or not, then this article will provide you with the best possible solutions that are available.
You can compare it with Microsoft products:
- In the SDK bin folder, you can find SolutionPackager.exe. This is a tool which is useful to reversibly decompose a compressed solution file into multiple XML files and other files.
- Download the default solution for the instances needs to be compared (you can use any unmanaged solution but needs to be same on each instance).
- Create batch file named Extract Customizations.bat.
- solutionpackager /action:Extract /zipfile:Instance1\Default_1_0.zip /folder: Folder1
- solutionpackager /action:Extract /zipfile:Instance2\Default_1_0.zip /folder: Folder2
- Run the batch file.
- Once the folders (Folder1 and folder2) are updated, then we need to compare these files with online comparer tools such as Beyond Compare.
This example just goes to show that there needs to be a vigilant developer who remembers all the customizations during the initial stages. This will definitely prevent a challenge cropping up and hampering the client’s business. Most businesses as we know run on trust and most organizations would want to ally with solution providers who can use trust, honesty as their trademark. A consultant gets the first-hand feedback from the client in case anything goes wrong or right. And it is on the shoulders of a prudent CRM Consultant to ensure that he/she is prepared with all the answers.
We at AhaApps cannot stress enough the impact a knowledgeable and an expert Consultant can have on a business. Perhaps it is our years of involvement in the Salesforce and Microsoft Dynamics 365 CRM domains that have led us with a unique understanding of running a business with applied intelligence or just the fact that our Consultants have been creating extraordinary business solutions for all our clients for years together. Our Consultants have been chosen by industry experts and are extremely proficient in their fields. They understand the unpredictable IT industry like the back of their hands and come up with solutions with reasonable research and study.
We can assure that we do not have Consultants like John with us, as we believe in someone who doesn’t hesitate to go through the steps again to get to the bottom of the problem. We do not encourage finishing the job quickly, but our consultants believe in completing the tasks with diligence, covering every loophole and any unprecedented circumstance. So that the next time the client calls one of our Consultants, is not for fixing a bug, but for a cup of coffee or for some tee time. We are known for building long-lasting relationships with our clients that go beyond the walls of the board rooms.
So, connect with us and we can tell you how our staffing and consulting solutions can transform your business effectively-maybe over a cup of coffee.
Kiran has been associated with AhaApps since 2018 as Microsoft Dynamics CRM Developer. He is passionate about CRM and is zealous to provide the best and efficient solutions to his clients using his analytical, logical expertise. He loves to play cricket on the field when he gets time. And sometimes likes to watch his favorite series on the telly. He is also fond of trying out games on the mobile.