Skip to main content
Released

Add rejected port to all transformers

rylanatsafe
siennaatsafe
sigtill
geosander
revesz
+9
  • rylanatsafe
    rylanatsafe
  • siennaatsafe
    siennaatsafe
  • sigtill
    sigtill
  • geosander
    geosander
  • revesz
    revesz
  • nmatton
    nmatton
  • cwarren
    cwarren
  • lucky
    lucky
  • roland.martin
    roland.martin
  • denniswilhelm
    denniswilhelm
  • ville
  • fmeinfoaggregat
  • marinahmetry
  • samuelvaldez

Add rejected port to all transformers and never crash the fme run because of bad feature.

This post is closed to further activity.
It may be a question with a best answer, an implemented idea, or just a post needing no comment.
If you have a follow-up or related question, 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.

11 replies

fmelizard
Safer
Forum|alt.badge.img+18
  • Safer
  • August 7, 2016
We are hard at work doing this. I'm going to say that this is "in beta" for FME 2017 as I am not aware of any others that need "the treatment" as of now (but there may be). Definitely this idea is our goal.

 

 


Forum|alt.badge.img+2
  • September 20, 2016

Rejected Ports are being added to many transformers for FME 2016.1/2017, with a highlight attached to them. Here's how it works:

  • By default if a feature is rejected then the translation will terminate. This is because, prior to having a <rejected> port, many transformers did terminate the workspace run if a bad feature was encountered. Some users relied on that behaviour.
  • The behaviour for any particular workspace is handled as a workspace parameter and can be changed to either Terminate or Continue the translation

'

  • You can change the default behaviour in FME Options -> Translation and switch the Rejected Feature Handling Default from Terminate Translation to Continue Translation. See image below:

'

Note: the the Workspace Parameter for Rejected Feature Handling takes precidence over the value set in FME Options.

  • Using Continue Translation, if you do not connect anything to the rejected port then the rejected port will show the number of rejected features and you can inspect the rejected features - as described in the user documentation
  • You can have mixed modes:
    • If you use the default behaviour of Terminate Translation but then add a connection to the <Rejected> port (i.e. connect a Junction), features exiting that <Rejected> port will not terminate the workspace run.
    • If you use the default behaviour of Continue Translation then you can connect a Terminator transformer to <Rejected> ports that you explicitly want to halt the workspace run.

Older workspaces opened in a version of FME that includes this functionality will operate as they did before - that is, the Rejected Feature Handling parameter is set to Continue Translation. Only in new workspaces will it default to Terminate Translation (and then only if the default option has not been changed).


geosander
Forum|alt.badge.img+7
  • November 23, 2016
@daleatsafe excellent! Didn't check the latest beta yet, but don't forget to add a <rejected> port to the RasterReplacer. Terminates my whole workbench every time the blob attribute is malformed.. :(

 


fmelizard
Safer
Forum|alt.badge.img+18
  • Safer
  • November 24, 2016
Good one! I've passed it to the team and we'll try to get it in for 2017.1 at the latest.

 

 


ebygomm
Influencer
Forum|alt.badge.img+39
  • Influencer
  • February 1, 2017

 

Will there be a rejected port for the geometryvalidator? Currently if you send features to it with no geometry at all they all pass which doesn't seem quite right to me.

jdh
Contributor
Forum|alt.badge.img+28
  • Contributor
  • February 1, 2017
I think that might situation might be better resolved by a null geometry test, or by changing the current test Contains Null Geometry Parts to fail features with no geometry

Forum|alt.badge.img+1

This has been released as part of FME 2017.0 . Visit http://www.safe.com/downloads to download it and give it a spin.


mhab
Contributor
Forum|alt.badge.img+10
  • Contributor
  • May 30, 2017

The explanation above finally made it clear to me.

 

Good thing is I can change the default to my preference, which is continue.

After a relaxing holiday I struggled a bit with how to change the setting, and was a bit disappointed how long it took to find my way ...

After the translation stopped (unwanted) here is what I went through

1) I first tried to find something in context menu (right click on the red stop sign).

 

--> no help

2) I looked through the FME Options and overlooked the option.

 

--> I saw no red stop sign anywhere ;-)

3) I looked for a shortcut in the toolbar

 

--> nothing available

4) I checked the Options again and still didn't find it

 

--> lots of options and a hot early summer heat here ;-)

5) Finally I found the workspace parameter setting

That's when I thought: "How can it be I need to change workspace parameters" in order to get it running ???

I understand the problem now (where and how to bring all the options to the user) and have the suggestion to add an optional tool for the toolbar, where the behaviour for rejected ports can be toggled, similar to the writer redirect option button.


fmelizard
Safer
Forum|alt.badge.img+18
  • Safer
  • May 30, 2017
Thanks for this Michael -- you make a very good point and we should make this very very easy and not send you on a scavenger hunt like this. I'll alert the team.

fmelizard
Safer
Forum|alt.badge.img+18
  • Safer
  • May 30, 2017
The team beat me to it. They advise:

 

 

In 2017.1 the message was changed to "Bufferer_: Termination Message: 'Bufferer output a feature. To continue translation when features are rejected, change 'Workspace Parameters' > Translation > 'Rejected Feature Handling' to 'Continue Translation''"

 

 

That should help a great deal...

 

 


fmelizard
Safer
Forum|alt.badge.img+18
  • Safer
  • May 30, 2017
PS: We also like the idea of a right click on the stop sign. We'll queue that up for FME 2018.

 

 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings