Skip to content

Commit 483a257

Browse files
authored
Merge pull request #2428 from MicrosoftDocs/matp-solution-updates
Matp solution updates
2 parents 366fefc + 37a3437 commit 483a257

File tree

4 files changed

+86
-11
lines changed

4 files changed

+86
-11
lines changed

powerapps-docs/maker/TOC.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1535,16 +1535,18 @@
15351535
href: ./common-data-service/use-solution-explorer.md
15361536
- name: Use the Common Data Services default solution
15371537
href: ./common-data-service/use-solutions-for-your-customizations.md
1538+
- name: Solution publisher overview
1539+
href: ./common-data-service/change-solution-publisher-prefix.md
1540+
- name: Create a solution
1541+
href: ./common-data-service/create-solution.md
15381542
- name: Import solutions
15391543
href: ./common-data-service/import-update-export-solutions.md
15401544
- name: Update or upgrade solutions
15411545
href: ./common-data-service/update-solutions.md
15421546
- name: Export solutions
15431547
href: ./common-data-service/export-solutions.md
1544-
- name: Navigate to a specific solution
1545-
href: ./common-data-service/navigate-specific-solution.md
1546-
- name: Create a solution
1547-
href: ./common-data-service/create-solution.md
1548+
- name: How managed solutions are merged
1549+
href: ./common-data-service/how-managed-solutions-merged.md
15481550
- name: Use environment variables
15491551
href: ./common-data-service/EnvironmentVariables.md
15501552
- name: View solution layers
@@ -1557,12 +1559,8 @@
15571559
href: ./common-data-service/common-issues-resolutions-solution-checker.md
15581560
- name: Use segmented solutions
15591561
href: ./common-data-service/use-segmented-solutions-patches-simplify-updates.md
1560-
- name: Solution publisher overview
1561-
href: ./common-data-service/change-solution-publisher-prefix.md
15621562
- name: Set managed properties in metadata
15631563
href: ./common-data-service/set-managed-properties-metadata.md
1564-
- name: Publish changes
1565-
href: ./common-data-service/publish-changes-for-use-customer-service-hub.md
15661564
- name: Best practices
15671565
href: ./common-data-service/solution-best-practices.md
15681566
- name: Work with dataflows

powerapps-docs/maker/common-data-service/create-solution.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,5 +62,22 @@ Because the default solution contains all the solutions components, it may be ea
6262
> [!IMPORTANT]
6363
> If you plan to include appointments in solutions, we strongly recommend that you don’t include only appointments and only recurring appointments in separate solutions. If you install and uninstall separate solutions with different appointment types, you’ll encounter a SQL Server error and you’ll have to re-create the appointments.
6464
65-
## See also
65+
## Publish changes
66+
67+
Certain customizations that make changes to the user interface require that they be published before people can use them in the application.
68+
69+
### Publish your customizations
70+
71+
1. Select **Solutions** from the left navigation.
72+
73+
2. Select the solution that you want to publish to open it.
74+
75+
3. From the list of commands, select **Publish all customizations**.
76+
77+
![Publish all customizations](media/publish-all-customizations.PNG "Publish all customizations")
78+
79+
> [!IMPORTANT]
80+
> Preparing customizations may take some time. If you see a message that the browser page has become unresponsive, wait for the page to become responsive, and don't close it.
81+
82+
### See also
6683
[Use solutions](use-solution-explorer.md)
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
---
2+
title: "How managed solutions are merged (Common Data Service) | Microsoft Docs" # Intent and product brand in a unique string of 43-59 chars including spaces
3+
description: "To avoid multiple installed solutions from interfering with one another, follow best practices while constructing a solution" # 115-145 characters including spaces. This abstract displays in the search result.
4+
ms.custom: ""
5+
ms.date: 02/27/2020
6+
ms.reviewer: ""
7+
ms.service: powerapps
8+
ms.topic: "article"
9+
author: "shmcarth" # GitHub ID
10+
ms.author: "jdaly" # MSFT alias of Microsoft employees only
11+
manager: "ryjones" # MSFT alias of manager or PM counterpart
12+
search.audienceType:
13+
- maker
14+
- developer
15+
search.app:
16+
- PowerApps
17+
- D365CE
18+
---
19+
# Understand how managed solutions are merged
20+
21+
When you prepare your managed solution to be installed, remember that an environment may have multiple solutions installed or that other solutions may be installed in the future. Construct a solution that follows best practices so that your solution will not interfere with other solutions.
22+
23+
The processes that Common Data Service uses to merge customizations emphasize maintaining the functionality of the solution. While every effort is made to preserve the presentation, some incompatibilities between customizations may require that the computed resolution will change some presentation details in favor of maintaining the customization functionality.
24+
25+
<a name="BKMK_MergingFormCustomizations"></a>
26+
27+
## Merge form customizations
28+
The only form customizations that have to be merged are those that are performed on any entity forms that are already in the environment. Typically, this means that form customizations only have to be merged when your solution customizes the forms that were included for entities created when Common Data Service was installed. One way to avoid form merging is to provide new forms for any Common Data Service entities. Forms for custom entities will not require merging unless you are creating a solution that updates or modifies an existing managed solution that created the custom entities and their forms.
29+
30+
When a solution is packaged as a managed solution the form definitions stored in FormXML are compared to the original FormXML and only the differences are included in the managed solution. When the managed solution is installed in a new environment, the form customization differences are then merged with the FormXML for the existing form to create a new form definition. This new form definition is what the user sees and what a system customizer can modify. When the managed solution is uninstalled, only those form elements found in the managed solution are removed.
31+
32+
When you add new elements to a form that is to be merged, we recommend that you include your new elements within new container elements (tabs or sections). Additions to any container will be appended to the end of the container. For example, fields added to a section will be positioned at the end of the section. It is expected that a customizer installing a solution will then modify the form to rearrange elements after it is installed.
33+
34+
Managed solutions that contain forms that use new security roles depend on those roles. You should include these security roles with your managed solution. If there are security roles associated with a form that are not in the environment that the managed solution is being installed on, the installation will not fail but the forms may not be associated with any security roles. When the managed solution is uninstalled, any security roles included with it will be removed. Any forms outside the managed solution can no longer be associated with those security roles.
35+
36+
> [!NOTE]
37+
> When a managed solution entity contains multiple forms and the environment entity form also contains multiple forms, the new forms are not appended to the bottom of the list of available forms – they are interleaved with the original entity forms.
38+
39+
<a name="BKMK_MergingNavigationCustomizations"></a>
40+
## Merge navigation (SiteMap) customizations
41+
When a solution is packaged as managed the SiteMap XML is compared to the original SiteMap XML and any other customizations made to the SiteMap. Only the differences are included in the managed solution. These differences include items that are changed, moved, added, or removed. When the managed solution is installed in a new environment, the SiteMap changes are merged with the SiteMap XML found for the environment where the managed solution is being installed. A new SiteMap definition is what people see.
42+
43+
At this point, a customizer can export the SiteMap to an unmanaged solution and that SiteMap definition will include all the elements of the active SiteMap. A customizer can then modify the SiteMap and reimport it as an unmanaged customization. Later, if the managed solution is uninstalled, the SiteMap XML that was imported with the managed solution will be referenced to remove the changes introduced with that managed solution. A new active SiteMap is then calculated.
44+
45+
Whenever a new visible element is added to the SiteMap, it appears at the bottom of whatever container it belongs in. For example, a new area appears at the bottom of the Navigation area. To position the elements that have been added, you must export the SiteMap, edit it to set the precise position and then import it again as an unmanaged solution.
46+
47+
> [!NOTE]
48+
> Only one SiteMap customization can be applied between publishing. Any unpublished SiteMap customizations will be lost when a new SiteMap definition is imported.
49+
50+
<a name="BKMK_MergingOptionSetOptions"></a>
51+
## Merge option set options
52+
Each new option set option is initialized with an integer value assigned that includes an option value prefix. The option value prefix is a set of five digits prepended to the option value. An option value prefix is generated based on the solution publishers customization prefix but may be set to any value. The option value prefix helps differentiate new option set options created in the context of a specific solution publisher and reduces the opportunity for collisions of option values. Using the option value prefix is recommended but not required.
53+
54+
A managed solution usually updates or adds options for option sets that are already in the environment, for example, the account Category or Industry option sets. When a managed solution modifies the options available in an option set, all the options defined in the managed solution are available in the environment. When the managed solution is uninstalled, the option set options will be returned to their original state.
55+
56+
### See also
57+
58+
[Solutions overview](solutions-overview.md) <br />
59+
[Export solutions](export-solutions.md) <br />
60+
[Create a model-driven app site map using the site map designer](../model-driven-apps/create-site-map-app.md)

powerapps-docs/maker/model-driven-apps/create-site-map-app.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: "Create a model-driven app site map for an app in Power Apps | MicrosoftDocs"
2+
title: "Create a model-driven app site map in Power Apps | MicrosoftDocs"
33
description: "Learn how to create a site map for you app"
44
keywords: ""
55
ms.date: 05/29/2018
@@ -26,7 +26,7 @@ search.app:
2626
- D365CE
2727
---
2828

29-
# Tutorial: Create a model-driven app site map for an app using the site map designer
29+
# Create a model-driven app site map using the site map designer
3030

3131
In this tutorial you perform several site map tasks such as creating a new site map, and adding an area, group, and subarea.
3232

0 commit comments

Comments
 (0)