Skip to main content

更新子网

更新子网以确保属性、网络要为最新且在网络中有效。 更新子网也会暴露子网中的错误和不一致,例如无效要素、子网不相交或不一致、子网控制器数量不正确或者尚未验证的脏区。 可以在 更新子网 工具或 查找子网 窗格中运行更新子网操作,以更新在进行编辑和验证后标记为脏的子网。

在创建子网以及在对子网中的要素和对象进行编辑后验证网络拓扑时,子网将被标记为脏。 如果更新子网时未出现错误,则该子网将被标记为清洁。 在更新子网操作期间 验证一致性失败 或发现 子网错误 时,操作将失败,子网将标记为无效。 这将由 子网表 中的 Is dirty 属性进行追踪,并显示在 查找子网 窗格中每个子网的 Status 列中。 有关详细信息,请参阅 子网生命周期

更新子网操作可细分为以下步骤:

  • 识别并验证子网控制器的一致性。

  • 执行子网追踪。

  • 验证追踪结果以确定是否发现无效要素或对象。

  • 更新网络要素上的子网名称属性、已连接和传播字段属性。

  • 在子网的 SubnetLine 要素类中创建或更新记录。

  • 更新子网表中关联的子网控制器记录。

  • 创建或更新子网系统逻辑示意图。

检查并验证网络属性

运行更新子网操作时,将验证子网控制器并执行子网追踪以确定是否发现无效要素或对象。 层的子网定义定义了子网的行为要求以及子网中有效要素和对象的构成。

以下各小节中介绍了有关更新子网时所检查层属性的相关信息和子网更新时在网络要素上跟新的属性字段。

有效要素和对象

正如子网定义中所指定的,每个类的特定资产组和资产类型被定义对于域网络中的每个层均有效。 通过检查子网中可遍历要素的属性更新子网时,可以发现违反子网定义的要素和对象。 如果在更新子网时发现无效网络要素,则会创建 错误 并将该子网标记为无效。 有关特定于更新子网的错误的详细信息,请参阅 更新子网错误

更新子网时,不会为连接多个子网的边界要素评估子网定义的有效设备属性。 边界要素是充当两个子网之间屏障的设备,或参与多个子网的子网控制器,例如,供水网络中的泵接收一个子网中的压力并增加另一个子网中的压力。

在每个层的子网定义中指定了以下有效要素和对象:

  • 有效设备

  • 有效的设备子网控制器

  • 有效线

  • 有效交汇点

  • 有效边对象

  • 有效交汇点对象

  • 有效交汇点对象子网控制器

不一致和不相交子网

Subnetwork name 属性用于追踪网络要素属于的子网。 在此属性字段中填充的值来自设置为子网控制器的要素的子网名称。 此外,域网络中的要素具有 Supported subnetwork nameSupporting subnetwork name 属性。 这两个属性分别有助于追踪容器或结构要素支持的子网和支持内容要素的子网。

有关详细信息,请参阅 支持的子网名称支持的子网名称

更新子网过程可确保子网中要素的子网名称一致。 将针对不一致生成错误。 以下情况概述了可能遇到错误的情况:

  • 不一致子网 - 如果子网具有多个可遍历的子网控制器且 Subnetwork Name 属性不匹配,则可以认为子网不一致。 例如,在具有五个子网控制器的网格网络中,其中四个子网源的子网名称是正确的,而第五个子网源的名称则不同。 如果在更新子网时发现子网不一致,则 更新子网 工具会返回警告并对有不一致子网名称的子网控制器生成 错误 要素。 系统将返回被发现不一致的特定子网名称,并可使用 修改子网控制器 窗格和 Subnetworks 表 进行检查。

  • 不相交子网 - 对于分区域网络,具有子网名称相同且不可遍历的控制器的子网将被视为不相交子网。 更新子网时,如果子网定义不允许出现不相交子网,则会在出现不相交子网时生成错误。 此设置可在层的子网定义中进行定义。 检查 网络属性 以查看特定域网络的 子部分。

如果在检查边界要素的一致性时发现任何相邻子网存在不一致,则在更新过程中会返回警告,其中列出存在冲突的子网名称。 要确定解决该警告的方法,可使用 修改子网控制器 窗格和子网表对相邻子网进行检查。 在对相邻子网进行编辑后,可以再次运行更新子网操作。

有关详细信息,请参阅 子网

更新子网中的要素和对象

当在默认版本中更新子网时,将为子网中的所有要素和对象更新几何、 子网名称属性Is connected 属性 以及 替换传播 值。 如果使用默认编辑模式选项在指定版本中执行更新子网络操作,则这些相同的更新仅限于要素和在版本中编辑的对象。

抢先版本:

对于版本 4 或更高版本的公共设施网络,可以通过 设置子网定义 地理处理工具中的 指定版本的编辑模式 参数修改作为更新子网策略一部分的指定版本的默认事件行为。

了解有关在更新子网策略中编辑模式的详细信息

更新到 SubnetLine 要素类和子网表

与编辑子网中的要素和对象一样,运行更新子网操作时也会修改 SubnetLine 要素类子网表

如果层的子网定义定义了 SubnetLine 要素类的聚合线或配置了汇总,则更新操作会在 SubnetLine 要素类中创建或更新子网的记录,并更新 Last update subnetwork 属性、 Is dirty 属性以及编辑者追踪属性。 汇总 可在 子网追踪配置 中进行配置,也可更新并写入到汇总属性中。 成功的更新操作会将子网的状态更改为干净 (isDirty = false)。 如果更新操作失败,则仅更新编辑者追踪字段。

在子网表中,关联子网控制器的 Last update subnetworkIs dirty 和编辑者追踪属性也会更新。 成功的更新操作会将表中所有控制器的状态更改为干净 (isDirty = false)。 如果更新操作失败,则仅更新编辑者追踪字段。

Is dirty 属性

ISDIRTY 属性(别名 Status )用于追踪 子网表SubnetLine 要素类 中的子网状态,并且会影响 网络逻辑示意图的一致性Status 主要通过更新子网操作以及禁用、启用和验证网络拓扑工具进行管理,并使用层子网定义的 管理 IsDirty 选项 进行配置。

有关详细信息,请参阅 子网生命周期

子网追踪配置

设置子网定义 工具的 子网追踪配置 参数类别中的 包含容器包含内容包含结构 参数有助于管理在更新子网操作期间如何管理 Supported subnetwork nameSupporting subnetwork name 字段。

包含容器 参数支持在工具的 更新子网络策略 参数类别中使用 更新结构网络容器更新域网络容器 参数以分别管理结构网络和域网络中要素的 Supported subnetwork name 字段。 当选中 包含内容 参数时,将针对域网络中的内容要素更新 Supporting subnetwork name 字段,将在更新子网操作期间的追踪运行中返回这些要素。 同样,当选中 包含结构 参数时,将针对结构网络中与追踪结果要素存在结构附着关联的要素更新 Supported subnetwork name 字段。

更新子网策略

在运行更新子网过程时,除了追踪配置中的选项之外,系统还会提供一些选项,用于控制要更新的网络要素以及在地理数据库中执行网络要素的编辑内容的方式。 使用 设置子网定义 工具,将这些选项作为 更新子网策略 部分中层级子网定义的一部分进行配置。

查看您的工作流,并确定是否需要更改默认更新子网策略。 可以在子网定义中修改 更新结构网络容器更新域网络容器 参数,以控制是否更新容器上的 Supported subnetwork name 属性。 必须选中该工具的 子网追踪配置 参数类别中的 包含容器 参数,才能启用其他参数。 这在存在嵌套包含时非常有用。

如果在更新子网过程中进行属性编辑时存在需要触发地理数据库行为的工作流,则可以将编辑模式配置为使用 事件 编辑模式。

更新子网策略 参数类别的参数设置如下:

  • 管理 IsDirty - 指定子网表中的 Is dirty 属性是否由更新子网操作管理。 这还会影响网络逻辑示意图的一致性以及用于从 Subnetworks 表移除已删除控制器的方法。 启用此选项时, IsDirty 属性由更新子网操作管理,并将在 子网表SubnetLine 要素类 中得到更新。

    注:

    如果层配置为不管理 Is dirty 属性,则无论更新子网操作成功还是失败,子网都将始终显示为“脏”。

    如果未选中此参数,则可以在默认版本中使用更新子网操作以从默认版本的子网表中删除行,其中 Is deleted 属性设置为 true。

    如果没有为层定义任何子网控制器,则将隐藏 管理 IsDirty 参数。

    有关子网状态和 Is dirty 属性的详细信息,请参阅 子网状态

  • 更新结构网络容器 - 指定更新子网进程是否将更新结构要素的 受支持的子网名称 属性。 此参数默认处于选中状态。

  • 更新域网络容器 - 指定更新子网进程是否将更新域网络容器的 受支持子网名称 属性。 此参数默认处于选中状态。

  • 默认版本的编辑模式指定版本的编辑模式 - 在更新子网过程中,对子网要素进行了多种属性编辑。 编辑模式确定如何执行属性编辑。 可使用两个选项控制此行为: 有事件无事件

    • 无事件 - 这是默认版本和指定版本以及在单用户部署中工作时的默认值。 在企业部署中使用此编辑模式时,更新子网期间不会遵守地理数据库合同。 这意味着更新要素时,事件不会触发编辑者追踪、属性规则或相关对象的更新。 这也意味着对没有事件的要素所做的更改不会写入地理数据库历史记录以供以后查看。 此方法用于优化更新子网的性能。

      • 在默认版本或单用户部署中使用此编辑模式时,子网中所有要素和对象的子网名称和传播值都会更新。

      • 在指定版本中使用此编辑模式时,仅针对用户在版本中编辑的要素更新子网名称和传播值。

    • 有事件 - 在更新默认和指定版本中的子网以及在单用户部署中工作时,此选项用于触发地理数据库行为。 使用此编辑模式,游标更新用于更新操作遍历的所有要素的子网名称和传播值。

      使用此选项需要遵守所有地理数据库合约。 这意味着属性规则会触发并重置其验证状态,更新编辑者追踪,更新适用的相关对象,并将更改记录为地理数据库历史记录中的实际编辑。 当需要在更新子网操作期间触发属性规则时,应考虑此编辑模式。

      注意:

      此选项可能会对性能产生不利影响,并且当数据中存在大量属性规则或相关对象(例如与要素关联的注记类)时,不应将其与较大的子网一起使用。

      默认版本的编辑模式 配置为使用 有事件 时,在更新子网操作期间,将对默认版本获取 共享锁 ,并在操作期间保持该锁。 当运行批量更新子网操作时,这一点需要特别注意,因为这将阻止协调操作在此期间获得 独占锁

    以下示例说明了使用默认 指定版本的编辑模式 值(即 无事件 )的情况下,创建线后在 RMT001 子网的指定版本中运行更新子网的影响。 仅针对版本中编辑的要素更新子网名称。

    在使用“指定版本的编辑模式”默认选项“无事件”的指定版本中运行更新子网操作。

    以下示例说明了在默认版本或指定版本中运行工具,且 指定版本的编辑模式 设置为 有事件 的情况下,创建线后在 RMT001 子网上更新子网的影响。 虽然仅编辑了一个要素,但子网中的所有要素都将更新为子网名称。

    在默认版本(“有事件”和“无事件”)和使用“有事件”的命名版本中运行更新子网操作。

    注:

    某些参数要求最低 公共设施网络版本 。 有关详细信息,请参阅 设置子网定义 工具。