The Edit widget provides users with feature and record editing capabilities in 2D and 3D. Use the Edit widget with another data-connected widget, such as Table, Feature Info, or Map, to allow users to add, delete, and update features in the source data. The Map widget mode supports 2D and 3D editing, including move, scale, rotate geometries, and vertices editing. You can choose which fields to display, organize the fields in collapsible groups with meaningful headings, and provide instructions for editing each field. When connected to a map with a form configured for the selected layer, the widget can display the form (including conditional visibility for fields).
Examples
Use this widget to support app design requirements such as the following:
- You want users to be able to update the attributes of selected features or records.
- You want users to be able to modify the shape of a feature in a map or scene from the Map widget.
Usage notes
This widget requires adding editable data. When you add an Edit widget, you must add at least one other widget, such as Table, List, Feature Info, or Map, that uses the same data source. The Edit widget only supports selected features view, so a feature must be selected in the other widget for its data to appear in the Edit widget. To edit geometry, the widget must be connected to a Map widget.
Note:
The widget supports connecting individual subtype sublayers from subtype group layers.
You must configure this widget with one of two edit modes, Attribute only or Interact with a Map widget. When you include the widget in an app with Interact with a Map widget mode selected, the widget provides users with the following tools and settings:
- Enable tooltips—Show numerical information while drawing features.
- You can press Tab to type values in the tooltips that appear while you are creating and editing features. Press Enter to set input values. You can also press Tab to navigate between input fields.
- You can click Lock constraint to turn off editing for an input field and click Unlock constraint to turn on editing for an input field.
- For point features, you can enter coordinate and elevation values. Press Enter to place a point on the map.
- For polyline and polygon segments, you can enter values for segment lengths, angles, and elevation. You can click Direction mode and select from the following two options for defining the angle of a line segment:
- Deflection—The angle is measured in degrees relative to the previously drawn segment. A deflection value of zero creates a line that continues the previous segment in a straight line. Positive values are measured in a clockwise direction. Negative values are measured in a counterclockwise direction.
- Absolute—The angle is measured in degrees using the coordinate system of the map. A direction value of 0 creates a line directed due north. Positive values are measured in a clockwise direction. Negative values are measured in a counterclockwise direction.
- Enable snapping—Snapping allows you to create features that connect to each other. The pointer will jump, or snap to, nearby edges, vertices, and other geometric elements. Turn on this setting to enable the following tools (if they are configured in the widget settings):
- Geometry guides—Allows snapping to the feature being created, and shows smart guides such as 90 degrees and parallel.
- Feature to feature—Allows snapping to other features.
- Grid—Overlays a grid on the map. You can snap features to the grid.
- Snapping layers—Choose which editable layers should work with the enabled snapping tools.
- Grid options—When you turn on Grid, the following grid options appear:
- Placement—You can use the three tools to adjust the grid position, rotation, or both.
- Angle—Enter a value in degrees to define how much to rotate the grid. The angle is measured in degrees using the coordinate system of the map. A value of 0 directs the y-axis of the grid toward due north. Positive values are measured in a counterclockwise direction. Negative values are measured in a clockwise direction.
- Cells between major lines—Enter a number of grid cells to appear between lines with thicker stroke.
- Dynamically scale grid based on zoom—Turn on this setting to have the grid stay the same size on the screen at all zoom levels.
- Rotate grid with map—Turn on this setting to have the grid rotate with the map when the user rotates with the Map widget Navigation tool.
- Theme—Choose a color for the grid. Dark is appropriate for light backgrounds. Light is appropriate for dark backgrounds. You can also choose a custom color.
- Edit features—Edit the features of the specified data sources.
- Create features—Add features to the data sources from the specified Map widget.
The Edit features and Create features sections appear at run time if you turn on certain capabilities in the widget's settings. However, if you are a user with elevated privileges, such as the organization administrator or app owner, both sections appear regardless of capability settings.
When you include the widget in an app with Attribute only mode selected, the widget includes tools for updating and deleting records.
When you include the widget in an app with Interact with a Map widget mode selected, the widget supports editing related table records and related feature records. To edit related records for a layer, you must specify a related records element in Map Viewer.
Note:
Relationship editing is only supported using ArcGIS Online and ArcGIS Enterprise 11.2 or later feature services.
If you attempt to do something that would discard any edits without saving them, such as change your selection, the widget warns you that you have unsaved edits that could be lost and prompts you to either confirm or cancel.
Editing privileges
Editing privileges depend on where you access the Edit widget and your account type.
The following rules apply for all users accessing the Edit widget in the builder environment:
- You can import all feature layers regardless of whether the layers are set to editable in their service-level settings.
- If a layer is noneditable, it is added in a read-only state and you can only choose display fields from the layer.
The following privileges apply to users accessing the Edit widget in an app at run time:
- Organization administrators, app owners, and members of shared update groups have full editing capabilities, meaning they can override any service-level configurations.
- Users with fullEdit privileges cannot override service-level configurations to edit records, but can override service-level configurations to add, delete, and update geometry for records.
- All other users have editing privileges that adhere to service-level configurations and account privileges.
Settings
The Edit widget includes the following settings:
- Choose an edit mode.
- Attribute only—Allows users to edit the attributes of the specified data sources without a Map widget.
- Interact with a Map widget—Allows users to edit
the geometries and attributes for features in the data sources from the specified Map widget. All layers from the Map widget are automatically synced to the Edit widget. If you only want to connect specific map layers to the widget, you can click the Select layers button
to open the Select layers panel and turn on Customize layers.
Layers appear in the settings panel, either in a list or in a drop-down list under each listed map.
- Layer configuration—Select the data source to be edited. For each layer, specify the following settings:
- Label—Type a name for the data source. This name appears in the widget to differentiate records from different sources.
- Capability—Specify the
edit capabilities for the data source. The capabilities that you turn on here affect whether the Create features and Edit features sections appear in the widget panel at run time.
- The Create features section appears when you turn on Add records for at least one data source.
- The Edit features section appears when you turn on Delete records or Update records for at least one data source.
-
Configure fields—Choose a method for how fields appear in the widget.
- Use webmap settings—Displays all editable fields or a form configured in the map (including conditional visibility settings).
- Customize—Displays the editable fields that you select. (The first 50 fields are automatically selected; click Clear selection to deselect all.) In the subset of selected fields, specify which fields you want users to edit. Organize them by dragging to reorder or combining fields into logical groups. Provide descriptions for each field or group to give context or instructions.
- Snapping settings—Choose to include the Geometry guides and Feature to feature snapping tools.
- Choose a mode for the snapping tools.
- Prescriptive mode—With this mode, the snapping settings you configure here are unchangeable by the user at run time.
- Flexible mode—You can choose which snapping settings to include in the widget, enable them by default and set default snapping layers. The Grid setting is only available in Flexible mode.
- Enable by default—Enable the snapping tool by default when the widget loads. This check box appears under each snapping tool when you choose to include either of the tools in Flexible mode.
- Choose default snapping layers—Designate layers as snapping layers by default when the widget loads.
- Choose a mode for the snapping tools.
- General (Attribute only mode)—Optionally, provide users with a description of how to use the widget and enter a message that appears when there is no valid selection.
- General (Interact with a Map widget mode)—You can turn on the following tools and capabilities:
- Tooltip—Include the Enable tooltips option in the widget panel at run time.
- Enable by default—Have the Enable tooltips option be turned on by default when the widget first loads.
- Template filter—Include the Filter types search box in the widget panel at run time. This tool allows users to search by name for features that they want to edit to draw.
- Related records—Allow users to edit related table records.
- Runtime data editing—Allow users with the appropriate editing privileges to edit data added to the app at run time with the Add Data widget. Users can edit run time data added from search or by URL. Layers must be added to the same Map widget that is connected to the Edit widget.
Note:
To edit a feature from a layer added at run time, you must select the feature with the Edit widget select tool. The feature does not appear in the Edit widget if you only select it on the map.
- Display vertices while editing—Show vertices for selected line and polygon features. Users can drag, add, and delete vertices.
- Tooltip—Include the Enable tooltips option in the widget panel at run time.
Interaction options
The Edit widget can be the target of the Edit data action, which you can configure in the settings of other widgets.
Data actions add buttons to a widget's user interface for performing data processing tasks. When you configure a widget, such as a Map widget, to have the Edit data action, you can select a feature on the map and click Edit to open an Edit widget and start editing the feature. The target Edit widget must be in a Widget Controller widget and must be connected to the same data source as the source widget. The following widgets support the Edit data action:
- Feature Info widget
- List widget
- Map widget
- Near Me widget
- Select widget
- Table widget
Additional resources
The following are resources for re-creating ArcGIS Web AppBuilder editing workflows in Experience Builder: