Skip To Content ArcGIS for Developers Sign In Dashboard

FeatureTable QML Type

Base type for types that represent a table of features. More...

Import Statement: import Esri.ArcGISRuntime 100.6
Since: Esri.ArcGISRuntime 100.0
Inherits:

Object

Inherited By:

ArcGISFeatureTable, FeatureCollectionTable, GeoPackageFeatureTable, ShapefileFeatureTable, and WfsFeatureTable

Properties

Signals

Methods

Detailed Description

Note: You cannot declare or create a component of this type in QML code.

A FeatureTable defines a set of Fields, a GeometryType and a SpatialReference. A FeatureTable can also represent non-spatial data that has no GeometryType or SpatialReference. FeatureTables have a fixed schema.

You can query the FeatureTable using attribute or spatial criteria, and if permitted, edit the data. If the dataset contains geographic features you can display them on a map using a FeatureLayer. To do so, create the FeatureLayer from the FeatureTable and add it to a Map.

In a MVC architecture, the FeatureLayer is the view, while the FeatureTable is the model. Use the FeatureLayer to manipulate how the data displays on the map. For example, you can manipulate the opacity of the layer, turn labels on or off, and set a different Renderer through the FeatureLayer. The FeatureTable contains the data, and can be used for querying or editing the data.

onMouseClicked: {  // mouseClicked came from the MapView
    // create attributes json for the new feature
    var featureAttributes = {"typdamage" : "Minor", "primcause" : "Earthquake"};

    // create a new feature using the mouse's map point
    var feature = featureTable.createFeatureWithAttributes(featureAttributes, mouse.mapPoint);

    // add the new feature to the feature table
    featureTable.addFeature(feature);
}

This QML type supports the following default properties. A default property may be declared inside another declared object without being assigned explicitly to a property.

TypeDefault Property
PopupDefinitionpopupDefinition (since Esri.ArcGISRuntime 100.1)

See also Loadable, Cancelable, and PopupSource.

Property Documentation

addFeatureStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to add a feature (read-only).

The task is started using addFeature.

See also Enums.TaskStatus.


addFeaturesStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to add a list of features (read-only).

The task is started using addFeatures.

See also Enums.TaskStatus.


deleteFeatureStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to delete a feature (read-only).

The task is started using deleteFeature.

See also Enums.TaskStatus.


deleteFeaturesStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to delete a list of features (read-only).

The task is started using deleteFeatures.

See also Enums.TaskStatus.


displayName : string

Returns the table's display name.

This QML property was introduced in Esri.ArcGISRuntime 100.3.


editable : bool

Returns whether the dataset can be edited (read-only).


extent : Envelope

Returns the extent of the dataset (read-only).

For ServiceFeatureTable if the feature request mode is FeatureRequestMode::OnInteractionCache or FeatureRequestMode::OnInteractionNoCache this property returns the services extent. If the mode is FeatureRequestMode::ManualCache or for GeodatabaseFeatureTable this property will return the extent of the cached table.


featureLayer : FeatureLayer

Returns the feature layer created with this table, if any (read-only).


featureTableType : Enums.FeatureTableType

Returns the type of feature table (read-only).

See also Enums.FeatureTableType.


fields : list<Field>

Returns a list of Field objects representing the fields in the dataset (read-only).


geometryType : Enums.GeometryType

Returns the type of geometry used by geographic features (read-only).

All geometries in each feature table share the same geometry type.

Only valid if hasGeometry is true.

See also Enums.GeometryType.


hasGeometry : bool

Returns whether the dataset contains a geometry field (read-only).


hasM : bool

Returns whether the dataset contains m-values. (read-only).

This QML property was introduced in Esri.ArcGISRuntime 100.2.


hasZ : bool

Returns whether the dataset contains z-values. (read-only).

This QML property was introduced in Esri.ArcGISRuntime 100.2.


loadError : Error

Returns the load error (read-only).

Note: load errors are also reported on the error property and emit the errorChanged signal.

See also Loadable.


loadStatus : Enums.LoadStatus

Returns the load status code of this Loadable object (read-only).

See also Enums.LoadStatus and Loadable.


maxQueryFeaturesResultsToStore : int

Returns the maximum number of results from the queryFeatures method to store.

The default value is 10. The minimum value is 1 and there is no maximum.

This value doesn't affect queryFeaturesResult, which always stores the last queryFeatures result.


numberOfFeatures : string

Returns the total number of features or records in the dataset, as a numeric string (read-only).

Note: The underlying Runtime property is represented as a 64-bit integer type. See Accessing 64-bit integer properties from QML.

See also numberOfFeaturesAsInt.


numberOfFeaturesAsInt : int

The same as numberOfFeatures but represented as an integer type (read-only).

Note: The underlying Runtime property is represented as a 64-bit integer type. See Accessing 64-bit integer properties from QML.

This QML property was introduced in Esri.ArcGISRuntime 100.3.


popupDefinition : PopupDefinition

This QML property was introduced in Esri.ArcGISRuntime 100.1.

See also PopupSource.


popupEnabled : bool

This QML property was introduced in Esri.ArcGISRuntime 100.1.

See also PopupSource.


queryExtentResult : Envelope

Returns the Envelope result from a queryExtent operation (read-only).

Obtain the Envelope result once the queryExtentStatusChanged signal emits, and the queryExtentStatus is complete.

This QML property was introduced in Esri.ArcGISRuntime 100.2.


queryExtentStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to query for extent (read-only).

The task is started using queryExtent.

This QML property was introduced in Esri.ArcGISRuntime 100.2.

See also Enums.TaskStatus.


queryFeatureCountResult : int

Returns the feature count result from a queryFeatureCount operation (read-only).

Obtain the feature count result once the queryFeatureCountStatusChanged signal emits, and the queryFeatureCountStatus is complete.

This QML property was introduced in Esri.ArcGISRuntime 100.2.


queryFeatureCountStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to query for feature count (read-only).

The task is started using queryFeatureCount.

This QML property was introduced in Esri.ArcGISRuntime 100.2.

See also Enums.TaskStatus.


queryFeaturesResult : FeatureQueryResult

Returns the results of the latest query for features (read-only).

The task is started using queryFeatures. The results are available when queryFeaturesStatus is Enums.TaskStatusCompleted or as tasks are completed if multiple tasks are being run.

See also Enums.TaskStatus.


queryFeaturesResults : jsobject

A dictionary of task IDs to FeatureQueryResult objects.

The results are available as tasks are completed if multiple tasks are being run.

The maximum number of stored results is controlled by the maxQueryFeaturesResultsToStore property. Older results are removed as newer ones become available with respect to the current value of maxQueryFeaturesResultsToStore.

See also maxQueryFeaturesResultsToStore.


queryFeaturesStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to query for features (read-only).

The task is started using queryFeatures.

See also Enums.TaskStatus.


queryStatisticsResult : StatisticsQueryResult

Returns the statistics result from a queryStatistics operation (read-only).

Obtain the statistics result once the queryStatisticsStatusChanged signal emits, and the queryStatisticsStatus is complete.

This QML property was introduced in Esri.ArcGISRuntime 100.2.


queryStatisticsStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to query for statistics (read-only).

The task is started using queryStatistics.

This QML property was introduced in Esri.ArcGISRuntime 100.2.

See also Enums.TaskStatus.


spatialReference : SpatialReference

Returns the spatial reference of the features in the dataset (read-only).


tableName : string

Returns the name of the dataset (read-only).


updateFeatureStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to update a feature (read-only).

The task is started using updateFeature.

See also Enums.TaskStatus.


updateFeaturesStatus : Enums.TaskStatus

Returns the status of the latest asynchronous task to update a list of features (read-only).

The task is started using updateFeatures.

See also Enums.TaskStatus.


Signal Documentation

addFeatureStatusChanged()

Emitted when the addFeatureStatus property changes.


addFeaturesStatusChanged()

Emitted when the addFeaturesStatus property changes.


deleteFeatureStatusChanged()

Emitted when the deleteFeatureStatus property changes.


deleteFeaturesStatusChanged()

Emitted when the deleteFeaturesStatus property changes.


displayNameChanged()

Emitted when the displayName property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.3.


hasMChanged()

Emitted when the hasM property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.2.


hasZChanged()

Emitted when the hasZ property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.2.


loadErrorChanged()

Emitted when the loadError property changes.

Note: load errors are also reported on the error property and emit the errorChanged signal.

See also Loadable and Object.


loadStatusChanged()

Emitted when the loadStatus property changes.

See also Loadable.


maxQueryFeaturesResultsToStoreChanged()

Emitted when the maxQueryFeaturesResultsToStore property changes.


popupDefinitionChanged()

Emitted when the popupDefinition property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.1.


popupEnabledChanged()

Emitted when the popupEnabled property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.1.


queryExtentStatusChanged()

Emitted when the queryExtentStatus property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.2.


queryFeatureCountStatusChanged()

Emitted when the queryFeatureCountStatus property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.2.


queryFeaturesResultChanged()

Emitted when the queryFeaturesResult property changes.


queryFeaturesResultsChanged()

Emitted when the queryFeaturesResults property changes.


queryFeaturesStatusChanged()

Emitted when the queryFeaturesStatus property changes.


queryStatisticsStatusChanged()

Emitted when the queryStatisticsStatus property changes.

This QML signal was introduced in Esri.ArcGISRuntime 100.2.


updateFeatureStatusChanged()

Emitted when the updateFeatureStatus property changes.


updateFeaturesStatusChanged()

Emitted when the updateFeaturesStatus property changes.


Method Documentation

string addFeature(Feature feature)

Adds a new feature to the feature table using an asynchronous task.

Before adding a feature, check the addFeatureStatus property to see whether an addFeature task is already in progress. If so, then this method cannot start a new addFeature task.

Returns a task ID that can be used to cancel the addFeature task.

See also Cancelable.


string addFeatures(list<Feature> features)

Adds a list of new features to the feature table using an asynchronous task.

Before adding features, check the addFeaturesStatus property to see whether an addFeatures task is already in progress. If so, then this method cannot start a new addFeatures task.

Returns a task ID that can be used to cancel the addFeatures task.


bool canAdd()

Returns true if the feature table allows adding new features.

The result of this method accounts for the table's attachment and geometry capabilites, and ownership-based access control. This method does not consider the app's current license level.


bool canDelete(Feature feature)

Returns true if the provided feature can be deleted from the table.

The result of this method accounts for the table's attachment and geometry capabilites, and ownership-based access control. This method does not consider the app's current license level.


bool canEditGeometry()

Returns true if the feature table allows editing a feature's geometry.

The result of this method accounts for the table's ownership-based access control. This method does not consider the app's current license level.


bool canUpdate(Feature feature)

Returns true if the provided feature can be updated in the table.

The result of this method accounts for the table's attachment and geometry capabilites, and ownership-based access control. This method does not consider the app's current license level.


bool cancelTask(string taskId)

See also Cancelable.


Feature createFeature()

Creates and returns a new, empty feature.

Creates a feature object in memory without adding it to the dataset. Use addFeature or addFeatures to add the new feature to the dataset.

See also addFeature and addFeatures.


Feature createFeatureWithAttributes(jsobject attributes, Geometry geometry)

Creates and returns a new feature with the provided attributes and geometry.

Creates a feature object in memory without adding it to the dataset. Use addFeature or addFeatures to add the new feature to the dataset.

See also addFeature().


string deleteFeature(Feature feature)

Deletes a feature from the feature table using an asynchronous task.

Before deleting a feature, check the deleteFeatureStatus property to see whether an deleteFeature task is already in progress. If so, then this method cannot start a new deleteFeature task.

Returns a task ID that can be used to cancel the deleteFeature task.

See also Cancelable.


string deleteFeatures(list<Feature> features)

Deletes a list of features from the feature table using an asynchronous task.

Before deleting features, check the deleteFeaturesStatus property to see whether an deleteFeatures task is already in progress. If so, then this method cannot start a new deleteFeatures task.

Returns a task ID that can be used to cancel the deleteFeatures task.

See also Cancelable.


Field field(string fieldName)

Returns a Field object describing the field corresponding to the provided fieldName.


string queryExtent(QueryParameters parameters)

Determines the minimum bounding envelope that contains features satisfying the provided query parameters.

The queryExtentStatusChanged signal emits when the operation is complete. Check the queryExtentStatus property to make sure the operation completed successfully. The results are then available through queryExtentResult.

This QML method was introduced in Esri.ArcGISRuntime 100.2.

See also Cancelable.


string queryFeatureCount(QueryParameters parameters)

Determines the count of features that satisfy the provided query parameters.

The queryFeatureCountStatusChanged signal emits when the operation is complete. Check the queryFeatureCountStatus property to make sure the operation completed successfully. The results are then available through queryFeatureCountResult.

This QML method was introduced in Esri.ArcGISRuntime 100.2.

See also Cancelable.


string queryFeatures(QueryParameters parameters)

Queries for features in this FeatureTable using the provided parameters and an asynchronous task.

The queryFeatures function may be run concurrently. The last result will always be stored in the queryFeaturesResult property. To keep track of concurrent tasks, the queryFeaturesResults property can be used to sort multiple results, mapped to the task ID of each task.

Returns a task ID that can be used to cancel the queryFeatures task. The task ID is also used to locate the specific result in queryFeaturesResults for this task.

See also Cancelable.


string queryStatistics(StatisticsQueryParameters parameters)

Queries for statistics in this FeatureTable using the provided parameters and an asynchronous task.

The queryStatisticsStatusChanged signal emits when the operation is complete. Check the queryStatisticsStatus property to make sure the operation completed successfully. The results are then available through queryStatisticsResult.

This QML method was introduced in Esri.ArcGISRuntime 100.2.

See also Cancelable.


string updateFeature(Feature feature)

Updates a feature in the feature table using an asynchronous task.

Before updating a feature, check the updateFeatureStatus property to see whether an updateFeature task is already in progress. If so, then this method cannot start a new updateFeature task.

Returns a task ID that can be used to cancel the updateFeature task.

See also Cancelable.


string updateFeatures(list<Feature> features)

Updates a list of features in the feature table using an asynchronous task.

Before updating features, check the updateFeaturesStatus property to see whether an updateFeatures task is already in progress. If so, then this method cannot start a new updateFeatures task.

Returns a task ID that can be used to cancel the updateFeatures task.

See also Cancelable.



Feedback on this topic?