1. Get started

  2.  Welcome
  3.  Get started
  4.  Run as a Windows service
  5.  Build your first app
  6.  Requirements
  7.  Accessibility support
  8.  Development overview
  9.  About release versions
  10.  What's new
  11.  Frequently asked questions
  12. Working with apps

  13.  Home page
  14.  Create or import an app
  15.  Edit and launch an app
  16.  Choose a theme
  17.  Select a map or scene
  18.  Add widgets
  19.  Widgets overview
  20.  Configure app attributes
  21.  Preview apps on smaller screens
  22.  Export as a template
  23.  Edit or preview template
  24.  Use URL parameters
  25.  Upgrade apps
  26. Configure 2D widgets

  27.  About widget
  28.  Add Data widget
  29.  Analysis widget
  30.  Attribute Table widget
  31.  Batch Attribute Editor widget
  32.  Basemap Gallery widget
  33.  Bookmark widget
  34.  Business Analyst widget
  35.  Chart widget
  36.  Controller widget
  37.  Coordinate widget
  38.  Coordinate Conversion widget
  39.  Cost Analysis widget
  40.  Data Aggregation widget
  41.  Directions widget
  42.  Distance and Direction widget
  43.  District Lookup widget
  44.  Draw widget
  45.  Edit widget
  46.  Emergency Response Guide widget
  47.  Extent Navigate widget
  48.  Filter widget
  49.  Full Screen widget
  50.  Geocoder widget
  51.  GeoLookup widget
  52.  Geoprocessing widget
  53.  Grid Overlay widget
  54.  Gridded Reference Graphic widget
  55.  Group Filter widget
  56.  Image Measurement widget
  57.  Home Button widget
  58.  Incident Analysis widget
  59.  Infographic widget
  60.  Info Summary widget
  61.  Layer List widget
  62.  Legend widget
  63.  Measurement widget
  64.  My Location widget
  65.  Near Me widget
  66.  Network Trace widget
  67.  Oblique Viewer widget
  68.  Overview Map widget
  69.  Parcel Drafter widget
  70.  Print widget
  71.  Public Notification widget
  72.  Query widget
  73.  Related Table Charts widget
  74.  Report Feature widget
  75.  Reviewer Dashboard widget
  76.  Scalebar widget
  77.  Screening widget
  78.  Search widget
  79.  Select widget
  80.  Share widget
  81.  Situation Awareness widget
  82.  Smart Editor widget
  83.  Splash widget
  84.  Stream widget
  85.  Suitability Modeler widget
  86.  Summary widget
  87.  Swipe widget
  88.  Threat Analysis widget
  89.  Time Slider widget
  90.  Visibility widget
  91.  Zoom Slider widget
  92. Configure 3D widgets

  93.  3DFx widget
  94.  About widget
  95.  Basemap Gallery widget
  96.  Compass widget
  97.  Coordinate widget
  98.  Daylight widget
  99.  Full Screen widget
  100.  Home Button widget
  101.  Layer List widget
  102.  Legend widget
  103.  Measurement widget
  104.  My Location widget
  105.  Navigate widget
  106.  Search widget
  107.  Share widget
  108.  Slides widget
  109.  Splash widget
  110.  Zoom Slider widget
  111. Widget development

  112.  Get started
  113.  Naming conventions
  114.  In-panel and off-panel widgets
  115.  Deploy your widget
  116.  Required files
  117.  Widget manifest
  118.  Extend BaseWidget
  119.  Required properties
  120.  Define the template
  121.  Configure the Demo widget
  122.  Add i18n support
  123.  Make widgets user-friendly
  124.  Build your first app
  125.  Communication to app container
  126.  Widget properties
  127.  Make widgets responsive
  128.  Communication between widgets
  129.  Dojo dijit
  130.  Make widgets configurable in builder
  131.  Make widgets backward compatible
  132.  Create a controller widget
  133.  Widget life cycle
  134.  Add help for your widget
  135.  Create a feature action in your widget
  136.  Provide and consume data sources in widgets
  137.  Best practices for unit testing
  138. Theme development

  139.  Theme elements
  140.  Create a theme
  141. 3D development

  142.  3D development guide
  143. Sample code

  144.  Create a custom in-panel widget
  145.  Create a ListView widget
  146.  Create a custom widget using the Report dijit
  147.  Create a new theme
  148.  Create a new style for a theme
  149.  Create a new default layout
  150.  Create a nondefault layout
  151.  Create a new panel
  152.  Create a new layout widget
  153.  Create a controller widget
  154.  Create a feature action in your widget
  155.  Send a layer to the Attribute Table widget
  156.  Open multiple widgets simultaneously
  157.  Use other libraries
  158.  Change the URL of ArcGIS API for JavaScript
  159. Deployment

  160.  Deploy your app
  161.  Use proxy
  162.  Web-tier authentication
  163.  Custom widget and theme deployment
  164.  Upgrade custom widgets and themes
  165. Framework reference

  166.  CSS framework
  167.  FeatureActionManager class
  168.  FilterManager class
  169.  LayerInfo class
  170.  LayerInfos class
  171.  LayerNode class
  172.  LayerStructure class
  173.  PanelManager class
  174.  SelectionManager class
  175.  Utils class
  176.  WidgetManager class
  177. dijit

  178.  FeaturelayerChooserFromMap class
  179.  FeaturelayerServiceBrowser class
  180.  FeatureSetChooserForSingleLayer class
  181.  Filter class
  182.  ImageChooser class
  183.  ItemSelector class
  184.  LayerChooserFromMap class
  185.  RendererChooser class
  186.  Report class
  187.  SnapShot class
  188.  SymbolChooser class
  189. JSON reference

  190.  App configuration
  191.  Map configuration
  192.  Widget configuration
  193.  Widget pool configuration
  194.  Widget on-screen configuration
  195.  Panel configuration
  196.  Group configuration
  197.  DataSource configuration
  198.  About
  199.  Analysis
  200.  Attribute Table
  201.  Basemap Gallery
  202.  Bookmark
  203.  Chart
  204.  Coordinate
  205.  Directions
  206.  Draw
  207.  Edit
  208.  Full Screen
  209.  Geocoder
  210.  Geoprocessing
  211.  Controller
  212.  Home Button
  213.  Image Measurement
  214.  Infographic
  215.  Layer List
  216.  Legend
  217.  Loading Page
  218.  Measurement
  219.  My Location
  220.  Near Me
  221.  Oblique Viewer
  222.  Overview Map
  223.  Print
  224.  Query
  225.  Report Feature
  226.  Reviewer Dashboard
  227.  Scalebar
  228.  Search
  229.  Share
  230.  Splash
  231.  Stream
  232.  Swipe
  233.  Time Slider
  234.  Zoom Slider
  235. What's new archive

  236.  What's new in version 2.23
  237.  What's new in version 2.22
  238.  What's new in version 2.21
  239.  What's new in version 2.20
  240.  What's new in version 2.19
  241.  What's new in version 2.18
  242.  What's new in version 2.17
  243.  What's new in version 2.16
  244.  What's new in version 2.15
  245.  What's new in version 2.14
  246.  What's new in version 2.13
  247.  What's new in version 2.12
  248.  What's new in version 2.11
  249.  What's new in version 2.10
  250.  What's new in version 2.9
  251.  What's new in version 2.8
  252.  What's new in version 2.7
  253.  What's new in version 2.6
  254.  What's new in version 2.5
  255.  What's new in version 2.4
  256.  What's new in version 2.3
  257.  What's new in version 2.2
  258.  What's new in version 2.1
  259.  What's new in version 2.0
  260.  What's new in version 1.3
  261.  What's new in version 1.2
  262.  What's new in version 1.1

Group Filter widget

The Group Filter widget allows you to apply filters to one or multiple layers in the map. The layers can be grouped into a logical filter set. Each set can have a predefined value to facilitate user interaction.

Configure the Group Filter widget

This widget can be set to open automatically when an app starts. Hover over the widget and click the Do not open this widget when the app starts button Do not open this widget when the app starts to change the setting to Open this widget automatically when the app starts. (For widgets that you need to add to the app first, you can turn on this option after configuring the widget.)

The following steps indicate how to create a filter set. Repeat these steps if you need to define additional filter sets.

Steps:
  1. Hover over the widget and click the Configure this widget button Configure this widget to open the configuration window.
    NoteNote:

    If you need to add the widget to the app first, click a widget placeholder on the Widget tab. In the Choose Widget window that opens, select the widget and click OK.

  2. Optionally, click Change widget icon to replace the default icon for this widget.
    A file explorer window appears, allowing you to choose a local image file to use as the widget icon.

    The configuration displays with one filter group that's ready to modify.

  3. Define filter groups:
    • Group Name—Provide a name for this filter group. It will be displayed in the drop-down of available filter groups.
    • Description—Optionally, you can provide a description to guide users on what this group filters.
    • Preset Operator—Optionally, select a default operator to be used for this filter group. The end user can change the selected operator before applying the filter. If none is selected, the filter uses the EQUALS operator by default.
    • Preset Value—Predefine a value for this filter so the end users do not have to supply this criteria. You have the option to type a value or click the search button to choose a value from an existing layer. This value is used to filter across all the layers defined in the filter group.
    • When a layer is listed more than once—If a layer is listed more than once in a filter group and the filter is applied on different fields, you can control how these fields are joined by choosing to match any or all expressions.
      • Match any expression—The filter result will return features where any of the field values match the expression defined for this filter group.
      • Match all expressions—The filter result will return only features where all the field values matched the expression defined for this filter group.
    • Perform a case sensitive search—Check the box to only return features with attribute values that exactly match the search input with uppercase and lowercase characters.
  4. In the provided table, a layer and field are selected randomly from your map to get you started with an example. Customize the layers and fields to which you want to apply a filter.
    • Layers—The name of the layer as defined on the map. Select a layer from the map using the drop-down.
    • Fields—The field that the layer will be filtered on. Select a field from the layer using the drop-down.
    • Use Value—Option to use the values from this layer and field in a drop-down, as a list f value options to filter. If this parameter is not enabled for a layer, an empty text box appears for the user to type a custom value. This setting is optional.
  5. To add another layer to this filter group, click the Add Layer button.
  6. To add another filter group, click the Add a New Group button. If needed, repeat steps 3 through 5.
  7. Specify a custom header text for the widget using the Provide text to display above filter selection text box.
  8. The following six check boxes control the way the widget behaves:
    • Start in simple view—Determines how the widget will appear to end users. Checking this box hides the operator drop-down list and the Add Criteria button from the interface, giving it a more basic appearance.
    • Hide the widget options—Determines whether to hide the icon, exposing additional widget settings. These settings include saving and loading defined filters, appending to an existing filter definition in the map if it exists, and persisting the filter even after the widget is closed.
    • Append any/all expressions to existing map filter—If the web map has an existing predefined filter applied, this setting allows you to add filters created in this widget to the existing web map filter. This setting will persist filters across multiple groups. If unchecked, the widget will override the web map filter.
      • Using any is additive; the configured filter is added to the web map filter.
      • Using all is exclusive; only display features that meet both the requirements from the configured filter and the web map filter.
    • Zoom to result—Determines whether to zoom the map to the extent of the filtered data. By default, the map maintains its current extent.
    • Persist filters after widget is closed—Allows you to persist the applied filters when the widget is closed. By default, filters are cleard from the map when the widget is closed.
    • Hide the header and filter (for single filter group)—Allows you to hide the header and filter group drop-down menu when only one group is configured.

Use the Group Filter widget

Complete the following steps to use this widget.

Steps:
  1. Click the Group Filter widget to display a selection of predefined filter groups.

    Apply a predefined filter set

    Two drop-downs appear below the line divider: operators and values. In the example, the map is filtered to show only abandoned motor vehicle complaints.

    NoteNote:

    Depending on how the layers are configured in the widget, you will either see a values list (similar to the one in this example), a text box for user input, or a date picker.

  2. Click Apply to apply the filter to the map.

    Optionally, you can apply filters by adding parameters to the app's URL. The URL must be in the following format—replace the variables in angle brackets with the values described in the list below:

    https://<your portal URL>/apps/webappviewer/index.html?id=<Item ID>&groupfilter={"<Filter Set Name>":["<value>","<value>",...]}
    • Item ID—The unique ID of the app.
    • Filter Set Name—The defined name for the filter group. This value is case sensitive.
    • Value—The value used to perform the filter. To filter based on domains, use the domain code.

    For example, to apply the filter shown in the preceding image, you'd use a URL similar to the following sample:

    https://<your portal URL>/apps/webappviewer/index.html?id=6815e148ff1c4aee8dc7159816380a4d&groupfilter={"Group A":["Abandoned Motor Vehicle"]}
    

    NoteNote:

    If the Group Filter widget isn't configured to open automatically when the app starts, the filter defined in the URL won't apply until you open the widget.

  3. Click Reset to remove the filter and restore the map layers to their initial state. (By default, closing the widget also removes the filter.)
  4. The widget allows you to add additional filter criteria at run time. Click Add Criteria to add another clause. Notice that the two criteria are joined with a conjunction. You can choose to join them using OR or AND.

    Add additional filter criteria

    To use URL parameters to apply the filter shown in this example, your URL would look like the following sample:

    https://<your portal URL>/apps/webappviewer/index.html?id=6815e148ff1c4aee8dc7159816380a4d&groupfilter={"Group A":["Abandoned Motor Vehicle","Auto Theft"]}
    

  5. Unless the setting to Hide the widget options was checked in the widget configuration, you can save these defined criteria settings for future use. Click the settings button to access the options panel.

    Save option

    1. Click the Save button to save the current filter settings locally into a JSON text file.
    2. Click Choose File under Upload a settings file to load a previously saved JSON text file to restore all the criteria defined in the file.
    3. If you need to use the filtered map in other widgets, check Persist filters after the widget is closed. Otherwise, closing the widget will remove the filters applied to the layers in the map.
    4. Click the Refresh button to pull the data changes from the layers in the map and refresh the list of values in the filter drop-down. This may be needed if the layers being filtered were edited during the current app session, which may have affected the list of available values.