更新子网以确保属性、网络要素和连通性为最近且在网络中有效。 更新子网也会暴露子网中的错误和不一致,例如无效要素、子网不相交或不一致、子网控制器数量不正确或者尚未验证的脏区。 可以在更新子网工具或查找子网窗格中运行更新子网操作,以更新在进行编辑和验证后标记为脏的子网。
在创建子网以及在对子网中的要素和对象进行编辑后验证网络拓扑时,子网将被标记为脏。 如果更新子网时未出现错误,则该子网将被标记为清洁。 在更新子网操作期间验证一致性失败或发现子网错误时,操作将失败,子网将标记为无效。 这将由 Subnetworks 表中的 Is dirty 属性进行追踪,并显示在查找子网窗格中每个子网的 Status 列中。 有关详细信息,请参阅子网生命周期。
检查和更新子网属性
更新子网时,需要检查各种属性和要求。 对于网络要素,某些属性也已被更新。 其中一些属性可在层的子网定义中进行设置。
如果在默认版本上更新子网,则将更新 SubnetLine 要素类的几何、子网名称属性和传播字段。 默认情况下,如果针对授权版本运行,则这些相同更新将仅限于在该版本中编辑的要素和对象。 可以更改编辑模式以在公共设施为网络 4 或更高版本的设置子网定义地理处理工具中使用事件。
抢先版本:
在指定版本中更新子网时,仅针对在该版本中修改的网络要素更新子网名称属性、Is connected属性和传播值。 可以通过更改指定版本参数的编辑模式以在层级子网定义中使用事件来修改此默认行为。更新子网可能生成错误。 有关特定于更新子网的错误的详细信息,请参阅更新子网错误。
以下各小节中介绍了有关更新子网时所检查属性的相关信息。
有效要素和对象
正如子网定义中所指定的,每个类的特定资产组和资产类型被定义对于域网络中的每个层均有效。 通过检查子网中可遍历要素的属性更新子网时,可以发现违反子网定义的要素和对象。 如果在更新子网时发现无效网络要素,则会创建错误并将该子网标记为无效。
更新子网时,不会为连接多个子网的边界要素评估子网定义的有效设备属性。 这些要素是定义两个不同子网边界的子网控制器;例如,两个回路之间打开的开关,或者两个区域之间关闭的阀门。
在每个层的子网定义中指定了以下有效要素和对象:
- 有效设备
- 有效的设备子网控制器
- 有效线
- 有效交汇点
- 有效边对象
- 有效交汇点对象
- 有效交汇点对象子网控制器
子网名称属性
Subnetwork name 属性用于追踪网络要素属于哪些子网。在此属性字段中填充的值来自设置为子网控制器的要素的子网名称。此外,域网络中的要素具有 Supported subnetwork name 和 Supporting subnetwork name 属性。这两个属性分别有助于追踪容器或结构要素支持的子网和支持内容要素的子网。
当一个要素参与多个子网时,Subnetwork name、Supported subnetwork name 和 Supporting subnetwork name 属性将与每个子网名称连接在一起。例如,连接多个子网的边界要素通过串联由两个冒号分隔的子网名称以进行更新(例如,subnetwork1::subnetwork2)。
更新子网过程可确保子网要素的子网名称一致。 将针对不一致生成错误: 以下情况概述了可能遇到错误的情况:
不一致子网 - 如果子网具有多个可遍历的子网控制器且子网名称属性不匹配,则可以认为子网不一致。 例如,在具有五个子网控制器的网格网络中,其中四个子网源的子网名称是正确的,而第五个子网源的名称则不同。 如果在更新子网时发现子网不一致,则更新子网工具会返回警告并生成错误。 系统将返回被发现不一致的特定子网名称,并可使用修改子网控制器窗格和 Subnetworks 表进行检查。 此外,系统将为子网名称不一致的子网控制器创建错误。
不相交子网 - 对于分区域网络,具有子网名称相同且不可遍历的控制器的子网将被视为不相交子网。 更新子网时,如果子网定义不允许出现不相交子网,则会在出现不相交子网时生成错误。 此设置可在层的子网定义中进行定义。 检查网络属性以查看特定域网络的层子部分。
如果发现任何相邻子网存在不一致,则在更新过程中会返回警告,其中列出存在冲突的子网名称。 要确定解决该警告的方法,可使用修改子网控制器窗格和 Subnetworks 表对上述相邻子网进行检查。 在对相邻子网进行编辑后,可以再次运行更新子网操作。
有关详细信息,请参阅子网。
“已连接”属性
线、设备和交汇点要素类中的每个要素,以及域网络的交汇点对象和边对象表中的每个对象都包含一个 Is connected 属性。此属性可通过维护有关孤立网络要素和对象与子网控制器连通性的信息来帮助识别这些要素和对象。创建要素时,无论该要素的连通性如何,Is connected 属性均设置为未知。根据执行的操作,系统会针对网络要素修改此属性。
更新子网时,Is connected 属性将根据要素的连通性修改为子网控制器;该过程基于层或子网名称参数(在更新子网地理处理工具中指定)。
要了解详细信息,请参阅已连接属性。
Is dirty 属性
Is dirty 属性用于追踪 Subnetworks 表和 SubnetLine 要素类中的子网状态,并且会影响网络逻辑示意图的一致性。 Is dirty 的此状态主要通过禁用、启用和验证网络拓扑工具以及更新子网操作进行管理。 有关详细信息,请参阅子网生命周期。
管理 IsDirty 选项是更新子网策略的一个组件,并作为层的子网定义的一部分进行配置。 此选项允许您绕过管理 Subnetworks 表和 SubnetLine 要素类中的 Is dirty 属性。 如果将层配置为不管理 Is dirty 属性,则可以在默认版本中使用更新子网操作以从默认版本的 Subnetworks 表中删除行,其中 Is deleted 属性设置为 true。
注:
如果没有为层定义任何子网控制器,则将禁用管理 IsDirty 选项。
有关子网状态和 Is dirty 属性的详细信息,请参阅子网状态。
汇总、传播和属性替换
汇总可在子网定义的子网追踪配置中进行配置,并在子网更新过程中进行更新。 更新子网时,该工具会将汇总结果写入汇总属性的 SubnetLine 要素类中。 此外,如果已对替换或传播程序进行了配置,则在更新子网时会将其考虑在内。
更新子网策略
在运行更新子网过程时,系统将提供一些选项,用于控制要更新的网络要素以及在地理数据库中执行编辑内容的方式。 使用设置子网定义工具,将这些选项作为更新子网策略部分中层级子网定义的一部分进行配置。
查看您的工作流,并确定是否需要更改默认更新子网策略。 更新结构网络容器和更新域网络容器选项可以在子网定义中进行修改,以免受支持的子网名称字段出现结构和域网络容器超载问题。 这在嵌套包含的情况下非常有用。 如果有工作流要求在更新子网过程中对属性编辑生成地理数据库事件,则可以将该层的子网定义配置为使用事件作为默认版本的编辑模式。
用于设置更新子网策略的选项如下:
- 管理 IsDirty - 指定更新子网过程是否将更新 Subnetworks 表和 SubnetLine 要素类中的 IsDirty 属性。 这还会影响网络逻辑示意图的一致性以及用于从 Subnetworks 表移除已删除控制器的方法。
- 更新结构网络容器 - 指定更新子网进程是否将更新结构要素的受支持的子网名称属性。 此选项默认为选中。
- 更新域网络容器 - 指定更新子网进程是否将更新域网络容器的受支持子网名称属性。 此选项默认为选中。
默认版本的编辑模式和指定版本的编辑模式 - 在更新子网过程中,对子网要素进行了多种属性编辑。 编辑模式确定如何执行属性编辑。 可使用两个选项控制此行为:有事件和无事件。
- 无事件 - 这是默认版本和指定版本的默认值。 使用此选项时,将以直接写入的方式执行编辑。 通过以直接写入的方式执行这些属性编辑,可绕过地理数据库级别下更新要素链接的注记的所有事件,或者在插入或更新触发事件时评估属性规则集。
注:
将此选项与默认版本配合使用时,子网中的所有要素和对象都会更新。 在指定版本中,基于版本化工作流性能考虑,更新仅限于在版本中编辑的要素和对象。
- 有事件 - 该选项还会触发地理数据库级别下更新项目的事件,例如要素链接的注记、编辑者追踪或在插入或更新触发事件时评估属性规则集。 在默认版本和指定版本中,子网中的所有要素和对象都会更新。
注:
根据与数据配合使用的属性规则和注记类的数量,此选项可能会对性能产生不利影响。
以下示例说明了使用默认指定版本的编辑模式(即无事件)的情况下,创建线后在 RMT001 子网的指定版本中运行更新子网的影响。 请注意,仅针对版本中编辑的要素更新子网名称。
以下示例说明了在默认版本或指定版本中运行工具,且指定版本的编辑模式设置为有事件的情况下,创建线后在 RMT001 子网上运行更新子网的影响。 请注意,虽然只编辑了一个要素,但子网中的所有要素都将更新为子网名称。
- 无事件 - 这是默认版本和指定版本的默认值。 使用此选项时,将以直接写入的方式执行编辑。 通过以直接写入的方式执行这些属性编辑,可绕过地理数据库级别下更新要素链接的注记的所有事件,或者在插入或更新触发事件时评估属性规则集。