Skip to main content
Question

Feature Merge Type to NONE on FeatureMerger

  • January 13, 2017
  • 8 replies
  • 53 views

jpvo
Contributor
Forum|alt.badge.img+2

In many occasions I use a FeatureMerger to verify the match of ID between two datasets.

In this situation I really don't want to merge attributes at all. I use the Feature Merge Type "geometry" but then I need to restor the original geometry of the requestor (GeometryExtractor / Replacer).

My life would be much easier with an option "None" which checks the match between two dataset but leave untouched both requestor and suppliers so I don't have to worry about attribute accumulation.

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

8 replies

david_r
Celebrity
  • January 13, 2017

Hi JP, I agree that would be helpful. Maybe post it as an idea?

I'm sure you've thought about this too, but I often use the Referenced output port for this scenario, rather than the Merged port. That way the output features remain untouched.


jpvo
Contributor
Forum|alt.badge.img+2
  • Author
  • Contributor
  • January 13, 2017

Hi David,

My mistake, I was thinking I had posted it as an idea. using the Referenced is usefull but less logic, less "readable" and therefore less maintainable over time.


ebygomm
Evangelist
Forum|alt.badge.img+53
  • Evangelist
  • January 16, 2017

You can use an InlineQuerier in place of a featuremerger to do this which would remove the need to rebuild any geometry

e.g. SELECT req.* FROM Requestor req, Supplier sup WHERE req.name = sup.name


erik_jan
Contributor
Forum|alt.badge.img+26
  • Contributor
  • January 16, 2017

Hi David,

My mistake, I was thinking I had posted it as an idea. using the Referenced is usefull but less logic, less "readable" and therefore less maintainable over time.

You have posted it as an idea and I voted for it days ago.

 

 


itay
Supporter
Forum|alt.badge.img+19
  • Supporter
  • January 16, 2017

Optionally that is if you are using database formats, the joiner\\SQLexecutor can also be used.


jpvo
Contributor
Forum|alt.badge.img+2
  • Author
  • Contributor
  • January 17, 2017

Optionally that is if you are using database formats, the joiner\\SQLexecutor can also be used.

How would you the "NotMerged" features when using a SQLExecutor?

 

I use something like this but I don't really like it: Merge Result and Initiator based on ID.

 

Is there a "select" I could use to return the initiator in the result port if the query has no results?

 

 


jpvo
Contributor
Forum|alt.badge.img+2
  • Author
  • Contributor
  • January 17, 2017

You can use an InlineQuerier in place of a featuremerger to do this which would remove the need to rebuild any geometry

e.g. SELECT req.* FROM Requestor req, Supplier sup WHERE req.name = sup.name

I should use more InlineQerier but there is an overhead as you have to manually make the query for Unreferenced and NotMerged Ports:

 

demo-inlinequerier.fmw

 


itay
Supporter
Forum|alt.badge.img+19
  • Supporter
  • January 17, 2017
How would you the "NotMerged" features when using a SQLExecutor?

 

I use something like this but I don't really like it: Merge Result and Initiator based on ID.

 

Is there a "select" I could use to return the initiator in the result port if the query has no results?

 

 

You could use the except oprator, if your format supports it, but I have to admit that its not a very nice solution, I would use the Joiner since it will always return a _matched_records attribute and it can be optimized.