Skip to main content
Question

Dynamic Excel schema not refreshing when column names or new columns are added

  • February 13, 2026
  • 5 replies
  • 0 views

aaarnm
Contributor
Forum|alt.badge.img+1

Hi everyone,

I’m struggling with a limitation in the Excel Reader and I’m hoping someone has a reliable workaround for a fully dynamic workflow.

I have an automated FME Flow workspace where multiple users upload Excel files through an FME Flow App. These files contain yearly planning data for different teams. The challenge is that users will sometimes rename existing columns and sometimes add completely new columns to the Excel sheet.

Even when I configure the Excel Reader with Dynamic Schema by using Single merged feature type, FME does not refresh the schema at runtime. It only updates the schema if I manually right click the reader in the Navigator pane and click Update reader. Simply running the workspace does not trigger a schema rescan.

I have tested using CSV instead of Excel but the schema still remains locked to whatever was detected when the reader was first added. As a result, any renamed columns or newly added columns are ignored unless I manually refresh the reader.

Is this a known limitation of the Excel Reader? If so is there any workaround? There must be many people out there facing the same problem…

 I’m looking for practical solutions. My goal is to allow users to upload Excel files where column names may change and new columns may appear, without breaking the workflow.

My questions:

  1. Is there any way to force the Excel Reader (or CSV Reader) to refresh the schema automatically at runtime?

  2. If not, what is the recommended method for handling Excel files with variable and evolving column structures?

  3. How do others handle user‑submitted Excel files where the schema is not stable?

Any advice, examples or just support would be greatly appreciated. Thanks!

5 replies

nielsgerrits
VIP
Forum|alt.badge.img+64

As far as I know, dynamic reading and writing just works. Just doublechecked in 2025.2.1 with a simple workspace reading 2 different Excel documents with a changed column name and an added column and writing this to a resulting CSV. So dynamic converting is not an issue. Just use a FeatureReader reading both data and schema and write these to a FeatureWriter set dynamic. See attached sample.

But it is hard to do something with these changed columns as dynamically exposing unexposed attributes is not possible. This makes sense if you realise transformers downstream of the reader can only be assigned to exposed attributes, so to handle these attributes you will need them before runtime.

There are ways work with this, like the BulkAttributeRenamer regexmapping identification columns to a fixed ID column before exposing it. Or exploding the table to features using an AttributeExploder, renaming columns, rebuilding the data using an AttributeCreator to dynamically write both attribute name and attribute value. Or the SchemaScanner to generate a new schema feature before writing it to a dynamic writer.

But it all depends on what you need to do with the features after reading the data. What do you need after de features are read?


aaarnm
Contributor
Forum|alt.badge.img+1
  • Author
  • Contributor
  • February 13, 2026

I will need to unpivot the data and join it with data from another table before writing it. So I can’t unfortunately just send it into a dynamic writer.

 


ebygomm
Influencer
Forum|alt.badge.img+46
  • Influencer
  • February 13, 2026

There is an additional step you need to do when adding the excel reader to get it to read dynamically by selecting sheets to read to none

 

Dynamically Read Multiple Excel Files – FME Support Center

​​​​​​​

Regarding your question 3, if the process expects a fixed schema the excel file is read dynamically and the schema is checked to ensure certain required fields are present, if they’re not present a message is returned to the user and no further processing occurs.


aaarnm
Contributor
Forum|alt.badge.img+1
  • Author
  • Contributor
  • February 13, 2026

I already select sheets to read to none, still have to press “Update reader” in the navigator pane to make it read in the new/changed column names. 

 


ebygomm
Influencer
Forum|alt.badge.img+46
  • Influencer
  • February 13, 2026

Are you using a regular reader rather than the FeatureReader?

I see that the attribute names are automatically exposed on the reader even when set up dynamically which I think is incorrect. But the reader does read the updated data irrespective of whether you’ve updated the reader.

 

e.g. updating a single column name, you will find the value of the exposed attribute that no longer exists will say missing and the new column name will be present but unexposed.

 

Updating the reader just controls which attributes get exposed.

 

You cannot dynamically expose attributes