使用迭代表

摘要

迭代表工具迭代工作空间中的表。

使用“迭代表”迭代器的最终模型

在此工作流中,您将创建模型以对 Excel 文件(五个工作表)中的每个工作表进行迭代,并将这些工作表转换为与 Excel 工作表同名的文件地理数据库表。 迭代器输出参数名称将用作导出表工具的输出表参数中的行内变量。 导出表工具的输出将连接到采集值工具,该工具将采集每次迭代的输出并创建多值输出。

打开工程

下载工程以在此工作流中使用。 该工程包括输入数据、一个输出地理数据库和一个完成的模型。

  1. 打开使用迭代表概览页面。
  2. 单击页面右侧的下载
  3. 右键单击下载的 IterateTables.zip 文件,然后将其提取到一个方便的位置,例如 C:\Temp
  4. 在提取的文件夹 IterateTables 中,双击 ArcGIS Pro 工程文件 IterateTables.aprx
  5. 目录窗格中浏览数据,并在必要时单击工程选项卡。 浏览至文件夹 > IterateTables

    IterateTables 文件夹中包含一个将用作模型输入的 Excel 文件。

    该模型的输出将被写入 ScratchTable.gdb 地理数据库。

添加工具

要创建模型并向模型添加工具,请完成以下步骤:

  1. 目录窗格中,浏览至文件夹 > IterateTables > MyProjectTools
  2. 右键单击 MyProjectTools,然后单击新建。 选择模型以创建并打开模型。
  3. 添加迭代表工具。
    1. 单击 ModelBuilder 选项卡。
    2. 插入组中,单击迭代器 迭代器
    3. 迭代器列表中,单击迭代表

    添加“迭代表”工具

    “迭代表”迭代器随即会添加到模型中。 由于未提供任何参数值,因此迭代器为灰色。

  4. 添加收集值工具。
    1. 单击 ModelBuilder 选项卡。
    2. 插入组中,单击实用程序 实用工具
    3. 实用程序列表中,单击收集值工具。

    添加“收集值”工具

    收集值工具随即会添加到模型中。

  5. 添加导出表工具。
    1. 单击模型内部,然后输入导出表以打开向模型添加工具对话框。
    2. 搜索导出表工具。
    3. 双击导出表工具并将其添加到模型。

指定工具参数并连接工具

将工具添加到模型后,您必须为每个工具指定参数。

  1. 双击迭代表工具以打开迭代器的对话框。
    1. 目录窗格中,浏览至文件夹 > IterateTables
    2. DataSheets.xlsx 文件拖动到工作空间参数中。
    3. 将其余参数留空,然后单击确定

    “迭代表”工具对话框

    工作空间随即作为模型变量添加到模型(深蓝色椭圆)并更改迭代器的颜色,指示已提供了所需参数且已做好运行准备。

  2. 右键单击 DataSheets.xlsx 变量(深蓝色椭圆),然后单击重命名。 键入 Excel Sheets 作为新名称。 使用相同的步骤将迭代器表输出(绿色椭圆)重命名为 Table

    建议将输入和输出变量名称重命名为更有意义的名称,而非使用默认的变量名称。

  3. 双击导出表工具以打开工具的对话框。 对于输入表参数,单击下拉箭头,然后选择 Table 模型变量。 对于输出表参数,输入 %Name%。 保留其余参数的默认设置,然后单击确定以关闭对话框。

    “导出表”工具对话框

    模型运行时,迭代器输出参数(浅蓝色椭圆)的名称 %Name% 将被替换为变量的值,例如工作表名称 Birds2007、Birds2008 等等。

  4. 将鼠标悬停在导出表工具输出变量(绿色椭圆)上方。 单击并拖动以绘制连接收集值工具的连接线。 松开鼠标后,单击弹出菜单中的输入值
  5. 重命名所有模型变量,如完成的模型中所示。
  6. 要排列模型元素,请单击 ModelBuilder 选项卡上的自动布局按钮 自动布局,然后单击适应窗口大小按钮 适应窗口大小 以将布局最大化到模型窗口的大小。

运行模型

请完成以下步骤以运行模型:

  1. 右键单击收集值工具的输出,然后单击添加至显示

    模型运行后,输出将添加到地图中。

  2. 单击 ModelBuilder 选项卡上的保存按钮 保存 以保存模型。
  3. 单击 ModelBuilder 选项卡上的运行按钮 运行 以运行模型。

    该模型将对 Excel 文件中的五个工作表进行迭代,并在 ScratchTable.gdb 地理数据库中创建五个表。

    “迭代表”模型的输出
  4. 关闭模型和 ArcGIS Pro