第8页
第4排
欢迎使用FME for smallworld 5教程。本文描述了如何在FME中使用smallworld 5 join字段。FME可以读取不同类型的连接字段。FME还可以读取中间联接表,例如,电气.int你看!供应点客户。因此,从smallworld导出时,可以重建更复杂的连接。
在小世界的地理信息系统中,有些字段并不总是可见的,它们必须是可见的,以便FME能够读取字段。连接字段通常不可见。使用smallworld ace应用程序使您需要访问的字段对FME可见。
fme smallworld 5编写器可以为基于文本的联接字段和外键字段导入联接字段。不支持其他类型的联接字段,请参阅GE Smallworld文档: Smallworld FME翻译文档-翻译smallworld rwos的字段-join字段(您需要从GE SupportCentral获得登录名)。您可能需要使用管理ACE应用程序使一些字段可见,以便FME编写器可以访问它们。
FME可以加载简单的连接。有三种类型的联接可以表示:
您将使用FME数据检查器查看更复杂的联接表。让我们看看下面的表及其相关的联接表:
上面的图片来自电力网络的小世界案例。客户和供应点有一个连接表。
1)FME数据检查员
启动FME数据
选择文件>打开数据集。
输入读卡器格式参数
读卡器格式: | 小世界4/5 |
坐标系: | OSGB-GPS-2015标准 |
2)输入数据库连接参数
单击参数按钮并输入smallworld数据库连接参数:
服务器主机: | 本地服务器 |
服务器端口: | 3万 |
服务: | FMENO工厂 |
用户名: | (空白) |
密码: | (空白) |
3)选择约束
仍在参数对话框中,选中“公开内部表”。
单击表列表浏览按钮。
选择以下每种功能类型:
内景!对象是中间联接表。
单击“确定”关闭“选择要素类型”对话框。
取消选中“使用搜索信封”。
4)检查结果
在数据检查器表视图中,您应该看到所有选定的对象。这个电气.int你看!供应点客户是客户和供应点的联接表。
您可以在Workbench中使用相同的步骤来创建一个工作区,该工作区通过int读取并保留客户和供应点对象之间的关系!桌子,加载到,说,ESRI地理数据库关系功能类。
在这个例子中,您将为公司和Office加载一些新功能并建立关系。这是一种1:N关系,公司作为父表,办公室作为子表。
如上所述,要导出联接字段,您可能需要使字段在管理ACE应用程序中可见。在下面的示例中,公司对象使“ID”字段可见,而Office对象使“Office ID”和“Company ID”字段可见。这些字段不会在默认的剑桥数据库中公开。
在smallworld中这样做:您将使用管理应用程序打开“ace配置”工具。使用“编辑-对象属性”菜单更改相应的属性,包括视野。
第一,我们将向smallworld数据库添加新的公司记录:
1)打开工作区
启动FME工作台并打开工作区:smallworld9a-完成.fmwt.工作区从mapinfo mif文件中读取公司信息,并在“fme_offices”选项中写入Office对象。
2)运行工作区
运行工作区。它将在fme_offices选项中向Company对象添加新记录。
公司对象上没有几何图形,因此请检查smallworld资源管理器(工具菜单->资源管理器…)中的结果。导航到“地理信息系统>非拓扑对象>公司”并浏览所有功能–不要忘记切换到地理信息系统版本FME U办公室
你可以看到没有与“安全软件公司”相关的办公室。亚搏在线
3)打开工作区
打开此练习的第二个工作区:smallworld9b-完成.fmwt
这有点有趣。此工作区添加新的Office记录,并使加入公司对象。
把办公室和公司联系起来,您必须将公司主键作为外键添加到Office对象中。office表上的外键是“company_id”,它必须与company表上的主键“id”匹配。
在工作区中:
书签“office location/annotation geometries”中的转换器创建具有位置和注释几何的Office功能,和之前的练习一样。
smallworld 5 reader:此工作区使用smallworld reader来读取公司记录。您还可以向读卡器添加谓词,以限制哪些公司记录被读取回。
特征合并:将办公对象加入关联公司。我们可以用公司名称加入。Office对象现在具有可以用作外键的公司“ID”。
attributeCreator:将“id”字段(即公司主键)重命名为“company_id”,后者是Office子对象上的外键。
4)运行工作区
运行工作区。它将在fme_offices选项中的office表中添加新记录。
在smallworld explorer中检查结果–不要忘记切换到gis版本fme_offices。
对于公司表,你应该看到原来的安全软件公司,亚搏在线但它现在应该显示相关办事处的数量:
如前所述,您可能需要使用管理ace工具使一些联接字段可见。
总之,要建立简单的联接关系,需要在子表上设置外键,以匹配父表的主键。
?2019安全亚搏在线软件公司|法律