Skip to main content
Solved

FME refuses to write NULL values to a double field in an File GeoDataBase table

  • August 4, 2021
  • 4 replies
  • 245 views

tim_wood
Contributor
Forum|alt.badge.img+8

Hi everyone. I'm using the FGDB Open API writer in 64-bit FME 2020.1 (build 20624) to write an FGDB table (no geom). I have 2 "double" type fields in the FGDB table which are set to allow NULL values (I've checked in ArcCatalog).

 

When I run my Workspace, FME refuses to write features to the FGDB table which have NULL values for the "double" fields. I have tried ensuring the values are NULL using a NullAttributeMapper before the Writer, but it hasn't made any difference.

 

I have also tried using the other FGDB Writer - the one that uses ArcGIS Desktop, which seems better - I just need to fix some features which have "null" instead of NULL to complete the testing. Has anyone else experienced this difference between the FGDB writers?

Best answer by nielsgerrits

What do you mean with refuses? What does it write?

I only have 2020.2 installed to test but I could not reproduce your issue. I tried in 2 ways, let fme create the gdb and create the featureclass in arccatalog and insert with fme.

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.

4 replies

nielsgerrits
VIP
Forum|alt.badge.img+60
  • 2938 replies
  • Best Answer
  • August 4, 2021

What do you mean with refuses? What does it write?

I only have 2020.2 installed to test but I could not reproduce your issue. I tried in 2 ways, let fme create the gdb and create the featureclass in arccatalog and insert with fme.


tim_wood
Contributor
Forum|alt.badge.img+8
  • Author
  • Contributor
  • 311 replies
  • August 4, 2021

What do you mean with refuses? What does it write?

I only have 2020.2 installed to test but I could not reproduce your issue. I tried in 2 ways, let fme create the gdb and create the featureclass in arccatalog and insert with fme.

Hi. I meant refuses as in the attributes have a value of NULL in FME and the field in the FGDB table is set to allow NULLs but FME won't write those features because of those attributes.

 

I'm just checking though because I noticed some features had "null" as text rather than a proper NULL. I'm querying data from postcodes.io and the terminated Postcodes API is returning "null" rather than coordinates for Lat/Long e.g. api.postcodes.io/terminated_postcodes/TW16 9AU so it could be down to that.

 

I'm pretty sure the error in the log where the containing features were "dropped" said <null> rather than 'null', but I could be wrong. I'll post back when I've done some more investigation...


nielsgerrits
VIP
Forum|alt.badge.img+60
  • 2938 replies
  • August 4, 2021

Hi. I meant refuses as in the attributes have a value of NULL in FME and the field in the FGDB table is set to allow NULLs but FME won't write those features because of those attributes.

 

I'm just checking though because I noticed some features had "null" as text rather than a proper NULL. I'm querying data from postcodes.io and the terminated Postcodes API is returning "null" rather than coordinates for Lat/Long e.g. api.postcodes.io/terminated_postcodes/TW16 9AU so it could be down to that.

 

I'm pretty sure the error in the log where the containing features were "dropped" said <null> rather than 'null', but I could be wrong. I'll post back when I've done some more investigation...

That might be it, you can always use the NullAttributeMapper to fix those.


tim_wood
Contributor
Forum|alt.badge.img+8
  • Author
  • Contributor
  • 311 replies
  • August 4, 2021

Looks like we're all good now - how could I ever doubt FME?! PICNIC - Problem In Chair, Not In Computer! Plus a bit of new learning about the API... Added setting values to NULL where not NULL or proper coordinates.