Solution Component Mover — User Guide
Overview
Solution Component Mover lets you copy individual Dataverse solution components from one solution to another within the same environment. It processes components sequentially, logs every operation, and retains the log across sessions.
Prerequisites
- An active connection to a Dataverse environment
- Read access to solutions and solution components
prvAddSolutionComponentprivilege to add components to the target solution
Getting Started
- Select Solution Component Mover from the sidebar
- The plugin connects and loads the list of visible solutions
Workflow
1. Select Source and Target Solutions
- Source solution — The solution you are copying components from
- Target solution — The solution you are copying components to
Both solutions must be in the same environment. Unmanaged solutions are listed; managed solutions are read-only for component addition.
2. Browse Source Components
After selecting the source solution, the component list loads. Each item shows:
| Column | Description |
|---|---|
| Name | Display name of the component (resolved where possible) |
| Type | Component type (Entity, Attribute, Web Resource, etc.) |
| Object ID | The component's unique identifier |
3. Filter Components
Use the filter bar to narrow the list:
| Filter | Description |
|---|---|
| Search | Type part of the component name |
| Type filter | Show only specific component types |
| New only | Show only components not already in the target solution |
4. Select Components to Copy
Check the boxes next to the components you want to move. Use Select All (after filtering) to pick an entire filtered subset.
5. Execute
Click Execute.
- Components are processed one at a time (sequential, not parallel) to avoid throttling
- A progress bar shows
n / totalas operations complete - Each row updates its status in real time:
| Status | Meaning |
|---|---|
| ⏳ Running | Currently being processed |
| ✅ OK | Successfully added to target solution |
| ❌ Error | Failed — hover for the error message |
6. Review the Operation Log
The log panel (bottom of the screen) records every operation with:
- Timestamp
- Component name and type
- Result (success or error with detail)
The log persists across sessions — you can close the plugin and re-open it to see previous operations.
7. Export the Log
Click Export Log to download the operation history as a CSV file, which is useful for ALM audit trails.
Tips
| Tip | Detail |
|---|---|
| Use "New only" filter | When adding components incrementally, this filter prevents duplicating components already in the target |
| Add required components | When prompted, choose to include required components to avoid dependency errors during solution export |
| Check for dependencies | If a component fails, it may have dependencies not in the target solution — add the dependency first |
| Sequential processing | Operations run one at a time deliberately — do not close the app during execution |
Troubleshooting
| Problem | Resolution |
|---|---|
| Component fails with "dependency error" | Add the parent entity or dependency component first, then retry |
| Target solution not listed | Managed solutions cannot receive new components — choose an unmanaged solution as the target |
| Component name shows as GUID | Some component types cannot be resolved to display names — the GUID is the component's unique identifier |
| Log is empty after restart | Log data is stored locally — check that the application data folder has not been cleared |