Is This Content Helpful?
We're glad to know this article was helpful.
How are updates to event layers handled in ArcMap Server?
When adding event layers via data stored in a dbf file, ArcMap server should automatically assign a unique object id (OID) to each event. The OID is required by ArcMap server to select event features.
When working with event layers by way of data stored in an ArcSDE/database, a few additional steps must be taken. A non-spatial, unregistered (ArcSDE) database table can be used as an event layer, but the event features are not selectable. In order to select the features, they must have an OID.
There are two methods for adding an OID to an event layer via ArcSDE:
- ArcSDE maintained
- User maintained
When registering a database table using ArcCatalog, it automatically adds an ArcSDE-maintained OID column. Since ArcSDE is responsible for maintaining this column, updates must occur within an ESRI product such as ArcCatalog, ArcObjects or the ArcSDE API. This verifies that the appropriate geodatabase events are triggered.
If any updates occur outside an ESRI product, for example by way of SQL, problems may occur because ArcSDE and the geodatabase are unaware of the change. In this case, a user-maintained OID column should be defined. This column must be integer, not null, and unique. An existing column can be used as long as the contents adhere to these restrictions.
A user maintained OID can be set using the sdetable command. For example:
>sdetable -o register -t dynseg_events_reguser -c userid -C USER -u ims -p ims
Unregister the table before reregistering with the user-maintained column.