span8
span4
你好,
我使用的是FeatureWriter将数据插入到PostgreSQL数据库。当某些特征不能被转换成所需的数据类型,FME丢弃它们而无需终止翻译。
记录器给出了一条蓝色的消息:
属性'test'的值无法转换为类型'bool'。功能将被记录和跳过"
然而,问题在于试图捕获此场景并终止翻译。
尽管删除了一些特性,但输出摘要特性时,FeatureWriter仍然包含针对'_total_features_written'属性的完整计数。我打算将这个数字与引入的特性数进行比较,以检查是否存在差异。现在我能想到的另一种方法是立即查询数据库,并以这种方式获得编写的特性计数。
我想我有两个问题:
1.当一个功能像这样被删除时,是否有一种内在的方法来停止翻译?
2._total_features_written计数是否包含删除的特性,这是一个错误还是故意的?它显然没有反映写进数据库的实际数字,所以至少是有误导性的。看看这个问题上的其他主题,似乎它不应该包括掉的功能?
谢谢
在FME 2019.1.0.0和FME 2019.1.1.0上测试
& PG 11.4
@shravan15回答@sigtill-普通作家也有同样的行为。
在这些情况下,FME并没有说实话:翻译日志中的特性计数是FME希望编写的特性的计数,因此它们包括被数据库拒绝的特性。
我认为你们有两种选择:
添加到@markat亚搏在线safe关于日志中的特性计数…这是一个已知的问题,我已经将您的报告链接到我们的内部票证(参考FMEENGINE-46951)。我很抱歉让你遇到这种事!
@sigtill是的,它的行为方式是一样的。我相信,在幕后只有一个writer实现,不管它是如何被调用的(writer或featurewriter)。
@markat亚搏在线safe@nampreetat亚搏在线safe谢谢-我已经解决了这个问题使用sqlexecutor后立即比较计数
©2020安全亚搏在线软件公司|法律