Solved

Tester appears to be missing some Nulls

  • 12 August 2016
  • 5 replies
  • 2 views

Badge +1

I have an SDE Geodatabase (ArcObjects) data source and want to filter out all features with no name.

I've used a tester with a test for 'has a value'.

I've also tried testing for 'not null AND not emtpy string'

I've also tried using a NullAttributeMapper and mapping Nulls to some value and testing for that.

Whatever I do, 49 'Nulls' make it through to the output, even if I add more testers. Workspace obviously doesn't think these are Null/empty, but the inspector reports them as <null> after running the workspace.

I can just manually delete these from my output later, but if anyone can shed some light on what is happening here, I'd appreciate it.

I'm using Workbench 2016.1.1

edit:

if I query the oracle view in the geodatabase

select name, road_type from PLAN.roads_src where name is not null order by name;

I get a number of results with <NULL> for name.

So it appears FME is doing exactly what it is asked. So I guess not an FME issue, but still if anyone has some idea what is going on here...

icon

Best answer by jeovis 12 August 2016, 19:13

View original

5 replies

Userlevel 2
Badge +12

If the source attributes datatype is CHAR the attribute might have been filled with spaces. Have you tried the AttributeTrimmer to remove spaces (with the option to trim to Null) before testing on "has a value"?

Userlevel 4
Badge +25
The Logger is a good transformer here - perhaps better than the Inspector as it just shows exactly what Workbench sees the feature as. So add a Logger before and after the Tester and check one of the features.

 

 

Badge +1

If the source attributes datatype is CHAR the attribute might have been filled with spaces. Have you tried the AttributeTrimmer to remove spaces (with the option to trim to Null) before testing on "has a value"?

 

I did try that, thanks for the suggestion. I sorted it out, I will post the answer...

 

Badge +1

Sorry folks, it turns out the name field actually had a string value of '<Null>'. Not null at all but that actual 6 char string.

Userlevel 6
Badge +32

Sorry folks, it turns out the name field actually had a string value of '<Null>'. Not null at all but that actual 6 char string.

Thanks for sharing, made me smile. Have encountered a similar problem a while ago, these jokes can take far too long to solve.

 

 

Reply