Skip to main content

Hello,

I have an FME 2018 workbench with an AGOL Writer set up to write to a Feature Service layer in AGOL by Writer Mode: Insert, Truncate First: No (I want to keep appending different records to the table). (See screenshot below)

Steps to reproduce the FME warning (error):

1. First time run the FME workbench from a January data set csv file that gets geocoded to arcgisonline_polygon

Results: All column fields get written to AGOL geodatabsae and feature service layer perfectly fine

2. Second time I run the FME workbench from a February data set csv file that gets geocoded to arcgisonline_polygon

Results: FME gives me a warning: "ArcGIS Online Feature Service Writer: Attribute 'PLAN' on feature type 'Land_Lots' does not match any field on the corresponding layer/table. The attribute will be ignored"

The workbench translation is still successful. However, when I look at the table in AGOL, I now notice that the second time I had ran the FME workbench, the PLAN field got changed to PLAN_, thus, I get that FME warning which ignores to populate that column the second time I ran the workbench.The PLAN field has no records appended (populated) the second time I ran the FME workbench

Is this a Bug in FME or I'm I doing something wrong when setting up the writer?

Below is the AGOL Writer I have in my workbench:

 

AGOL Table Records showing the PLAN field changes to PLAN_ and records omitted the second time I ran the workbench:

AGOL Fields

 

AGOL Table:

To start with, ArcGIS Online sometimes shows strange behaviour, but it is not capable of altering field names.

So, I would both csv-datasets and make sure they have exactly the same fieldname 'PLAN_' or 'PLAN'. It might even be that the fieldname in the January table ends with a space and FME replaces that space with an underscore.

What might have happened if the fieldname indeed is 'PLAN', but I'm not sure, is that the original dataset contains the field PLAN, but that the name is a so called 'reserved name' which you cannot use. I can imagine that ArcGIS Online (or FME) is 'smart enough' to add an underscore to overcome that issue. The first run (also creating the table) won't have any issues, but subsequent runs will in that case.

Best solution for the subsequent tables... use an AttributeRenamer to add the underscore and your data will flow like a river.


To start with, ArcGIS Online sometimes shows strange behaviour, but it is not capable of altering field names.

So, I would both csv-datasets and make sure they have exactly the same fieldname 'PLAN_' or 'PLAN'. It might even be that the fieldname in the January table ends with a space and FME replaces that space with an underscore.

What might have happened if the fieldname indeed is 'PLAN', but I'm not sure, is that the original dataset contains the field PLAN, but that the name is a so called 'reserved name' which you cannot use. I can imagine that ArcGIS Online (or FME) is 'smart enough' to add an underscore to overcome that issue. The first run (also creating the table) won't have any issues, but subsequent runs will in that case.

Best solution for the subsequent tables... use an AttributeRenamer to add the underscore and your data will flow like a river.

@lars_de_vries Thank you again Lars. I did a little test in AGOL, created a feature service Test_Layer, when I added new fields, like, NAME, COMMENT, etc.... they were added with no problems. When attempting to add PLAN as a field, seems like it is a keyword in AGOL (See below), but it still allowed FME to write to it the first time with that field name but not the second time around.

So I followed your 'flow like a river' solution and that fixed the issue. I used the AttributeManager instead to have the Input Attribute PLAN to an 'Output Attribute' PLAN_N. Thanks man.

 

 

 


@lars_de_vries Thank you again Lars. I did a little test in AGOL, created a feature service Test_Layer, when I added new fields, like, NAME, COMMENT, etc.... they were added with no problems. When attempting to add PLAN as a field, seems like it is a keyword in AGOL (See below), but it still allowed FME to write to it the first time with that field name but not the second time around.

So I followed your 'flow like a river' solution and that fixed the issue. I used the AttributeManager instead to have the Input Attribute PLAN to an 'Output Attribute' PLAN_N. Thanks man.

 

 

 

Your welcome


Reply