ListBasedFeatureMerger
拷贝和合并从一个特征(或多个特征)的属性/几何到另一个特征(或多个特征)。包含所需的属性/几何特性是通过连接供应商端口和功能,将接收的属性/几何通过连接请求者港口。
请求者的特征相匹配的供应商功能,当在指定的关键请求者列表属性(例如,“列表{}。键”)符合指定供应商属性参数(例如, 'supplierKey')。
该不完整的请求者参数指定是否将供应商并入部分匹配请求者当有键在请求者列表属性已经没有配套供应商。请求者功能被视为完全匹配,如果在每一个关键请求者列表属性匹配一个或多个供应商的功能。
当合并请求程序和供应商,从供应商的属性被合并到请求程序。单一供应商可以通过很多请求者使用。许多供应商可以合并到一个单一的请求程序。任何合并几何保留圆弧,椭圆和文字。
输入端口
接收来自连接到所述的特征的新的属性/几何供应商港口。
新的属性/几何的功能,通过输入源请求者港口。
输出端口
在指定的请求者列表属性。换句话说,只有完全匹配的请求程序才会输出到此端口。
这个端口以前被标记为不完整的并保留了该标签的语义。所以,这个端口标签是“NotFullyMerged”的缩写。部分匹配的请求程序被输出到此端口,并将所有匹配的供应商合并到输出特性中不完整的请求者被设置为合并供应商信息。如果一把钥匙请求者列表属性为空,该键与任何供应商都不匹配,因此,请求者功能将输出到此端口。例如,如果请求者密钥是:
列表{0}.key=1
列表{1}.key=
列表{2}.key=3
此外,还有“supplierKey”值为1的供应商,
合并到至少一个请求者上的供应商。
供应商不匹配任何请求者。如果供应商属性键值为空或丢失,该功能将输出到此端口。
参数
变压器
输入特性可以由分组依据参数。如果你有选择的话分组依据属性,则只有当要素共享选定属性的公共值时,才会解析要素之间的引用。
如果你不选择分组依据属性,所有特征一起处理。
如果您有多个读卡器,典型的用法是按读卡器id分组,以确保在正确的功能集中解析引用。
加入属性
请求者特性的list属性,其键将与供应商属性关于供应商特征。
将与中的键匹配的供应商功能的属性请求者列表属性用于请求者功能。
指定如何执行请求者和供应商属性值之间的比较。如果自动或数字如果已指定,则将尝试在比较属性值之前将其转换为数字。如果数值转换失败,将使用字符串比较。
合并参数
要生成完成的特性,通常需要组合与请求者匹配的所有供应商特性。这些选择是通过功能合并类型参数:
- 当功能合并类型参数是属性只,则供应商属性将使用指定的属性连接到请求者特性的属性供应商名称列表参数。
- 当功能合并类型参数是几何,则供应商是包含几何图形的特性。请注意,请求者将丢失它以前的几何图形。
- 当功能合并类型参数是属性和几何,然后来自供应商的几何图形和属性都被连接到请求者特性。请求者上的任何几何图形都将被覆盖。属性将被合并供应商名称列表参数。
如果为给定的请求者找到多个供应商,并且处理重复供应商是没有,然后第一个供应商通过DuplicateSupplier端口,只有第一个供应商将与请求者匹配。
如果设置为是的,然后根据属性积累模式,并可以选择使用指定的列表名称。使用指定的几何合并类型。
构建多边形:如果供应商仅包含多边形和圆环多边形功能,则将删除任何公共边界段。如果供应商包含至少一个非圆环或非多边形特征,则转换器将从供应商形成多边形和圆环,并在设置请求者特征的几何图形之前连接供应商特征的连接线段。在这种情况下,如果创建了多个不相交的几何图形,则几何图形可能是一个集合。
构建总量:转换器将创建供应商特征的几何图形集合。(如果只有一个供应商特征,则请求者几何图形将是一个包含一个元素的聚合。)
从点构建线:变压器将供应商特征点连接成线路。请注意,在生成直线时,将忽略所有被参照的非点要素。
此参数控制部分匹配的请求者发生的情况。
如果此参数设置为合并供应商信息,然后将找到的供应商合并到请求程序中,然后通过未合并港口。使用的供应商将通过参考港口。
如果此参数设置为不合并供应商信息,则请求程序将通过未合并港口和供应商将通过未引用港口。
属性积累
如果供应商与请求者功能相同的名称属性,但并不几何形状与启动属性fme_,然后他们被视为冲突。
合并供应商:请求者功能将保留其自身的所有不冲突属性,并另外获取供应商功能所具有的任何不冲突属性。此模式将基于冲突解决参数。
前缀供应商:请求程序功能将保留其自身的所有属性。此外,请求者将获取反映供应商特性属性的属性,名称以前缀参数。
只使用供应商:除了以fme_。然后,来自一个(任意)供应商特性的所有属性都将被放置到请求者上。
使用请求者:如果发生冲突,将维护请求者值。
使用供应商:如果发生冲突,供应商的值将传递给请求者。
没有:将空属性值视为其他属性值。
是的:将空属性值视为比其他属性值更不重要的值。当空值与非空值合并时,无论冲突解决设置为。
注意:请注意:Null和其他属性值总是比缺少的属性值更具支配性。也就是说,当一个属性值与一个丢失的属性值合并时,不管忽略空值和冲突解决设置。
为了防止由于请求者属性已经存在而忽略了供应商属性,您可以选择性地指定一个前缀,该前缀将被添加到Requestor属性时应用到每个供应商属性。
当一个请求者特征有多个供应商特征时,多个供应商属性值将合并到同一个前缀属性中。当多个供应商特性具有相同的属性时,通常从这些特性的最后一个中获取结果属性值。但是,此过程由忽略空值参数。
生成列表
使用注意事项
关系InlineQuerier
该InlineQuerier是ListBasedFeatureMerger强大的表弟。而ListBasedFeatureMerger将两个数据集,并使用一个简单的,单一的属性键相匹配的特点,InlineQuerier允许合并任何数量的输入数据集,使用在任意数量的表和列的SQL的全部力量。此外,InlineQuerier允许其输入数据以在单个变压器多次重复使用,而如果有多个被联接成与ListBasedFeatureMerger来完成,多发性ListBasedFeatureMergers必须采用和的特征的副本发送到每个。在另一方面,有一些开销的InlineQuerier加载底层SQLite数据库。使用单一InlineQuerier,而不是几个ListBasedFeatureMergers也简化了工作区。
除非需要在工作流只有一个ListBasedFeatureMerger,该InlineQuerier可能是一个更好的选择亚搏在线。多级联ListBasedFeatureMergers较早的工作区可以通过一个单一的正确配置InlineQuerier更换ListBasedFeatureMergers体验到性能的改善。
关系SQLCreator/SQLExecutor
如果要已经查询了所有的数据存在于SQL能力的数据源,它始终是更有效地使用该SQLCreator或SQLExecutor,因为这允许查询和数据的滤波以直接由数据库在其进入之前执行 FME environment.
关系细木工
关系FeatureMerger
该变压器是FeatureMerger交易与其中请求者属性是一个列表的情况下的非常具体的实例。如果请求者属性是不是列表中,FeatureMerger是首选的变压器。
编辑变压器参数
使用一组菜单选项,变压器参数可以通过引用在工作区中的其它元件来分配。更先进的功能,如高级编辑,算术编辑,也是一些变压器可用。要访问这些选项的菜单,点击适用的参数旁边。欲了解更多信息,请参阅变压器参数菜单选项。
变压器分类
搜索FME知识中心
搜索样品和有关该变压器的FME知识中心。
标签关键词:级联外键标签交叉引用“交叉引用” FeatureMerger