span8
span4
该FeatureWriter允许您在您的工作流程写在任何时候的数据,不仅在工作空间与“传统”的作家的结束。亚搏在线这让你有机会到后处理的结果。这个例子将覆盖使用FeatureWriter,其中包括后处理和整合第三方工具的潜在途径之一。
有关FeatureWriter transformer的概述,请参阅博客文章:FME 2016:特稿作家变形金刚
在传统的工作流程中,FME读取数据,亚搏在线并使用读取器和写入器的特征类型写入 - 见附件中的工作区:FeatureWriter_Begin.fmwt。此工作区从CAD文件中读取,转换和验证数据,然后将结果写入GeoPackage数据库。
注意:虽然这个例子写的是地理打包数据库,但它适用于任何空间数据库,如Esri地理数据库、SQL Server、Oracle空间、PosGIS等。
这种方法具有额外的处理只有限范围内的所有数据已经写入之后。您可以使用Python或TCL关机脚本或数据库写SQL语句之前运行/写之后,但这些方法都有一定的局限性
该FeatureWriter允许写入数据中间的工作流程,然后另外的数据转换为扩展的工作流的可能性亚搏在线。这是非常有用的时候最好是在它被写入后做一些与数据。
这里有一个工作空间内完成的FeatureWriter几种可能性,所有:
以前用脚本或手动完成1.Simple程序:
2.Complex任务,需要使用WorkspaceRunner或FMEServerJobSubmitters链接的工作空间:
3.Notifications到FME服务器
与第三方工具在FME数据转换4.Integrations无需等待新的读者:
这FeatureWriter演示验证CAD数据集和电子邮件的所有功能都被写入后数据验证管理器验证报告。
源的数据可与温哥华市的水网,水管,阀门,消防栓的CAD文件。该数据集包含了一些相关的信息,关于水网络对象的属性
该FeatureWriter_Begin.fmw工作区包括以下基本步骤:
1。读取CAD数据并转换属性
2。验证水网络属性值
3。提取错误消息和失败水网络对象的验证测试
4。编写有效的功能将GeoPackage CADValidationReport表
跑过FeatureWriter_Begin.fmw工作区,并在FME数据检查器中检查得到的地质分布。
你要修改的工作空间:
你可以用FeatureReader替换AutoCAD阅读器。这将允许您预先处理数据,使用SQLExecutor清理数据库表,或者使用外部输入触发读取。在本例中,我们将使用Creator transformer。
1。打开工作空间FeatureWriter_Begin.fmw
2。禁用,但不删除,AutoCAD的读者。
3。添加一个创造者变压器。
4。添加一个FeatureReader选择Autodesk AutoCAD地图3D对象数据格式和AutoCAD DWG文件:CofVWater_small.dwg。配置FeatureReader如下图所示:
在AutoCAD参数对话框中,确保取消选中将块爆炸为实体如下所示:
选择要读取的特征类型下的所有AutoCAD层
5.将输出端口连接到适当的AttributeManager转换器(不是所有的特性类型都需要连接)。
6.通过运行修改后的工作区来测试FeatureReader。如果结果看起来不错,删除AutoCAD阅读器。
7.保存工作空间。
现在,您将向工作空间添加一个功能编辑器,取代“传统的”地理打包编辑器。
1。禁用,但不删除,地质打包作家
2。添加一个FeatureWriter转换器并打开Parameters对话框。配置FeatureWriter参数:
现在我们可以对输出进行一些简单的后处理或验证。例如,可以使用SQLExecutor创建属性或空间索引。在这个工作空间中,您将验证所编写的特性的数量。FME报告编写的特性的数量,但有时这可能与实际插入数据库的特性数量不匹配。如果您正在使用事务,并且其中一个插入失败,就会发生这种情况。您将添加一个SQLExecutor,以在FeatureWriter编写完所有特性之后检查数据库中的记录数量。
1。将检查器转换器添加到FeatureWriter的摘要端口并运行工作区。FeatureWriter的摘要端口输出一个单一的功能,其中列出了所有的功能类型:
在哪里的的名字'是表名吗'数是FME认为它所写的特写的数量。
3。连接一个ListExploder到功能编辑器的摘要端口。选择_feature_type{}列表。这将为编写的每个特性类型生成一个单独的摘要特性。
4。将SQLExecutor连接到listscalder的Elements端口。建立以下查询:
从“@Value(name)”中选择COUNT(*)作为“行”
这将查询数据库并返回'name'属性中每个表的行数。
5.添加一个TestFilter来比较写的特性和写的特性的“count”值。'rows'值返回的SQLExectutor。
6.添加检查器,然后运行工作区并检查结果。
清理
7.最后一步,如果你觉得你所有的修改都是正确的,那就删除原来的AutoCAD阅读器和原来的地质公园编写者,清理你的工作空间。保存您的工作。
附件中的工作区FeatureWriter_Final.fmwt有一些额外的想法,你可以调查:
JSON读者:在最后的工作空间中,我们使用一个JSON阅读器来启动FeatureReader—这将允许您将该工作空间发布到FME服务器,并使用一个目录监视器发布来驱动验证。
DropboxConnector: DropboxConnector允许你移动地理打包数据库文件到dropbox文件夹。如果您没有dropbox帐户,您需要禁用此转换器。或者试试其他的连接器:GoogleDriveConnector, OneDriveConnector, BoxConnector。
写信人:最后的工作空间包括一个电子邮件,它将把验证地理打包数据库文件发送给一个朋友。您需要使用自己的电子邮件帐户信息配置电子邮件发送器,或者禁用转换器以避免错误。
请注意:演示工作空间将返回一个警告,如果您的电子邮件帐户没有正确配置的电子邮件。必要的配置包括配置SMTP对于Gmail,生成a应用特定密码如果使用两步验证。DropboxConnector也是如此。如果你没有合适的帐户,只是禁用这些变压器
©2019安全亚搏在线软件公司|法律