You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: powerapps-docs/developer/common-data-service/entity-attribute-metadata.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -62,7 +62,7 @@ These are the localizable values that are used to refer to the attributes in an
62
62
The `AttributeTypeName` property describes the type of an attribute. This property contains a value of type `AttributeTypeDisplayName` which provides a label for each the different types of attributes that exist.
63
63
64
64
> [!NOTE]
65
-
> Don't be confused by the `AttributeType` property. The values in this older property are mostly aligned with `AttributeTypeName` except that it shows `ImageType` attributes as `Virtual`. You should refer to the `AttributeTypeName` property rather than the `AttributeType` property.
65
+
> Don't be confused by the [AttributeType](/dotnet/api/microsoft.xrm.sdk.metadata.attributemetadata.attributetype#Microsoft_Xrm_Sdk_Metadata_AttributeMetadata_AttributeType) property. The values in this older property are mostly aligned with [AttributeTypeName](/dotnet/api/microsoft.xrm.sdk.metadata.attributemetadata.attributetypename#Microsoft_Xrm_Sdk_Metadata_AttributeMetadata_AttributeTypeName) except that it shows `ImageAttributeMetadata` and `MultiSelectPicklistAttributeMetadata`as `Virtual`. Refer to the `AttributeTypeName` property rather than the `AttributeType` property.
Copy file name to clipboardExpand all lines: powerapps-docs/developer/common-data-service/use-webhooks.md
-3Lines changed: 0 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -88,9 +88,6 @@ The body will contain string that represents the JSON value of an instance of th
88
88
89
89
The service you create must parse this data to extract the relevant items of information for your service to provide its function. How you choose to parse this data depends on the technology you are using and your preferences.
90
90
91
-
> [!IMPORTANT]
92
-
> Due to certain Service Bus optimizations, it is not recommended that .NET developers deserialize the JSON formatted message request body to a <xref:Microsoft.Xrm.Sdk.RemoteExecutionContext> object. Rather, use [JObject](https://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_Linq_JObject.htm) to parse the message body.
93
-
94
91
The following is an example of the serialized JSON data passed for a step registered with the following properties:
Copy file name to clipboardExpand all lines: powerapps-docs/maker/common-data-service/export-customized-entity-field-text-translation.md
+18-3Lines changed: 18 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: "Export customized entity and field text for translation with Power Apps | MicrosoftDocs"
3
3
description: "Learn how to export entity and field text for translation"
4
4
ms.custom: ""
5
-
ms.date: 06/15/2020
5
+
ms.date: 08/05/2020
6
6
ms.reviewer: ""
7
7
ms.service: powerapps
8
8
ms.suite: ""
@@ -23,16 +23,31 @@ search.app:
23
23
- PowerApps
24
24
- D365CE
25
25
---
26
-
# Translate customized entity and field text into other languages
26
+
# Translate customized entity, form, and field text into other languages
27
27
After you create customized entity and field text in your unmanaged solution, you may want to translate it into other languages.
28
+
29
+
> [!IMPORTANT]
30
+
> When you export translations, the export translations feature exports translations for the entity. So, that means even if the solution contains only a single form, labels for all the forms for the entity will be exported. Make sure you only modify the form's labels when importing the translations back otherwise another component translation you modify will be added as a dependency to the solution.
28
31
29
32
1. Sign into [Power Apps](https://make.powerapps.com/?utm_source=padocs&utm_medium=linkinadoc&utm_campaign=referralsfromdoc) and select **Solutions** from the left navigation.
30
33
31
34
2. Select the unmanaged solution you want, on the command bar select **…**, select **Translations**, and then select **Export translations**.
32
35
33
36
3. After the export completes the exported translations compressed (zip) file is downloaded to your browser’s default download folder and contains the exported labels.
34
37
35
-
4. Extract the XML file from the compressed (.zip) file and translate it.
38
+
4. Extract the XML file from the compressed (.zip) file.
39
+
40
+
5. Open the CrmTranslations.xml file in Excel.
41
+
42
+
6. Select the sheet named **Localized Labels**.
43
+
44
+
7. Notice there is already a column with the base language code id, such as 1033 (English U.S.) Add a column with the language code id for every language you want to translate labels. For example, add a column for 1034 (Spanish traditional).
45
+
46
+
8. Add the translated text in the new column for the object names and object ids that you want.
47
+
> [!div class="mx-imgBorder"]
48
+
> 
49
+
50
+
9. When you're finished adding your translations, save, and zip up the package so you can [Import translated entity and field text](import-translated-entity-field-text.md).
Copy file name to clipboardExpand all lines: powerapps-docs/maker/common-data-service/import-translated-entity-field-text.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -23,7 +23,7 @@ search.app:
23
23
- PowerApps
24
24
- D365CE
25
25
---
26
-
# Import translated entity and field text back into an app
26
+
# Import translated entity, form, and field text back into an app
27
27
28
28
If you have customized entity or field text, such as field labels or drop-down list values, you can provide the users in your organization who are not working with the base language version of your environment with this customized text in their own languages. To do so, you export the text strings for all your customizations so that they can be translated into the languages you use in your organization.
Copy file name to clipboardExpand all lines: powerapps-docs/maker/common-data-service/import-update-export-solutions.md
+20-3Lines changed: 20 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: "Import solutions | MicrosoftDocs"
3
3
description: "Learn how to import a solution in Power Apps"
4
4
ms.custom: ""
5
-
ms.date: 05/26/2020
5
+
ms.date: 08/06/2020
6
6
ms.reviewer: ""
7
7
ms.service: powerapps
8
8
ms.topic: "article"
@@ -54,11 +54,28 @@ To import a solution:
54
54
When you download the log file, you will find an XML file that you can open using Office Excel to view the contents.
55
55
56
56
> [!NOTE]
57
-
> You can’t edit an active routing rule set. Therefore, if you’re importing a solution that includes an active routing rule set into an environment where the rule already exists with the same ID, the import will fail. More information: [Create rules to automatically route cases](https://docs.microsoft.com/dynamics365/customer-engagement/customer-service/create-rules-automatically-route-cases)
57
+
> You can’t edit an active routing rule set. Therefore, if you’re importing a solution that includes an active routing rule set into an environment where the rule already exists with the same ID, the import will fail. More information: [Create rules to automatically route cases](https://docs.microsoft.com/dynamics365/customer-engagement/customer-service/create-rules-automatically-route-cases)
58
58
59
-
<aname="BKMK_UpdateSolutions"></a>
59
+
## Troubleshooting solution import
60
+
61
+
### There's an active unmanaged layer created after importing a managed solution
62
+
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)
64
+
65
+
### Form doesn't appear in target environment after importing unmanaged solution
66
+
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.
68
+
69
+
### *Microsoft.Crm.CrmInvalidOperationException: full formXml is expected to create a form <formid>* message during solution import
70
+
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)
72
+
73
+
### *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
74
+
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)
Copy file name to clipboardExpand all lines: powerapps-docs/maker/common-data-service/solution-layers.md
+27-4Lines changed: 27 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: "Solution layers | MicrosoftDocs"
3
3
description: "Learn how you can use solution layers"
4
4
keywords:
5
-
ms.date: 03/13/2020
5
+
ms.date: 08/05/2020
6
6
ms.service: powerapps
7
7
ms.custom:
8
8
ms.topic: article
@@ -36,14 +36,14 @@ When you prepare your managed solution for distribution, remember that an enviro
36
36
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. More information: [Understand how managed solutions are merged](../../developer/common-data-service/understand-managed-solutions-merged.md)
37
37
38
38
## View the solution layers for a component
39
-
The solution layers feature allows you to view all component changes that occur due to solution changes over time. Within a solution layer, you can drill down to view specific changed and unchanged property details for a component. You can access solution layers from the **Components**list or from the **Dependency Details** dialog box in solution explorer.
39
+
The see solution layers feature allows you to view all component changes that occur due to solution changes over time. Within a solution layer, you can drill down to view specific changed and unchanged property details for a component. You can access solution layers from the **Solutions**area in Power Apps.
40
40
41
-
The solution layers feature:
41
+
The see solution layers feature:
42
42
- Lets you see the order in which a solution changed a component.
43
43
- Lets you view all properties of a component within a specific solution, including the changes to the component.
44
44
- Can be used to troubleshoot dependency or solution-layering issues by displaying change details for a component that was introduced by a solution change.
45
45
46
-
1.To view solution layers from the**Components** list, open [solution explorer](../model-driven-apps/advanced-navigation.md#solution-explorer). In the **Components**list, select a component, such as **Account**, and then select **Solution Layers** on the toolbar.
46
+
1.Sign in to Power Apps, select**Solutions**, open the solution you want, select **...**next to a component, such as **Account**, and then select **See solution layers**.
There are additional tabs available for specific component solution layers.
72
+
73
+
|Tab name |Description |Possible value |
74
+
|---------|---------|---------|
75
+
|RolePrivileges | Displays the privileges for a security role. | Added, Updated, Removed, Unchanged |
76
+
|AttributePicklistValues (optionset) | When selected for a global optionset, displays the possible values for an optionset. | Added, Updated, Removed, Unchanged |
77
+
|AttributePicklistValues (optionset attribute) | When selected for an optionset attribute, displays the values for the attribute. | Added, Updated, Removed, Unchanged |
78
+
79
+
<!--## Remove an unmanaged layer
80
+
Unmanaged customizations reside at the top layer for a component and subsequently define the runtime behavior of the component. In most situations you don't want unmanaged customizations determining the behavior of your components. To remove the unmanaged layer for a component, follow these steps:
81
+
82
+
[!IMPORTANT]
83
+
> Removing active unmanaged customizations can't be reversed or undone. All data associated with the unmanaged customization may be lost.
84
+
85
+
1. Open the solution you want, select **...** next to a component, such as **Account**, and then select **See solution layers**.
86
+
2. If an unmanaged layer is detected, a message appears indicating the layer. On the left **Properties** pane, select **Remove unmanaged layer**.
0 commit comments