我用2017.1版测试了david解决方案,它也能工作。
应该是这样的:
不应该有任何模板代码,而应该只有从上面的发布中复制/粘贴的代码。
抱歉,戴维,我的Python FME知识是不存在的。
我该把这段代码贴在哪里?(我的意思是我应该保留pythoncaller中的代码的哪些部分?)
所有的设置应该是什么样的?
谢谢你
很高兴听到你得到了期望的结果。
这是另一种方法。我不认为合并两个表在这种情况下是必要的。仅供参考。
似乎是2019年测试版BulkAttributeRamer的一个问题。你应该考虑发信号给保险箱。亚搏在线
但我同意Takashi的观点,为什么要使用测试版。除非你有一个非常具体的理由,否则我建议你不要这样做。
如果你真的需要使用2019测试版,考虑用pythoncaller和我在上面发布的代码替换bulkattributenamer,它应该可以工作。
我能从你的工作区得到想要的结果,与FME 2018.1.1.1。
测试版可能会有问题。为什么不使用发行版呢?
合并类别2.fmwt输入类别.xlsx输入链.xlsx嗯,我以为模板fme文件包含所有相关文件。不管怎样,我已经附上了所有的文件。谢谢
请重新上传模板和随附的excel文件好吗?这样测试起来就容易多了。
如果您真的需要cat属性从1开始,那么可以在pythoncaller中将bulkattributenamer替换为以下小代码:
def explodelist(feature):item s=feature.getattribute(''u categories{}.category')对于n,枚举中的item(items):feature.setattribute('cat%s'%(n+1),item)
这里有一个可能的解决方案,使用featuremerger为每个链元素创建一个类别列表,然后使用bulkattributenamer“分解”列表项。但是,您必须手动公开cat0…catn。在bulkattributenamer之后使用attributeexposer。还要注意,cat属性从cat0开始,而不是cat1。