Delete entities, processes, dashboard and reports from managed solutions - dynamics-crm

My requirement is to delete certain entities, processes, dashboards and reports from managed solutions on a CRM dynamics 365 system (TEST, UAT, PROD).
The changes must first be implemented in a (Development) CRM Dynamics 365 environment which has Unmanaged solutions.
This is the process we are following:
Developer customizes DEV solutions (unmanaged) and exports solutions as Managed solutions to TEST for QA review:
Unmanaged Solutions (DEV) --Export the Managed Solutions--> TEST CRM Dynamics 365 system
After QA has passed the TEST review:
Unmanaged Solutions (DEV) --Export the Managed Solutions--> UAT CRM Dynamics 365 system
After client has passed UAT review:
Unmanaged Solutions (DEV) --Export the Managed Solutions --> PROD CRM Dynamics 365 system
Note: There are multiple solutions in the environment. Example : DEV, TEST, UAT and Prod have Solution 1, Solution 2, Solution 3, Solution 4, Solution 5
How do I delete Entities, Entities (with dependencies), processes(Workflows), dashboards and reports in DEV from the unmanaged solutions so that it gets deleted from the managed solutions when I export the solutions into the above TEST, UAT and PROD CRM Dynamics 365 environments?

You can add and change existing configuration settings via a solution, but solutions cannot be used to delete components in a target (TEST, UAT, PROD) environment. If you have a managed solution in UAT or PROD, and you delete it, then it will delete all the elements from that environment.

this modules can not be delete from TEST, UAT and PROD because there are no suggested way to remove modules from a managed solution!
but you can do this with help from SQL (if your crm is on-permise and access to it), in table of solution by change managed field to zero you can export the solution, after this remove all unused componnents from solution xml file (in solution zip file) and import this to CRM again.
after this you can update solution normaly with exported file from DEV.
i do this way in past but I do not justify if you are not an expert in this field!
best regard.

Related

Dynamics CRM CI processes - solution "delta import" flow?

We’re having the following CI process in our CRM Dev environment:
We have common CRM environment which is used for customizing system. Plus, many development virtual machines (each of them has their own CRM instance installed) for individual developers. We store unpacked CRM solutions inside GIT repository, and we have automated process of packing them (with CRM solution packager), importing and publishing them on developer’s VMs.
Our problem at this moment is that importing single solution (containing all the customizations) packed with Solution Packager takes quite a long time. I was looking for some method to automatically create Dynamics 365 solution containing only “delta” changes and import it into development machines (unfortunately – I could not find any other than creating “delta solutions” directly inside the common CRM environment which does not help in case of our CI flow).
Unfortunately, the environment is CRM 2015 so using solution patching/upgrades is not an option.
Any thoughts? Ideas?

Business process flow deployment issue

We are using Dynamics CRM 2016 on-premise.
We created a managed solution to transfer our customizations to the production system.
Part of those is a business process flow.
Issue: We changed the BPF in the managed solution: We deleted steps and renamed steps. But those changes are not deployed to the production system.
The deploy log shows no errors. It shows our BPF as "imported". But the "workflow activation" is empty.
We tried deactivating the BPF in the target before importing it. No avail: The BPF in the target remains unchanged. Any ideas?

Microsoft Dynamics CRM on-premises Migration to Microsoft Dynamics CRM Online

I want to migrate Microsoft Dynamics CRM on-premises 2015 to Microsoft Dynamics CRM Online 2016 without use service Scribe or another service.
the steps I want to use is:
1 : export a special solution called the Default Solution. The Default Solution contains all the components in CRM and import in CRM Online.
2 : Export Data to Excel for all entities in CRM on-premises and import in CRM Online.
3 : map users CRM with AD Office 365.
Is this correct steps?
Any another way to migrate or ideas ?
I think your steps are just right.
Just be advised, CRM Online has new functionality not included in CRM 2015 on-premise, you do need to check that features.
For two reasons:
Something might stop working
Something might continue working but there's a new functionality in CRM Online that already does it without coding.
And I would add another step, check that all of the workflows are Active, after adding the users .
If you're attempting to migrate a small amount of data, you can use the Data Migration tool in the SDK. It's better than the Excel imports.
I also have the same task to migrate crm on premise organization to crm online organization. I also follow the same steps. Here are some of the things I have learned so far,
Plugins implemented in full trust mode did not worked in online
environment because it only supports the sandbox mode for plugings.
It's better to use data migration tool such as MSCRM Toolkit. But
unable to maintain to ownership of the record.

How can I develop and test a policy without breaking TFS for the whole team?

I'm working on a check in policy and while testing it the first time, I got an email from a teammate saying he couldn't commit any files, because when I installed the policy for testing on my machine, his TFS died, because he didn't have the policy DLL installed and registered. It seems that when I registered the policy locally, the TFS server registered it for the whole team, and the other members don't have it yet, so their commits blew up.
But how are you supposed to develop and test a policy if the only way to do this is installing in the global TFS server for everyone? Clearly, the policy code isn't ready for deployment before you ever try to test it, and you can't test it if testing breaks TFS for everyone until you test and deploy it.
What is the way out of this problem? Ideally, I'd like to have a local-only policy, but that doesn't seem to be possible.
Policies are set on a per Team Project basis. There is no local setting for check in policies, they are created against the Team Project and everyone who is using that Team Project will be affected, meaning that you will have to roll out the dll to all users.
Your best solution is to have a test Team Project where you can try out new builds / check-in policies and other bits and pieces in isolation.
Once you are happy with what you have, you can then apply the same items to the main Team Project that your team is working on.

Visual Studio 2010 Database Project Deployment Strategy

I've just read the VS 2010 Database Project Guidance document (link to guidance document) and I'm still none the wiser about what's a sensible strategy for Continuous Integration DB builds and Unit Testing the DB.
We currently have our DB project in the same solution as our application and build the whole solution on check-in, is deploying the DB with every build practical?
Should we separate the DB projects to another solution and then they'd get built less often so deploying on build would be more sensible?
Should we forget about automatically deploying all together and just make that a manual step?
How do you deploy databases for Database Unit Test projects?
There's a lot of information in the guidance document but no definitive answers.
Thanks
Ben
It depends what your goals are. What environment(s) are you considering deploying to on every build?
How often, and where, you deploy to is usually determined by your QA and/or release processes. I'm assuming you don't want to auto-deploy to the production database on every check-in, chances are you have a QA process that needs to happen first.
So I'd be looking at what environments do you have, what are they used for, and how often would you like them to be updated. It is pretty common to have a QA environment that is updated nightly, but updating it on every checkin would disrupt QA activities.
Some people have an environment that is deployed to on every build and automated tests are run against it, if you have this then deploying there every build would make sense.
You can build DB projects without having to deploy them, the build and deploy are separate concepts when it comes to DB projects in Visual Studio.

Resources