斯潘8
斯潘4
在本教程中,您将学习如何使用表达式评估器以及如何使用属性值管理器.
注:既然你是使用面向公共的数据库,有时可以覆盖和/或修改表。如果你的翻译产生了意想不到的结果,见重置PostGIS培训数据库文章.或者,您可以下载提供的文件,并用适当格式的读卡器替换PostGIS读卡器。
在第一个练习中,您将计算10年内的人口变化。这需要在两个FME特性属性之间进行一个简单的数学运算,这些特性属性可以使用ExpressionEvaluator执行。
注意:这里介绍的场景可能与预期的实际应用程序不同。由于使用面向公众的数据库的挑战,在这里,您将从邻里表中读取数据,并最终写入名为邻里pop的表中。你可能会注意到邻居流行已经存在于预期的数据模型中,因为其他用户也会运行相同的工作区。事实上,您可能会从邻域中读取数据,然后使用功能类型处理选项“使用现有”更新现有表。
注意:当需要清空表并更新数据库架构时,将使用DROP和CREATE。例如,Drop和Create用于删除表结构,可能添加或删除列,更改数据类型,等。有关编写器功能类型参数(如表处理)的详细信息,见文档.
注意:自动属性定义是工作台自动定义属性列表时,取决于连接的读卡器功能类型。此外,每当属性发生更改(即更名,远离的,等)在工作区。有关用户属性和属性定义的详细信息,见博士学位论文.
Featureholder在邻里表中读取和存储这些功能。一旦所有功能都存储好了,现有表已关闭,允许FME删除现有表并创建新表。
表达式评估器对包含FME特征函数的表达式执行数学计算,字符串函数,数学函数,和数学运算符。在这种情况下,我们将用它来确定2001年至2011年每个社区的人口变化。有关构造属性的详细信息,见桌面基础课程手册.
FME允许您通过FME功能属性列表访问连接到ExpressionEvaluator的任何数据集的属性。为了计算人口变化,从2011年的人口中减去2001年的人口——这两个都是表中存储的属性。
@值(totalpopulation2011)-@value(totalpopulation2001)
翻译成功后,您的表将有一个新列,其中包含每个邻居的人口变化。通过选择编写器并单击在选定编写器时出现的快捷菜单中的“检查”按钮,可以查看新表。
在这个练习中,您将使用attributeValueMapper根据Maintainer属性的值分配值。attributeValueMapper将查找Maintainer属性的源值,并将目标值(部门代码)分配给新字段。这将允许您使用部门代码作为主键将表连接到饮水机表。
注意:这里介绍的场景可能与预期的实际应用程序不同。由于使用面向公众的数据库的挑战,在这里,你将阅读饮水机的表格,并最终写入名为“饮水机”的表格。你可能会注意到饮水机剩余已经存在于预期的数据模型中,因为其他用户也会运行相同的工作区。事实上,您可能会从饮水机中读取信息,然后使用功能类型处理选项“使用现有”更新现有表。
有关创建翻译的详细信息,见桌面基础课程手册.
注意:当需要清空表并更新数据库架构时,将使用DROP和CREATE。例如,Drop和Create用于删除表结构,可能添加或删除列,更改数据类型,等。有关编写器功能类型参数(如表处理)的详细信息,见文档.
注意:自动属性定义是工作台自动定义属性列表时,取决于连接的读卡器功能类型。此外,每当属性发生更改(即更名,远离的,等)在工作区。有关用户属性和属性定义的详细信息,见文档.
功能持有者在饮水机桌上阅读和存储这些功能。一旦所有功能都存储好了,现有表已关闭,允许FME删除现有表并创建新表。
在重新映射属性值之前,您首先需要知道我们正在处理的属性的值。注意:Maintainer属性的值是Engineering或Parks。
在表视图中,请注意,maintainer属性的值是engineering或parks。
预览数据集后,关闭FME数据检查员并返回到FME工作台。
我们要创建一个名为deptcode的新属性,并根据maintenainer属性分配值:
因为您知道Maintainer列中只有两个属性是“工程”和“公园”,您可以简单地将这些值输入到值映射中的源值中。
确保您的价值图与下面的屏幕截图类似,然后单击“确定”接受更改并关闭attributeValueMapper参数
运行翻译后,您的表将有一个新列,其中包含工程和公园部门的部门代码。通过选择编写器并单击在选定编写器时出现的快捷菜单中的“检查”按钮,可以查看新表。
本教程中使用的数据源于温哥华市,不列颠哥伦比亚省。它包含根据开放政府许可证(温哥华)获得许可的信息。
?2019安全亚搏在线软件公司|合法的