MscrmTools / MsCrmTools.SolutionComponentsMover

Transfer solution components across solutions
GNU General Public License v3.0
4 stars 5 forks source link

Metadata #6

Closed dirkr1 closed 1 year ago

dirkr1 commented 4 years ago

When moving components from one solution to another, metadata is added to the copy. So moving components from the target to another solution won't work.

The metadata should be added as in the source solution defined.

I just tried to skip all metadata, then it worked for entities, but not for WebResources, OptionSets or Workflows.

MscrmTools commented 4 years ago

Not sure to understand what you mean by metadata here... can you precise?

dirkr1 commented 4 years ago

Actually all solution components are added to the new solution with the AddSolutionComponentRequest. This request has optionally the parameter IncludedComponentSettingsValues. Currently this parameter is omitted, so all entity metadata is added in the target solution (while it was not added in the source solution). I just tried to add the parameter IncludedComponentSettingsValues with an empty string arrray, but this fails when moving WebResources, OptionSets or Workflows. This should be dependant on the componenttype and on whether the source solution contains the metadata for this component. Currently when you try to ove a managed entity (e.g. account with custom fields) from a custom solution 1 to solution 2, this works. After this when you try to move then from solution 2 to solution 3 it fails, because of violation of best practices.

MscrmTools commented 4 years ago

ok, that makes sense, I will review this

MscrmTools commented 4 years ago

Can you test this version of the tool? and tell me if it works better for you?

MsCrmTools.SolutionComponentsMover.zip