升级 Indoors 数据库 (Indoors)

摘要

通过创建或更新模式项来升级现有 Indoors 工作空间,使其符合最新的 ArcGIS Indoors 信息模型模式。

使用情况

  • 使用此工具更新使用创建 Indoors 数据库创建室内数据集创建室内网络数据集工具创建的现有 Indoors 工作空间模式,以符合当前版本的 Indoors 模型。

  • 该工具可通过添加要素类、字段、域和域值以及更改某些字段的可归零属性来升级现有 Indoors 工作空间。

    注:

    此工具会修改输入数据库。 如果需要以前的版本作为参考,请创建 Indoors 工作空间的备份副本。

  • 如果数据库是企业地理数据库,其中的数据以分支版本化要素服务的形式共享,则在工具修改地理数据库的模式之前,必须停止使用任何服务,并禁用模式锁定

  • ArcGIS Enterprise 中,任何使用共享实例类型的服务(如服务层)都必须在工具修改模式前删除。

  • 该工具通过匹配项目名称和 Indoors 模型来搜索模式项目。 未找到的模式项目将作为新项目创建。 如果您对输入 Indoors 工作空间中的任何要素类、表、字段和域进行了重命名,则必须将其还原为原始名称才能由工具进行升级。

  • 该工具不会删除输入 Indoors 工作空间中的模式项或自定义属性规则。

  • 输入 Indoors 数据库必须已经存在,且不能为空。

  • 如果数据库中包含室内网络数据集,则该工具将在 Pathways 和 PrelimPathways 要素类中创建 LEVEL_ID 字段(如果字段不存在)。 该工具还将尝试为建筑物内的任何Pathways 和 PrelimPathways 要素填充 LEVEL_ID 字段值。

    注:

    如果输入数据库是企业地理数据库,其中包含使用构建网络工具构建的网络数据集,则可通过升级室内数据库工具添加 LEVEL_ID 字段,但由于用于构建网络的参与要素类上有锁定,因此该字段将不会填入值。

    要为 Pathways 和 PrelimPathways 功能填充 LEVEL_ID 值,请在下次更新网络时运行此工具,然后再构建网络。

  • 如果数据库包含 Indoors 验证属性规则,则可以在运行工具时选中升级属性规则参数,以便根据 Indoors 模型的最新版本更新现有或创建缺失的属性规则。 这是默认设置。

  • 与预订要素类相关的安全属性规则将在升级过程中创建或更新,以保证工作区预订的安全性。

    注:

    升级企业地理数据库时,如果选中了升级属性规则参数,则必须启用分支版本控制

    如果选中了升级属性规则,且数据库中已有 Indoors 属性规则,则将启用全局 ID 和编辑器跟踪。

  • 通过为升级室内数据库参数值指定生成模式更改报告,可以生成工具对 Indoors 工作空间所做更改的报告,而无需修改现有模式。 当指定该选项时,会出现以下情况:

    • 输入 Indoors 工作空间不会更新。
    • 生成文本文件报告,记录将添加或升级的要素类、表、字段、域、域值和属性规则列表。
    • 如果输入 Indoors 地理数据库的状态导致无法添加任何模式项,生成的报告将记录相关信息。 例如,如果现有字段的名称相同但数据类型不同,则可能无法将字段添加到要素类中。
    • 如果数据库状态导致工具执行部分升级,生成的报告将记录相关信息。 例如,如果在升级过程中必须将一个不可空字段添加到一个要素类中,那么如果该要素类包含现有数据,则该字段将被添加为可空字段而非不可空字段。
    • 在将升级室内数据库参数设置为生成模式更改报告的情况下运行工具时,不会获取数据库上的独占模式锁。
  • 运行该工具后,刷新数据库级别的内容以查看表的更改,刷新数据集级别的内容以查看要素类的更改。

  • 如果现有 Indoors 工作空间是一个企业地理数据库,在分支版本化要素服务共享的数据集中有要素类,那么该工具在同一数据集中创建的任何新要素类也需要启用分支版本化。

参数

标注说明数据类型
输入室内数据库

现有地理数据库包含由创建室内数据库创建室内数据集工具创建的 Indoors 模型模式项的。 该参数可接受文件地理数据库或企业地理数据库。

Workspace
升级属性规则
(可选)

指定是否创建或更新验证属性规则,以便在 Indoors 质量控制工作流中使用。 如果输入 Indoors 数据库是企业地理数据库,则必须启用分支版本控制。

  • 已选中 - 如果数据库已有 Indoors 属性规则,将创建验证属性规则,或用 Indoors 模型中最新版本的属性规则覆盖。 这是默认设置。
  • 未选中 - 不会创建或更新验证属性规则。
Boolean
升级 Indoors 数据库
(可选)

指定输入 Indoors 数据库是否将根据模式更改进行升级,或生成一份报告,说明输入 Indoors 数据库可能发生的模式更改。

  • 升级数据库输入 Indoors 数据库将升级。 这是默认设置。
  • 生成方案变更报表将生成一份文本文件报告,其中包含在升级过程中将对输入 Indoors 数据库进行的模式更改列表,以及可能导致模式无法更新的任何问题。 输入 Indoors 数据库将不会升级。
String

派生输出

标注说明数据类型
升级后的室内数据库

工具升级的 Indoors 地理数据库。

Workspace

arcpy.indoors.UpgradeIndoorsDatabase(in_workspace, {upgrade_attribute_rules}, {upgrade_indoors_database})
名称说明数据类型
in_workspace

现有地理数据库包含由创建室内数据库创建室内数据集工具创建的 Indoors 模型模式项的。 该参数可接受文件地理数据库或企业地理数据库。

Workspace
upgrade_attribute_rules
(可选)

指定是否创建或更新验证属性规则,以便在 Indoors 质量控制工作流中使用。 如果输入 Indoors 数据库是企业地理数据库,则必须启用分支版本控制。

  • UPGRADE_ATTRIBUTE_RULES如果输入数据库中已有 Indoors 属性规则,则将创建或更新验证属性规则。 这是默认设置。
  • NO_UPGRADE_ATTRIBUTE_RULES不会创建或更新验证属性规则。
Boolean
upgrade_indoors_database
(可选)

指定输入 Indoors 数据库是否将根据模式更改进行升级,或生成一份报告,说明输入 Indoors 数据库可能发生的模式更改。

  • UPGRADE_DATABASE输入 Indoors 数据库将升级。 这是默认设置。
  • GENERATE_REPORT将生成一份文本文件报告,其中包含在升级过程中将对输入 Indoors 数据库进行的模式更改列表,以及可能导致模式无法更新的任何问题。 输入 Indoors 数据库将不会升级。
String

派生输出

名称说明数据类型
out_workspace

工具升级的 Indoors 地理数据库。

Workspace

代码示例

UpgradeIndoorsDatabase 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 UpgradeIndoorsDatabase 函数。

arcpy.indoors.UpgradeIndoorsDatabase('C:\SampleGDB\Indoors_2_5.gdb','UPGRADE_ATTRIBUTE_RULES','UPGRADE_DATABASE')
UpgradeIndoorsDatabase 示例 2(独立脚本)

以下独立脚本演示了如何使用 UpgradeIndoorsDatabase 函数。

import arcpy
arcpy.indoors.UpgradeIndoorsDatabase()

#Set the input Indoors database and parameter settings.
input_workspace = 'C:\SampleGDB\Indoors_2_5.gdb'
upgrade_attribute_rules = True
execute_mode = 'UPGRADE_DATABASE'

#Run the tool with selected parameters.
arcpy.indoors.UpgradeIndoorsDatabase(input_workspace, upgrade_attribute_rules, execute_mode)

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 需要 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps
  • Standard: 需要 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps
  • Advanced: 需要 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps

相关主题