EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

不可用的节点

在XAF中,应用程序模型具有分层结构。模型生成器和更新器根据当前的业务对象模型创建第一层。该层是基础应用程序结构,没有任何差异。有关其他信息,请参阅“应用程序模型”主题中的“业务模型”。

基于模块和应用程序的XAFML文件中的自定义模型设置以及用户的模型差异(来自XAFML文件或数据库)来构建更高的层。如果高层的设置不能从第一层应用到指定的节点(不存在具有该名称的节点),则这些设置将在UnusableNodes.xafml文件中替换。

如果您的应用程序包含不可用的节点,那么当您使用模型编辑器自定义应用程序模型时,它将显示以下警告消息:

不可用节点

您还可以通过单击显示不可用节点按钮在模型编辑器中显示不可用节点。

UnusableNodes_ModelEditor

这个怎么运作

在以下情况下,可以在UnusableNodes.xafml文件中替换设置:

  • 默认应用程序模型架构有所更改,新架构无法识别您的节点。

    例子:

    在先前的架构中,“ A”属性放置在BOModel节点的“ B”节点中。在新的XAF版本中,由于重大更改,在ListView节点的“ C”节点中定义了“ A”属性。如果没有特殊的模型差异转换器,则会在UnusableNodes文件中替换以前影响“ A”属性的自定义项。

  • 业务类的结构发生了变化,包括从类及其成员中重命名和删除属性,以及在类中声明新成员和删除先前成员。

    例子:

    您重命名你的类,失去了你在同级车节点所做的所有修改BOModel,相应的视图节点视图节点等

例子

本节说明在哪种情况下将设置移至UnusableNodes.xafml文件以及如何还原它们。导航项目的设置在此处用于演示目的。

在XAF中,导航项目是从标记有DefaultClassOptionsAttributeNavigationItemAttribute的业务类中生成的。装饰有这些属性之一的导航项位于相应的导航组中。该DefaultClassOptions属性放置导航项目的默认组。该NavigationItem属性允许你指定目标组的名称(了解更多,请参阅属性类的话题。

您可以通过以下方式修改导航项集合:

  1. 修改创建的导航项。
  2. 将新的导航项添加到生成器自动创建的现有组中。
  3. 将新的导航项目添加到根导航组,或创建一个新的导航组并向其中添加一个项目。

然后,如果从所有业务类中删除DefaultClassOptionsAttributeNavigationItemAttribute,则应用于第一种方法和第二种方法的所有差异都将移到UnusableNodes.xafml文件中。发生这种情况的原因是,为用这些属性修饰的类创建的导航项已从“应用程序模型”中删除。因此,这些差异不能应用于相应的节点。这些差异将作为应用于默认NavigationItems节点的差异保存在XAFML文件中,因为存在标有DefaultClassOptionsNavigationItem属性的类。

如果解决方案及其模块中没有使用这些属性标记的类,则默认情况下不会生成具有DefaultGroupName名称和NavigationItem属性名称的组节点,并且模型差异无法应用于这些节点。请注意,模型差异仅应用于现有节点。

请按照以下步骤恢复丢失的设置:

  1. 打开模型编辑器,右键单击根应用程序节点以添加NavigationItems,将其设置移入UnusableNodes文件,然后保存更改。
  2. 在文本编辑器中打开UnusableNodes文件,然后复制某些自定义项。打开所需的Model Differences XAFML文件作为文本文件,并将这些设置粘贴到其中。
  3. 启动您的应用程序,并确保正确应用了替换的设置。
  4. 删除UnusableNodes文件。
注意

您可以使用“转换应用程序模型差异”主题中描述的方法,在迁移到新的应用程序版本后自动解决丢失自定义项的问题。

转载保留此链接,注明出处