Using the fieldsToCompare parameter in the Extract Changes operation displays an empty value in the JavaScript Object Notation (JSON) response for fieldUpdates even if the edits are made to the field specified.
ArcGIS Online
漏洞 ID 编号
BUG-000169701
已提交
August 2, 2024
上次修改时间
March 27, 2025
适用范围
ArcGIS Online
找到的版本
Feb 2024
操作系统
N/A
操作系统版本
N/A
状态
As Designed
经开发团队审核,已确定此行为符合设计。 有关详细信息,请参阅“其他信息”部分。
附加信息
To properly utilize the fieldsToCompare feature in the extractChanges function, there are important configuration steps and considerations:
Configuration Requirement:
Before enabling either sync or change tracking, you must set syncRowsMovedOutsideFilter on the service. This is crucial for the proper functioning of fieldsToCompare.
UpdateDefinition JSON:
The configuration should be set using the following JSON:
{"syncRowsMovedOutsideFilter": true}
Risk of Data Loss:
If syncRowsMovedOutsideFilter is not enabled from the beginning, disabling sync and change tracking later can result in the loss of all previous records. This is particularly important if you need to access historical data.
Current Limitation:
Due to cost considerations, the fieldsToCompare feature currently only works when returnIdsOnly is also enabled. This limitation helps manage the computational expense associated with comparing fields.
Best Practice:
To ensure data integrity and maintain access to historical records, it's recommended to enable syncRowsMovedOutsideFilter from the outset when setting up the service, especially if you plan to use fieldsToCompare in the future.
This setup ensures that your system can accurately track changes across specified fields, even when data moves outside of defined filter criteria, while also managing computational resources effectively.
解决办法
Make sure to disable sync and change tracking if the existing service already turned on, if not then you can directly use UpdateDefinition on ADMIN REST API to
{"syncRowsMovedOutsideFilter": true}
Then enable sync and change tracking. Currently it only works with returnIdsOnly to true.