从补丁中的表单中删除字段并部署到目标环境
Removing a field from a form within a patch and deploying to target environment
我最近创建了一个新补丁,我从其中一个自定义实体的主窗体中删除了一个字段。我没有从实体中删除它,因为我想保留目标环境中的任何旧数据,只是将其从表单中删除。
补丁已部署到另一个环境中,基本解决方案的表单中仍然存在相同的字段。
我希望补丁在目标环境中更新相同的形式,但它没有,它仍然在另一个形式上。我不知道从这里去哪里,我需要做什么才能从目标环境中的表单中删除字段?
我以前遇到过类似的事情 - 希望你也面临同样的问题 -
有问题的表单在您的目标环境中可能有一个活动的非托管层,它有效地取代了您安装的托管解决方案。您可以通过切换到经典 > 导航到表单 > select 表单 > select 'Solution Layers' 在 'more actions'.
下检查解决方案
如果有非托管层,您会在顶部看到它(列为活动项)。
您可以通过单击省略号(3 个点)和 selecting 'Remove Active Customisations' 来删除此非托管层。
如果这是一个测试或生产环境,这些定制可能无论如何都不应该存在。如果您打开表单编辑器并在不进行任何更改的情况下保存并关闭,则很容易出现此错误 - 这实际上创建了非托管层
如果未找到非托管层,则一种可能是因为您使用的是开箱即用的表单。
您在表单上添加了一个属性。导出时,解决方案包含您创建的托管表单和非托管层之间的差异。您的属性已添加到目标表单中。
然后从表单中删除该属性。当您导出补丁时,开箱即用的表单和您拥有的表单版本之间没有区别(平台不能说“此属性已被删除”,因为没有区别)。所以在导入补丁的时候,找不到某个属性被移除了,所以在目标环境中没有移除。
解决方案:不要为标准实体使用开箱即用的表单,而是创建您自己的表单。
或者只是将属性可见性设置为 false 而不是删除 je 字段
我最近创建了一个新补丁,我从其中一个自定义实体的主窗体中删除了一个字段。我没有从实体中删除它,因为我想保留目标环境中的任何旧数据,只是将其从表单中删除。
补丁已部署到另一个环境中,基本解决方案的表单中仍然存在相同的字段。
我希望补丁在目标环境中更新相同的形式,但它没有,它仍然在另一个形式上。我不知道从这里去哪里,我需要做什么才能从目标环境中的表单中删除字段?
我以前遇到过类似的事情 - 希望你也面临同样的问题 -
有问题的表单在您的目标环境中可能有一个活动的非托管层,它有效地取代了您安装的托管解决方案。您可以通过切换到经典 > 导航到表单 > select 表单 > select 'Solution Layers' 在 'more actions'.
下检查解决方案如果有非托管层,您会在顶部看到它(列为活动项)。
您可以通过单击省略号(3 个点)和 selecting 'Remove Active Customisations' 来删除此非托管层。
如果这是一个测试或生产环境,这些定制可能无论如何都不应该存在。如果您打开表单编辑器并在不进行任何更改的情况下保存并关闭,则很容易出现此错误 - 这实际上创建了非托管层
如果未找到非托管层,则一种可能是因为您使用的是开箱即用的表单。 您在表单上添加了一个属性。导出时,解决方案包含您创建的托管表单和非托管层之间的差异。您的属性已添加到目标表单中。 然后从表单中删除该属性。当您导出补丁时,开箱即用的表单和您拥有的表单版本之间没有区别(平台不能说“此属性已被删除”,因为没有区别)。所以在导入补丁的时候,找不到某个属性被移除了,所以在目标环境中没有移除。
解决方案:不要为标准实体使用开箱即用的表单,而是创建您自己的表单。 或者只是将属性可见性设置为 false 而不是删除 je 字段