Skip to main content

I have a spatial relater transformer that is intersecting two feature classes. When I change the Input is Ordered by Group parameter to "No, the attached tester transformer (which is testing for the intersection) works correctly passes values of yes it does intersect or no it does not intersect. When I change the Input is Ordered by Group parameter to "Yes", the same tester passes all values as does not intersect.

Both feature classes are intersected with the same grid feature class and the attribute names are the same, I also have two sorter transformers one for each feature class to ensure they are sorted in the same order.

Any help would be appreciated!

 

the help explains it i think.

If you use group by and the ordered by group...then first make sure this ordering is true.

So maybe u have to sort them by this groupvalue on both requestor and supplier.


Both the requester and supplier have sorter transformers that sorts them by the group value in ascending order.


Ok, but i think ordering in this sense means that both ports must be fed with elemenst of same group.

If one port is fed a different element then it will fail.

It 's more like synchronised feeding of the input ports.

You could add a variable setter on one port and a variable reader on the other port to check wether the variable of the other has changed.

Or a feature holder and a tester to control the flow.


Gio, Thanks for the suggestions, I will explore the tester and holder option further next week.

I always assumed that since the sorters were placing them in ascending order, the same elements would be read at the some time (that is why they were being sorted!). It sound like I need to take an additional step to synchronize the inputs in addition to sorting them.

On a totally different note, I could see a situation where either the requester or the supplier have an element the other would not, and that would cause major problems, so I need to figure that one out.

Once again many thanks for you help.


@kjsmith1

I think Gio is correct in why it is happening, but what you could do is just use a single Sorter and pump both requestors and suppliers into it. That will sort them into one complete order. Then use a Tester to divide the data back into requestor/supplier and connect them to the correct SpatialRelator ports.

As long as the Tester isn't group-based and blocking features (it isn't and it doesn't), then it should work correctly.


Mark, that worked! I had to add both the requester and supplier onto the sorer and than split them out via a tester. Thank you for your help, I never would have thought of using one sorter and a tester.

Kevin


Reply