故障排除

数据流

与许多ESF工作区的一个中心问题是,他们没有按照数据流FME工作方式的结构。在FME,分割数据流是相同的复制,以及组合是一样的追加。

如果你想记录的真正合并的属性或特征组合在一起,那么你需要使用相结合的变压器,如集成商,FeatureMergers和加入者,等...

建立与普通按键的关系

一个非常普遍的问题是缺乏使用适当的标识引用间。例如,每次打开都需要一个唯一ESF opening_id和每一个开放的定义是开口的孩子,因此必须同时包含ESF_opening_idESF_opening_definition_id。如果一个开口定义切割块多边形被发送到ESF作家没有参考到父开口,其股的ESF_opening_idopening_definition,那么opening_definition多边形将由ESF验证被拒绝。

这可能是一些记录有重复键。例如,若干切割块可以是相同的开口,在这种情况下,复合键可能是切割块和切割许可证的一部分。在工作区中,您将需要放置一个聚合的变压器,使这些多个切割块可以成为划分为一个开放的定义开放相关的一个总的特征。

不遵守与功能规格

经常有由ESF作家拒绝,因为他们不相关的特征表示文件符合特征(见下架构表)。您可能需要使用FME的属性处理变压器来分析数据以这样的方式,以使其符合。例如,你可以使用一个变压器StringReplacer摆脱空间的一个电话号码,因为ESF结果特征表示规范规定,电话号码必须是十进制(10,0)。

查看/输出测试

尝试使用所述ESF结果读取器检验应用(FME通用查看器或FME数据查验)打开所述XML输出文件。确保您检查验证数据集在阅读器参数。这适用相同的架构检查MOF ESF提交网站适用于网上提交。

试错法

你可能需要做一些分析和重新格式化,以获得元数据成一种形式,ESF会接受。请注意,这往往是一个试错的过程。

运行工作空间,生成XML。再次,尝试用使用ESF结果读取器检验应用(FME通用查看器或FME数据查验)打开所述XML输出文件。确保您检查验证数据集在阅读器参数。

如果失败的话,你可以做到以下几点:

  • 注意行号和错误消息。
  • 在文本编辑器的XML文件,并注意读者发现的问题领域。
  • 引用模式的表在文档中2esf_results_fme_feature_representation.doc在 - 的里面ESF Templates.zip文件,查找该领域和功能类型,看看的要求是什么。这是你如何可能发现,日期和电话号码值格式不正确的错误的类型,或当需要的值清空。

例:

XML解析器错误:输入错误
数据集: '文件:/// C:/RT/31827/results/RESULTS_OpeningDefinition.xml'
线:53柱:18信息:数据类型错误:
类型:InvalidDatatypeValueException,消息:值不在枚举“。

如果我们在源文件中查找,我们发现:

第53个显示:

这一定意味着有一个记录,其中actionCode是空白。

要检查你的输出,看看为什么它可能会失败,您可能还需要尝试使用ESF结果读者的检验程序(FME通用浏览器或FME数据查验)加载它。请确保您在选择验证数据集阅读器参数。

提取和管理属性

它可以得心应手地使用一个木匠从电子表格或表中提取字段值。关键是要找到与您的几何要素和表记录,所以你可以检索OpeningDefinition属性的公共密钥。

使用一个AttributeRenamer变压器的属性重命名为确切名称是ESF期待。你不需要他们在输出端手动连接通过这种方式。

使用NullAttributeMapper变压器来处理空值的记录,否则将导致转换失败。可能存在这些空值,因为有在几何文件中的记录不能找到在电子表格中的比赛。这些将最终需要匹配和填充这些记录避免丢失。

分组功能

对于结果提交,您通常需要组的功能通过opening_id使用聚合变压器。然后,您可以分支的数据流,并使用GeometryRemover只发送数据的属性开幕特征类型,以及其他数据流分支可以与属性的OpeningDefinition特征类型通过聚集多边形。

其他资源

有关其他诊断的想法,尽量经历:7ESF_PROBLEMS_R2.doc它是包含在本教程中,入门BC财政部ESF

如果审查信息上面还是有问题后,您可以给我们在assistance@safe.com电子邮件与您的工作空间,转换日志和样本源数据和您所遇到的问题的描述。亚搏在线