Arc GISFeature Table
A table of features that typically represent real-world objects created from an ArcGIS feature service or an ArcGIS geodatabase. This is the base class for the ArcGIS specific feature tables GeodatabaseFeatureTable and ServiceFeatureTable. You can create instances of these subclasses using their constructors.
If the FeatureTable.hasGeometry is true, you can display the features in an ArcGISMap or ArcGISScene. To do this create a FeatureLayer from the feature table and add it to the map or scene's collection of operational layers (GeoModel.operationalLayers). The ArcGISFeatureTable can also contain features that do not have a geometry (FeatureTable.hasGeometry is false).
ArcGISFeatureTable provides methods for querying related features (for example, ArcGISFeatureTable.queryRelatedFeaturesAsync(ArcGISFeature)), and methods to create new features based on a FeatureSubtype or a FeatureTemplate.
Since
200.1.0
Inheritors
Properties
The table's contingent values definition. The contingent values definition must be loaded after the table has loaded. If the list of field groups is empty after loading, then no contingent values are defined for this table.
The table's default subtype code.
A list of editable fields.
Defines the user interface to display when editing a feature in this table. This is null if an error occurs or if the table does not have an associated feature form definition.
The table's feature subtypes.
A list of the feature templates on this table.
The feature types for this table.
The global id field name.
True if the features in this table have attachments, false otherwise.
The service information related to the feature layer. Explore the editing capabilities of this feature table with ArcGISFeatureLayerInfo.capabilities or the editor tracked fields with ArcGISFeatureLayerInfo.editFieldsInfo.
The object id field name.
The layer ID in the feature service that this table was created from.
The table's subtype field.
The type id field name.
Unknown data from the source JSON. Unknown JSON is a dictionary of values not defined in the ArcGIS specification used to create this object but found in the source JSON. If the object is written back to JSON, any unknown JSON data is not persisted. The ArcGIS specification may be for a web map, web scene, REST API, and so on.
Unsupported data from the source JSON. Unsupported JSON is a dictionary of values defined in the ArcGIS specification used to create this object but not currently used in this API. If the object is written back to JSON, any unsupported JSON data is persisted. The ArcGIS specification may be from a web map, web scene, REST API, and so on.
True if the table is using advanced symbology, false otherwise.
Inherited properties
A user-friendly name that can be displayed in the UI (for example, in a Table of Contents). If the table is displayed with a FeatureLayer, the FeatureTable.displayName is used as the FeatureLayer.name.
The type of geometry of the features stored in this table. If FeatureTable.hasGeometry is false, then the geometry type is GeometryType.Unknown.
True if the feature table supports geographic features, false otherwise.
True if this feature table is editable, false otherwise. Underlying file permissions (for subclasses such as ShapefileFeatureTable and GeodatabaseFeatureTable) can be changed while the feature table is open. In these cases the value of this property may not be accurate.
A flag indicating whether the PopupDefinition defined on the PopupSource is enable / disable. Will return false if an error occurs.
The layer that displays this table, if any. The Layer type depends on how the feature table is created. For example, a Layer will be an AnnotationLayer if the FeatureTable is created from a table that supports annotation. See Layer for more information about the supported layer types.
The load status.
The number of features in the table. If all the features are stored in the local table, for example with a GeodatabaseFeatureTable or a ShapefileFeatureTable, then the FeatureTable.numberOfFeatures will return the full number of features.
The pop-up definition. The PopupDefinition associated with the popup source. A null if an error occurs or if the popup source is not associated with a pop-up definition.
The spatial reference of the table. A spatial reference defines how the coordinates of a feature's Geometry correspond to locations in the real world. For more information, see the SpatialReference class or the Spatial references[https://developers.arcgis.com/documentation/spatial-references/] documentation.
Functions
Creates a new feature based on the provided feature subtype and geometry.
Creates a new feature based on the provided feature template and geometry.
Creates a new feature based on the provided feature type and geometry.
Returns the features added since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns no features because there is no concept of syncing.
Returns the number of features added since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns 0 because there is no concept of syncing.
Returns possible values for the specified field, in the context of defined contingencies. This method iterates over all the field groups that the input field participates in. For each, it looks at the input feature's field values for the other fields participating in that field group. Contingencies that are satisfied by the other fields are identified, and their values for the input field are aggregated. These are returned in a ContingentValuesResult, which contains a dictionary of field group names to an array of ContingentValue objects accessed via ContingentValuesResult.byFieldGroup, specifying possible values for the input field that will satisfy a contingency in that field group. If the feature participates in multiple field groups and there are values that will satisfy all groups, they will be returned by ContingentValuesResult.allGroups.
Returns the features deleted since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns no features because there is no concept of syncing.
Returns the number of features deleted since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns 0 because there is no concept of syncing.
Searches for the feature template with the given name.
Searches for the feature type with the given name.
Returns all the features that were added, updated or deleted since the last sync. Returns a result object containing a feature edit iterator. For mobile geodatabase created by ArcGIS Pro, the iterator in the result object is empty because there is no concept of syncing.
Returns the number of features that were added, updated or deleted since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns a count of 0 because there is no concept of syncing.
Returns a list of all related tables that have been added to the map. Only returns tables that have been added to the map that this table is associated with.
Returns the features updated since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns no features because there is no concept of syncing.
Returns the number of features updated since the last sync. For mobile geodatabases created by ArcGIS Pro, this method returns 0 because there is no concept of syncing.
Checks whether the feature table has local edits. For ServiceFeatureTable, local edits are edits that have not yet been applied to the feature service. For GeodatabaseFeatureTable, local edits are edits that have been made since the last acknowledged upload. For mobile geodatabases created by ArcGIS Pro, this method returns false because there is no concept of uploading or applying edits. For mobile geodatabases, use GeodatabaseFeatureTable.hasLocalEditsSince(Instant).
Performs a query that returns the number of related features to supplied feature based on the parameters.
Queries for related features of a given feature in a specific relationship. The origin and all destination tables must be associated with the same map, either as a feature source for a layer or added to the map via its table collection. Otherwise, the query will return no results.
Returns list of tables related by the given relationship info. Only returns tables that have been added to the map. If there are multiple instances of the related table on the map, all such instances will be returned.
Returns an array of contingency constraint violations based on the input feature. An empty array indicates that all contingencies associated with the feature are valid.
Validates constraints for a given feature participating in a relationship. The following are considered violations:
Inherited functions
Adds a feature to the table. Adding a feature that contains a Geometry causes the geometry to become simplified. This may change a single part geometry to a multipart geometry, or round off X, Y, Z, and M coordinate values that are above the resolution set by the SpatialReference.
Adds a collection of features to the table.
Determines whether you can add new features to the table. Although this method may state that the table allows new features to be added, the application may not be licensed to permit this. For example, a user cannot add features to a secured feature table if the application is licensed at the Lite level (LicenseLevel.Lite).
Cancels loading metadata for the Loadable object.
Determines whether you can delete the feature from the table. Although this method may state that the table allows the feature to be deleted, the application may not be licensed to permit this. For example, a user cannot delete features from a secured feature table if the application is licensed at the Lite level (LicenseLevel.Lite).
Determines whether you can edit the geometry field in a table. Although this method may state that the table allows geometry fields to be edited, the application may not be licensed to permit this. For example, a user cannot update geometry in a secured feature table if the application is licensed at the Lite level (LicenseLevel.Lite).
Determines whether you can update the feature in the table. Although this method may state that the table allows the feature to be updated, the application may not be licensed to permit this. For example, a user cannot update features in a secured feature table if the application is licensed at the Lite level (LicenseLevel.Lite).
Creates a new empty feature. The new feature is only available in memory at this point. Execute FeatureTable.addFeature(Feature) to commit the new Feature to the table.
Creates a new feature with the provided attribute values and, optionally, geometry. The new feature is only available in memory at this point. Execute FeatureTable.addFeature(Feature) to commit the new Feature to the table.
Deletes a feature from the table. Deleting a feature from a GeodatabaseFeatureTable in a stand-alone mobile geodatabase created with ArcGIS Pro is not supported when the table participates in a controller dataset, such as a utility network or parcel fabric. Use FeatureTable.canDelete(Feature) to determine if this operation is allowed.
Deletes a collection of features from the table.
Determines the minimum bounding envelope that contains features satisfying the provided query parameters. If no features meet the query criteria, an empty envelope is returned.
Determines the count of features that satisfy the provided query parameters.
Submits a query against the table.
Calculates values for the requested statistics. Statistics query parameters may also define fields on which results are grouped or sorted.
Updates a feature in the table. If you update a feature that contains a Geometry, the geometry becomes simplified. This may change a single part geometry to a multipart geometry, or round X, Y, Z, and M coordinate values that are above the resolution set by the SpatialReference.
Updates a collection of features in the table.