Skip to main content
Question

How to use ChangeDetector to compare two tables and then update only what has changed?

  • August 29, 2019
  • 2 replies
  • 164 views

anthonystokes
Contributor
Forum|alt.badge.img+1

The goal here is to have FME query our up-to-date database for investigator names, use ChangeDetector to see what’s changed between a feature class in ArcGIS Desktop and our database, and update only what has changed in the local ArcGIS geodatabase layer.

 

So far the workbench successfully updates the investigator name (changes the value from “IS THIS REPLACED?” to “Sandy Jones”. The only problem is that it also fills in null data for the other fields that occupy the same row.

 

Is there a way to have it leave those areas alone?

Here is my workbench

 

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.

2 replies

erik_jan
Contributor
Forum|alt.badge.img+22
  • Contributor
  • 2179 replies
  • August 29, 2019

The ChangeDetector only indicates what records are changed, not what fields.

Instead of using a writer, you could use the SQLExecutor to update only the "NAME" field in the table, using a query like:

Update <table> set NAME = '@Value(NAME)' where ID = @Value(ID).

Hope this helps.


anthonystokes
Contributor
Forum|alt.badge.img+1
  • Author
  • Contributor
  • 12 replies
  • August 29, 2019

The ChangeDetector only indicates what records are changed, not what fields.

Instead of using a writer, you could use the SQLExecutor to update only the "NAME" field in the table, using a query like:

Update <table> set NAME = '@Value(NAME)' where ID = @Value(ID).

Hope this helps.

Would this work for updating a feature class in a local geodatabase in ArcGIS Desktop?