Enhanced Search Widget Version 2.23.1 - 11/22/22

532033
2821
07-14-2014 03:57 PM
Labels (1)

Enhanced Search Widget Version 2.23.1 - 11/22/22

Live Preview Site

Web AppBuilder for ArcGIS | Help - Enhanced Search widget

 

List of the latest enhancements and changes:

  1. Fixed issue with Spatial Relationship settings

Older enhancements or changes

Check the "Older enhancements or changes.txt" in the download for a complete list.

 

Older Versions

Last 2.21 version

Last 2.17 version

Last 2.13 version

Last 2.12 version

Last 2.11 version

Last 2.9 version

Last 2.7 version

Last 2.6 version

Last 2.5 version

Labels (1)
Attachments
Comments

Brian,

  That help doc you are referencing is for the 1.1 version and you are using the 1.1.3 version. Here is the correct help doc:

Web AppBuilder for ArcGIS | Help - Enhanced Search widget

Brian,

    Are you using version 1.1 of WAB?

hmmmm.  Although a different link that seems like the same thing in regards to the content I mentioned.  Unless the first edited post doesn't contain the latest widget download.

Regardless expressions aren't saving.  Only the expression alias and search labels save.  =/  frustrating.

Argh so I need to download 1.1 of WAB then I guess?

Brian,

   Yes the 1.1.x version of the eSearch is for 1.1 of the WAB. There was some version naming confusion when WAB came out officially that caused me some issue with my widgets version numbers.

I have updated the help doc to remove some of the old stuff that was lingering in there.

Okay I upgraded.

One thing I noticed is that only the default search layer that functions is the SanFrancisco layer where I can specify parameters, but ONLY if I remove the Louisville and traffic layer as well.   I also cannot get any queries from my own layer to save even though it finds the Search Layer URL, so therefore it has no parameters upon launch.  =/

Brian,

   Something sounds screwed-up with your install. No one else has reported any issues saving search settings or the Louisville and traffic searches not working. I would recommend a fresh install of 1.1 and re-download the eSearch 1.1.3. You can check which version of the eSearch widget you are actually running by holding the Alt key and clicking on the widgets header (to be sure what version you are running).

Robert Scheitlin, GISP wrote:

You can check which version of the eSearch widget you are actually running by holding the Alt key and clicking on the widgets header (to be sure what version you are running).

Robert, this would be helpful for me, but not sure what "widget's header" we should be clicking.  Any chance to give us a snapshot/clip? 

Rebecca,

   Sure here it is. This applies for all my 1.1.X widgets.

Preview.jpg

Robert,

That is cool.

Thanks Robert.  So that is something you built into your widgets it sounds like....not a default WAB feature.

It is a nice feature and would be helpful for all custom widgets....(hint hint to others)....but being more a user of the custom widgets than author, I'm happy for anything you all provide.     and of course, any widgets that come with the "default" install should already be compatible...at least one would hope.

Robert,

I have a question.  When I configure my links in eSearch to be displayed with my results, I choose for them to be displayed as text links, but the results tab still shows them as image links, which are difficult to see. what can I do to get text links in the result panel?

eSearchLinkConfig.pngeSearchLink.png

Thanks,

Michael

Rebecca,

   Yep I added it. I have it in all my 1.1.x widgets, not my older 1.1 widgets.

Michael,

   Text links currently only apply to popups the widgets results still get a icon. I will look at changing this in a future release.

Ok, I understand.  Thanks.

I will also second the request to have a per-query option to enable "show results in attribute table".  It doesn't make sense for some queries, especially the ones where the user chooses a single value from a drop down list.  It is a great feature, but would be even better if was optional.

Michael

Thanks for helping, but that didn't work either.

Unless there is a specific custom widget installation thing to do besides throwing eSearch in the widget folder, I don't know what else to try.

If anyone else has this problem please let me know.

Brain,

   Wow, sorry you are having such a hard time with this. No there is no special step for installing a custom widget to WAB (all you do is exactly what you said, copy it to the widgets folder).

  1. Do you have any issue with the OTB widget in WAB?
  2. Have you brought up your browsers web console to see what the errors are there?

No OTB widget issues as far as I have noticed.  Also I tested other custom widgets like your Identify, enhanced basemap along with the Location widget without any issues there.

I always forget  about the console.  I initially thought it may be related to the invalid certificate browser error, but ignored it. 

The console says:

Mixed Content: The page at 'https://XXXXX' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://sampleserver1.arcgisonline.com/ArcGIS/rest/info?f=json'. This request has been blocked; the content must be served over HTTPS.

init.js:162 Mixed Content: The page at 'XXXXX' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://sampleserver3.arcgisonline.com/ArcGIS/rest/info?f=json'. This request has been blocked; the content must be served over HTTPS.

WidgetManager.js:99 widget [widgets/eSearch/Widget] created.

GET https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Louisville/LOJI…Server/2?f=json&callback... net::ERR_TIMED_OUT

init.js:1086 GET https://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Louisville/LOJI…Server/2?f=json&callback... net::ERR_TIMED_OUT

init.js:1485 dojo.io.script error q {message: "Timeout exceeded", response: Object, log: undefined, stack: (...), dojoType: "timeout"…}

I went and removed the https redirect in app registration, but that didn't do anything.   Do you know what is involved in correcting this?

Robert and Rebecca,

I've made a mixin that has the functionality of Robert's Version Info.  I call it _WidgetMetadataMixin.  I have tested it with 5 of my widgets and 9 Esri Widgets.  Pretty simple to add to a widget.  Four lines of code.

_WidgetMetadataMixin

Larry

Hi Robert,

Great addition to the widget in hijacking the attribute table.  Much appreciated.  One thing I noticed in the live demo site is that the attribute window is populated on the initial search that you run, but any additional searched turn up 0 results in the attribute window.

In other words...when I click on the link and it zooms to the location and select the point they show up in the attribute window.  If I select another traffic camera search it shows nothing in the attribute window.

Using Firefox

Nick,

   Yep I have noticed this as well. When it does that you have to open the Layer List widget and click the "Open Attribute Table" option from the layer menu. Seems like the AT widget has some issues.

I don’t see that option in the demo site…am I missing something.

~ Nick

Nick,

   See attached image: Preview.jpg

Got it... Thanks

Sent from my Verizon Wireless 4G LTE DROID

It seems that the Spatial Search is not returning correct results. When I use the spatial search feature it selects all the features in the service. Am I the only one having this issue?

Cameron Johnsen

Cache County

GIS Specialist

435-755-1635

cameron.johnsen@cachecounty.org

>>> "Robert Scheitlin, GISP" <geonet@esri.com> 4/14/2015 1:45 PM >>>

GeoNet

Enhanced Search Widget Version 1.1.4 - 4/14/15

new comment by Robert Scheitlin, GISP View all comments on this document

Nick,

Yep I have noticed this as well. When it does that you have to open the Layer List widget and click the "Open Attribute Table" option from the layer menu. Seems like the AT widget has some issues.

Reply to this email to respond to Robert Scheitlin, GISP's comment.

Following Enhanced Search Widget Version 1.1.4 - 4/14/15 in these streams: Inbox

This email was sent by GeoNet because you are a registered user.

You may unsubscribe instantly from GeoNet, or adjust email frequency in your email preferences

All,

   Cameron has pointed out a serious issue with the 1.1.4 release I made today and it was such a big issue that I rolled back the official release to 1.1.3 until I get this fixed. Sorry for any inconvenience.

Would someone be kind enough to provide me with the 1.1.3 version of the eSearch that they downloaded. I am really screwing up today and have just overwrote my 1.1.3 version I had on my machine. Feels like a Monday....

Here you go.  Downloaded on 4/9.

eSearch.zip

I have one. How do I get it to you?

haha never mind Larry Stout​ beat me to it.

All,

   I have resolved the issues with the 1.1.4 release that Cameron Johnsen pointed out and have re-released now that this version has been more thoroughly tested. I was so excited to have attachments and relates working I failed to go though the full testing of the widget. Thanks for being patient.

Hi Robert,

Thanks a million for version 1.1.4 of your eSearch Widget!!!

This is the one killer widget that is going to be the centerpiece of all my web applications. I cannot believe how closely this mimics the functionality of your Flex version which is the Gold Standard.

The custom point symbols now appear the way I have them configured.

Pic01.jpg

The external links show up fine in the Results pane and within the Pop-up.

Pic02.jpg

However, the Attribute Table is displaying each and every field.

It would be nice if I could specify which fields I want to see in the Attribute Table, along with my chosen name that overrides the existing field alias.

Pic03.jpg

I know you can select Options | Show/Hide Columns, but I want certain fields like the OBJECTID to never appear as a choice.

Pic04.jpg

Your eSearch Widget is working like a champ.

However, I think I am doing something silly, as I cannot quite make it work in tandem with your Identify Widget version 1.1.0.1

I made a simple test case to illustrate what is happening.

http://www.tapasdas.com/Maps/Phones/app27

I am using your Enhanced Search Widget 1.1.4 to select a single School by Shape.

Pic05.jpg

Next, I am using your Identify Widget to select another School.

Pic06.jpg

The Identify Result is showing a duplicate listing.

Pic07.jpg

This also happens with a polygon dataset.

Here I am using eSearch to select a ZIP Code.

Pic08.jpg

This works fine. One ZIP Code is selected.

Pic09.jpg

However, if I now use your Identify Widget to select another ZIP Code, I get a duplicate listing.

Pic10.jpg

Pic11.jpg

There is another issue I am having. The Items are showing correctly in the Results and the Pop-up.

However, the attributes values are not showing up in the Identify Widget.

Pic12.jpg

The attribute values do show up when I open the Attribute Table.

Pic13.jpg

On the Enhanced Search Widget, when I pick an Item to be displayed as the Title, it appears once again in the Pop-up.

It shows the correct way in the Results pane.

Pic14.jpg

Here are the Map Services I am using:

Schools:

http://arcgis2.geo.az.gov/arcgis/rest/services/CAI3/MapServer/0

ZIP Codes:

http://arcgis2.geo.az.gov/ArcGIS/rest/services/Zipcodes/MapServer/0

Places:

http://arcgis2.geo.az.gov/ArcGIS/rest/services/Places/MapServer/0

County:

http://arcgis2.geo.az.gov/ArcGIS/rest/services/County/MapServer/0

Here is the ZIP file of my web application:

http://www.tapasdas.com/Maps/Phones/app27.zip

Robert, what you did for the Flex platform was a programming masterpiece, and I cannot thank you enough for taking your time to port them over to the Web AppBuilder.

We really liked the way you threaded your Enhanced Draw Widget, Point Buffer Widget and the Enhanced Locate Widget with your Enhanced Search Widget. It was pure genius the way you could draw a shape or a multi-ring buffer using your eDraw and Buffer Widget, and subsequently use that geometry as a basis for running your Enhanced Search.

You could locate an address point and then draw a buffer around that point to run spatial searches using the eSearch widget.

It is amazing how much you pushed the envelope on the Flex platform. We are so happy and grateful that you are gradually bringing all these powerful spatial tools into the Web AppBuilder!

Best regards,

Tapas

Tapas,

   That is some great feedback.

Issue: However, the Attribute Table is displaying each and every field

Answer: I do not see this in your app. When I use eSearch to search for counties the attribute table widget only shows the fields that the eSearch is configured to show.

I do see all the fields when you do a search and the results fail to display in the Attribute table widget and you just get a loading spinner and then I click refresh on the Attribute Table widget.

Issue: However, if I now use your Identify Widget to select another ZIP Code, I get a duplicate listing.

Answer: I do see this and I know exactly why it is occurring. Now I just have to figure out the fix. Two temporary workarounds exist.

  1. Do not add the result as an Operational Layer.
  2. Clear the eSearch result before using identify.

Issue: The Items are showing correctly in the Results and the Pop-up. However, the attributes values are not showing up in the Identify Widget.

Answer: This is due to a bad configuration of the Identify Widget. Not sure how it happened but the alias and field name are identical in the json and they should not be:

http://www.tapasdas.com/Maps/Phones/app27/configs/Identify/config_Identify.json

"field": [

            {

              "name": "Zip Code",

              "alias": "Zip Code"

            },

            {

              "name": "Sq. Miles",

              "alias": "Sq. Miles",

              "isnumber": true

            }

          ]

Issue: On the Enhanced Search Widget, when I pick an Item to be displayed as the Title, it appears once again in the Pop-up.

Answer: I will get this fixed.

Robert,

Thanks for your superfast response!

Yes, you are correct. The Attribute Table is showing only the fields that eSearch is configured to show. Once I cleared my Browser Cache, it started working properly.

I have to remember to clear my Browser Cache before running the tests!

Thanks for the workarounds. Yes, if do not add the results as an operational layer, or if I clear the results from the eSearch Widget, the subsequent Identify operations work perfectly.

Thanks also for the tip that the Field Names and their aliases must not be the same in the Identify Widget. Now I know why the attributes show up for some layers, but do not display on others.

You explain everything so clearly and concisely.

HI Robert-  the eSearch widget is GREAT!  Thank you for getting us over some major hurdles with query/search.   I was wondering about the ability to have the operational layer name (and attribute table tab name) be customizable to indicate that they are search results.  Currently they both use the layer name of the service.  In our case we expect the user to keep a statewide map layer of 'conservation lands' displayed but be able to search to return a subset of those features.  When that happens the Layer List shows the same layer name twice (Florida Conservation Lands in image below).  I would like to indicate that one of them is the search result.  My current workaround is to create a new service with identical layers, just named differently, e.g. 'Conservation Lands Search', for use with the esearch tool.  It is possible I have missed something.  Do you have any thoughts on another way to go about this?  Thank you!

esearch_example.png

Amy,

  This was something I broke in the 1.1.4 release it use to have "Search results: Layername" in the layer List. I will have this back in the next release as this fixes some other issues that users are experiencing.

Great, I will look for it. Thanks!

Amy,

   If you feel comfortable adding a couple of line of code to the widget.js then you can have the fix right away.

in the folder server\apps\X\widgets\eSearch (where X is the number associated with your app). Open the Widget.js file in any text editor program. Do a search for "this.map.addLayer(currentLayer);" (there will only be one incident of this in the code) and then paste this code right before that line.

        currentLayer.minScale = 0;

        currentLayer.maxScale = 0;

        currentLayer.effectiveMinScale = 0;

        currentLayer.effectiveMaxScale = 0;

        currentLayer.defaultVisibility = true;

        currentLayer.name = this.resultLayers[layerIndex].name;

TAPAS DAS

   The fix that I mention for Amy is what will fix your issue with the eSearch and Identify widget duplicate results. In case you want to have the fix before my next release.

This worked perfectly- Thanks so much!

Hi Robert, great update. I noticed a few things that may be a bit off though.

I'm not longer able to Edit Date fields in the Included Fields section.

Also, for unique searches that generate a drop down list, I'm noticing that the first and second spaces are blank and then a value out of order, respectively. Is there any way to correct this?

Dropdown.png

I'm also getting an, "Uncaught TypeError: Cannot read property 'toString' of undefined" when I try to add a Date range expression to a search layer (For the Crimes search layer in my test site).

Here is my test site, all of the layers are there for you to mess around: http://maps.evansvillegis.com/uf2/

Thanks in advance,

Luke,

   Thanks for the bug report.

  1. Was a simple html syntax issue.
  2. I am not noticing the out of order selection option in the dropdown (even on your site). The ONE black space at the beginning of the list is by design so that you can choose this blank value and basically not have that field required.
  3. Is a problem in my code as to how I am checking for a null or undefined value.

So number one and three are valid bugs that will be addressed in the next release.

Hello again Robert-   All my testing with eSearch today has been through WAB dev 1.1.  It is working perfectly there.  When I download and deploy to my own web server everything works great except that I can no longer get a drop down menu for my unique values searches.  I can still type in the search box (intended for menu) and get an accurate result, and all other searches included spatial and other attribute searches are working without a hitch.

I thought i saw something previously about this on the forum but could not find it. Thanks for any help

Amy,

I am not sure if this will help, but I had the exact same issue. Robert asked me to clear my browser cache, and then the unique list show up.

You may want to download the latest version of Google Chrome (version 42) and then press <Shift><Ctrl><del> to clear the browser cache from the beginning of time.

Then reload your website.

Hope this helps!

Thanks for the information. That makes sense now that the blank field is meant to be the "optional" use.

I went and rechecked the drop-down list and discovered that it's just two choices in the list that somehow switched places in terms of alphabetical. So you aren't getting the same two out of order?

Champion Trees: Paper Birch switched with American Chestnut

A similar switch occurred in the crimes layer as well.

Thanks for all of your help.

Yes, that was it! I thought I had seen something. Thank you- All my issues solved today!

Amy,

   Tapas is mostly correct. But he forgot about the the issue he has initially setting up a proxy. A proxy is required once the app is deployed to your own server (the proxy is provided internally in Node JS when working in WAB Dev). So you need to get a proxy setup on my web server and in your WAB apps main config.json you need to assign the proxy url.

Esri/resource-proxy · GitHub

Luke,

   No on my end using your test site all the drop down options are in alpha order and there is only one blank space.

Then that's really odd how only one of them is switched on my end (even since we're using the same test site), haha. I guess I'll have to keep at it. I'll show how it looks on my end just so you can see.

switch1.png

Here's Paper Birch at the top

switch2.png

And here's American Chestnut where Paper Birch should be. I'll keep looking into what might be causing the issue. I really do appreciate all of your help.

Thanks.

Hi Luke,

Your test website is working fine:

Here is how your unique list looks when I open your website at my end:

UF2.jpg

The listings are in the correct Alphabetical Order.

Luke,

   This is what I always get. Tested multiple times at work and now at home.

Preview.jpg

And then something told me to test on a different browser and in Chrome I see the issue (I use FireFox all the time).

Preview2.jpg

Now I can look into this further.

Version history
Last update:
‎11-22-2022 07:31 AM
Updated by: