Hello everyone,
I'm facing an issue when reading multiple tables from ArcSDE and writing them to a File Geodatabase using a dynamic schema.
I'm using fme_feature_type as the destination feature class name. However, translation fails for some tables.
After investigating the issue, I found that some tables contain Esri-specific attributes such as shape.len and shape.area, and other esri objects which seem to cause problems when writing to the File Geodatabase.
My idea is to automatically remove any Esri-specific attributes that might cause compatibility issues and then write all tables successfully to the File Geodatabase.
My first approach:
I'm working with FME Form 2024 and trying to clean up the schema before writing data to a File Geodatabase.
My workflow is:
-
Use FeatureReader to read the source data and retrieve its schema through the Schema output port.
-
Use ListExploder to split the
attribute{}list into individual schema attribute definitions. -
Use Tester to filter out unwanted Esri-specific attributes based on the
nameattribute. -
Use ListBuilder to rebuild the cleaned attribute list.
-
Connect the ListBuilder output to the File Geodatabase Writer's Schema port.
The problem:
After rebuilding the list with ListBuilder, the geometry definition (fme_geometry{}) is missing.
As a result, the translation fails because the resulting schema is incomplete.
My questions:
-
What is the correct approach to remove unwanted Esri-specific attributes while preserving the original schema and geometry definition?
-
How can I retain the original geometry type (e.g.
geodb_point,geodb_polyline, orgeodb_polygon) when rebuilding the schema? -
Is there a recommended way to dynamically clean schemas from multiple ArcSDE tables before writing them to a File Geodatabase?
What is the best approach to write data from ArcSDE to a File Geodatabase using a dynamic schema? I want the File Geodatabase Writer to automatically create the output feature classes and attributes based on the source schema.

