Skip to content

Commit 443b7e0

Browse files
authored
Merge pull request #3350 from MicrosoftDocs/matp-1940501
Revised per 1940501
2 parents 835866a + 071afef commit 443b7e0

File tree

2 files changed

+30
-12
lines changed

2 files changed

+30
-12
lines changed

powerapps-docs/maker/common-data-service/import-update-export-solutions.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,19 +60,23 @@ To import a solution:
6060

6161
### There's an active unmanaged layer created after importing a managed solution
6262

63-
During solution import the system must ensure that there is a fallback form for an entity. This requirement is enforced on the customization settings when you create entities or forms. But, if for some reason, an import is causing a scenario where there's no fallback form for an entity, then the import will create an active unmanaged layer for one of the main forms and the unmanaged customization will configure the form as the fallback. This makes sure that users who don't have access to any of the forms for an entity can view the fallback form. More information: [Set the fallback form for an entity](../model-driven-apps/control-access-forms.md#set-the-fallback-form-for-an-entity)
63+
During solution import the system must ensure that there is a fallback form for an entity. This requirement is enforced when you create entities or forms. If during import there isn't a fallback form specified for an entity, then the import creates an unmanaged active layer for one of the main forms and the unmanaged customization indicates the form as the fallback form. This ensures that users can view a form when they dont have access to any of the other entity forms. More information: [Set the fallback form for an entity](../model-driven-apps/control-access-forms.md#set-the-fallback-form-for-an-entity)
6464

65-
### Form doesn't appear in target environment after importing unmanaged solution
65+
### The form doesn't appear in target environment after importing the unmanaged solution
6666

67-
During export of unmanaged solutions some forms which are not modified get exported with the attribute `unmodified=1` for the form XML in the customizations.xml file located in the solution package. This ensures that, while these forms are part of the solution exported, when the same solution is imported in a new environment these forms are skipped during the import. To avoid this scenario the form needs to have active customizations for it to be exported without the unmodified=1 attribute. You can determine whether the form XML has the unmodified=1 attribute by extracting the exported solution. Then, search customizations.xml for the form and check for the unmodified attribute.
67+
During export of unmanaged solutions, some forms that aren't modified get exported with the attribute `unmodified=1` in the form XML of the customizations.xml file located in the solution package. This attribute is located in the FormXml node in the customization.xml file within the solution package. This attribute ensures that, even though these forms are part of the solution being exported, when the same solution is imported in a new environment the form will be omitted from the import. To avoid this scenario, the form must have active customizations for it to be exported without the unmodified=1 attribute. To verify this, extract the exported solution package and search the customizations.xml file for the FormXml node in question and verify the unmodified attribute.
6868

6969
### *Microsoft.Crm.CrmInvalidOperationException: full formXml is expected to create a form <formid>* message during solution import
7070

71-
This error can occur when the form you are importing doesn't exist in the target environment and the form that you're trying to import doesn't have the full component and metadata. Subsequently, the form XML only contains the changes when the full form XML is required. For example, this error can occur when you add a custom entity to a solution and don't select the **Include all components** option before export (also known as a segmented solution). To verify if the solution is segmented, open the customizations.xml file in the solution and search for the form id displayed in the error message. If the form XML contains an attribute named `solutionaction` the form XML doesn't include all components but only has changes to the form. To resolve this issue, include all components when you add the entity to your solution. More information: [Use segmented solutions](/power-platform/alm/segmented-solutions-alm)
71+
This error can occur when the form you are importing doesnt exist in the target environment and the form is imported for the first time. The solution you are importing has only form changes (diff) in the form XML when it should have the full form XML. A solution should only import a diff form XML when the form is already present in the environment and you’re importing the changes. To verify, open your solution’s customizations.xml file and search for the FormXml node using the form id that appears in the error message. If the form XML contains an attribute named `solutionaction`, then the form XML is a diff. To resolve this scenario the form XML must be a full form XML (should not contain the solutionaction attribute) and can be obtained from the instance this form was originally created in as unmanaged.
7272

7373
### *Microsoft.Crm.CrmException: You cannot delete this form because it is the only fallback form of type main for the 'Entity' entity. Each entity must have at least one fallback form for each form type* message during solution upgrade or uninstall
7474

75-
The underlying cause of this error is due to trying to delete the last remaining form for an entity during a solution upgrade or uninstall. This behavior is by design. Each entity must be able to display a form for any user, at least one form must be designated as a fallback form. A fallback form is visible to users whose security roles do not have any forms explicitly assigned to them. The solution uninstall or upgrade may be causing the removal of the fallback form. To workaround this issue, create a temporary form configured as the fallback form for the entity, and then try the upgrade or uninstall again. More information: [Set the fallback form for an entity](../model-driven-apps/control-access-forms.md#set-the-fallback-form-for-an-entity)
75+
This error occurs when a solution upgrade or uninstall attempts to delete the last remaining form for an entity. This behavior is by design. Each entity must be able to display a form for any valid user. Therefore, at least one form must be designated as a fallback form. A fallback form is available to users whose security roles do not have any forms explicitly assigned to them. To workaround this issue, create a temporary form configured as the fallback form for the entity, and then try the upgrade or uninstall again. More information: [Set the fallback form for an entity](../model-driven-apps/control-access-forms.md#set-the-fallback-form-for-an-entity)
76+
77+
### *Solution cannot be deleted due to dependencies from other components in the system* message when uninstalling a solution
78+
79+
This issue can occur when the solution contains components that are referenced by other solutions on top of it in the layer stack. To resolve this issue, either delete the component or remove the dependency from the solution you’re trying to uninstall. More information: [Removing dependencies](/power-platform/alm/removing-dependencies)
7680

7781
### See also
7882

powerapps-docs/maker/model-driven-apps/create-design-forms.md

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
---
22
title: "Create and design model-driven app forms | MicrosoftDocs"
3+
description: "Overview of model-driven forms in Power Apps"
34
ms.custom: ""
4-
ms.date: 01/30/2020
5+
ms.date: 09/03/2020
56
ms.reviewer: ""
67
ms.service: powerapps
78
ms.suite: ""
@@ -55,7 +56,20 @@ There are still a number of entities, referred to here as classic entities, that
5556
|Saved View|Service|Service Activity|SharePoint Site|Site|
5657
|Territory|Unit|Unit Group|||
5758

58-
59+
## Create or edit a form
60+
61+
Create or edit forms for model-driven apps. More information: [Create, edit, or configure forms using the form designer](create-and-edit-forms.md)
62+
63+
## Delete a form
64+
To delete a form, sign in to Power Apps and the go to **Solutions** > Open the solution your want > select the entity that you want > **Forms** tab. Select the form, and then select **Delete** on the command bar.
65+
66+
There are a couple reasons you may not be able to delete a form.
67+
68+
|Reason |Work around |
69+
|---------|---------|
70+
| Every entity requires at least one main form and it is the only main form for the entity. | Create a new main form for the entity. Then delete the main form you tried earlier. More information: [Create a form](create-and-edit-forms.md#create-a-form) |
71+
| Every entity requires one designated fallback form and it is the only fallback form. | Create a new form for the entity and set as the fallback. Or designate another existing form as the fallback form. Then delete the form you tried earlier. More information: [Set the fallback form for an entity](control-access-forms.md#set-the-fallback-form-for-an-entity) |
72+
5973
## Form display FAQ
6074

6175
### Why is my form not visible in the form selector drop down in my app?
@@ -65,20 +79,20 @@ A form may not be available because it hasn’t been added to the app.
6579
3. On the **Components** tab verify the main forms that are included for the app. Verify that the form you want to display is checked. If not, select it, save, and then publish the app.
6680

6781
> [!div class="mx-imgBorder"]
68-
> ![](media/forms-included-in-app.png "Forms included with app")
82+
> ![Forms included with app](media/forms-included-in-app.png "Forms included with app")
6983
7084
### Why isn't my form displayed as the default form in the app?
7185
A form can be set as the default form through the form order configuration or when a user sets the default form as a personalization setting.
7286
1. Open solution explorer. Expand the entity that has the forms your want to order, and then select **Forms**.
7387
2. On the toolbar select **Form Order** > **Main Form Set**.
7488

7589
> [!div class="mx-imgBorder"]
76-
> ![](media/form-order-toolbar.png "Form Order toolbar command")
90+
> ![Form Order toolbar command](media/form-order-toolbar.png "Form Order toolbar command")
7791
7892
3. The form order is displayed. Select the form and use the up and down arrows to move the form within the form order. The form at the top of the list is the default form.
7993

8094
> [!div class="mx-imgBorder"]
81-
> ![](media/form-order-dialog.png "Form order dialog")
95+
> ![Form order dialog](media/form-order-dialog.png "Form order dialog")
8296
8397
4. Select **OK** to save the form order changes.
8498
5. On the form designer toolbar, select **Publish** to make the form order available in apps.
@@ -87,8 +101,8 @@ A form can be set as the default form through the form order configuration or wh
87101
Notice that, when an app user changes the form selection in the form selector drop down of an app, that form becomes the default form for the user. This personalization overrides the default form specified for the entity in the app.
88102

89103
> [!div class="mx-imgBorder"]
90-
> ![](media/change-form-user-setting.png "User setting to change default form")
91-
104+
> ![User setting to change default form](media/change-form-user-setting.png "User setting to change default form")
105+
92106
### Related topics
93107

94108
[Assign form order](assign-form-order.md) <br />

0 commit comments

Comments
 (0)