AGOL webapp Filter widget that acts on a CSV upload

Idea created by dsivertsen on May 20, 2019
    New
    Score0

    We would like our webapp to display 100 or so of the 20,000 items on in the feature class. At present, there are two choices.

    1) Edit the filter widget, and manually checkoff the 100 features in the list of 20,000 (no!)

    2) Select a few items, save the app, edit the JSON data (AGO-Assistant) and do a search and replace in 5 places to replace the selected few with the list of 100, complicated by the fact that sometimes the list members in the JSON are in single quotes and sometimes in double quotes.

    Simpler would be a filter widget that has an option to use an existing CSV file.

    Note - the list changes weekly. This could apply for an inspection of selected parcels, or many other use cases.

    JSON DATA example:                           "filter": {
                                    "logicalOperator": "AND",
                                    "parts": [
                                        {
                                            "fieldObj": {
                                                "name": "AccessionNumber",
                                                "label": "AccessionNumber",
                                                "dateFormat": "",
                                                "shortType": "string",
                                                "type": "esriFieldTypeString"
                                            },
                                            "operator": "stringOperatorIsAnyOf",
                                            "valueObj": {
                                                "isValid": true,
                                                "type": "multiple",
                                                "value": [
                                                    "108847",
                                                    "108845",
                                                    "108844",
                                                    "108840"
                                                ]
                                            },
                                            "interactiveObj": "",
                                            "caseSensitive": false,
                                            "displaySQL": "AccessionNumber IN ('108847','108845','108844','108840')",
                                            "expr": "AccessionNumber IN ('108847','108845','108844','108840')"
                                        }
                                    ],
                                    "expr": "AccessionNumber IN ('108847','108845','108844','108840')",
                                    "displaySQL": "AccessionNumber IN ('108847','108845','108844','108840')"
                                },