Enhanced Search Widget Version 2.23.1 - 11/22/22

532067
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

David,

   The clear link on the by value tab does not show until there are results to be cleared. You can check which version you have by holding the Alt key and click in the the widget some where.

Robert,

Right, I did not think the "clear" showed up until there is something to clear.  It will not do that.  By clicking on the widget with Alt it says:

Widget Version: 1.2.0.6

Widget is desgined to run in WebAppBuilder 1.3

This enhanced search widget offers the ability to search by a string, geometry and spatial relationship.

Is there a new version of Web AppBuilder beyond 1.2?

David,

   No this is one of the quirks of WAB it is officially known as WAB Developer 1.2 but the actual code is version 1.3.

   Did you replace the whole eSearch Folder?

Robert,

Yes. I did replace the whole folder twice each with different downloads.  I restarted web app builder both times. Removed the widget and restarted. Could it be web appbuilder's issue?

David,

   Your situation is strange. I just downloaded WAB Developer to a new machine and then downloaded eSearch 1.2.0.6 to that machine as well and extracted the eSearch folder to the stemapp widgets folder and it is definitely the correct version with symbology from layer, etc, etc.

sample.jpg

sample2.jpg

Ok, So what I found is.  It does not like existing projects. It will however work on a "new" app.  Suggestions for existing apps?

David,

   OK that goes back to several comments ago then:

https://community.esri.com/docs/DOC-1731#comment-19816

Robert,

Yes that solved the problem. I just had to reset up everything which did not take to long.  Thanks for the help and quick replies.

Robert,

After downloading the widget again and creating a new service, I was able to successfully install the eSearch app. It works great!

How difficult would it be to make it so when you apply a search distance, you can export your results to either a usable GIS file or at least export the table? Does this functionality already exist somewhere?

Thank you, you do great work.

Jordan,

   Yep the export table functionality already exists in the Attribute Table Widgets options menu.

Anonymous User

Robert Scheitlin, GISP​ & the eSearch Crew:   Question, or if anyone point me in the right direction:

Let's say I have an attribute field with links to files.  They are all stored like so:  file://myserver.name.local/folder/filename.pdf

In our legacy viewer I used javascript to trim off the first part,  file://myserver.internalname.local, and replace it with the name of the server, so it would be http://subdomain.publicname.local/folder/filename.pdf.  The reason for this is while 'file://..' links work perfectly fine for IE even IE 11, they do not open in Chrome, as it's a different domain. Hence I trim the name via code, swapping the internal for the external name.  It works.

Now, I get to Builder. Using Robert's Identify and eSearch.

I put the link in the Link the "Identify Link(s)" and eSearch Link settings.   I put {filepath} in.  It of course puts in the URL. But it is not clickable, it will not open, because it is the file:// url.

How can I modify the contents of an attribute for these Links?   In other words, the filepath is a string in an attribute field. How can I modify it for Identify and/or eSearch?  Can I use Regular Expressions in the Link field in the widget settings, to trim the url string?   Or, should I delve into the Identify or eSearch code?   Which approach do you think is quicker and/or do you recommend?

Hi Kevin,

This is what I had to do to get the hyperlinks to work in Robert’s Identify and Enhanced Search Widgets.

I created a new folder named “WEBSITE” under the D drive of my web server.

D:\WEBSITE

I copied the PDF, XLS, and RTF files to this WEBSITE folder like so:

D:\WEBSITE\summary.pdf

D:\WEBSITE\charts.xls

D:\WEBSITE\info.rtf

Next, I launched the Internet Information Services Manager and right clicked on Default Web Site and clicked on Add Virtual Directory…

p07.jpg

I added a Virtual Directory named WEBSITE using:

Alias = WEBSITE

Physical path = D:\WEBSITE

p08.jpg

I right clicked on the newly created virtual directory named WEBSITE and selected Edit Permissions…

p10.jpg

I opened the Sharing Tab and clicked on Share…

I added Everyone with Permission Level set to Read

The folder D:\WEBSITE is now shared with everyone having Read permissions.

This means if my Website URL is:

http://www.Kevin.com

I can enter this URL to view the Summary.pdf file:

http://www.Kevin.com/WEBSITE/summary.pdf

I can view the Excel Table by entering:

http://www.Kevin.com/WEBSITE/charts.xls

I can view the RTF file by entering:

http://www.Kevin.com/WEBSITE/info.rtf

If you could get these links to work, and can view these documents by opening a Web Browser, you are all set.

You can then add an Attribute Item named LINK in your data layer.

This LINK field may contain URLs like:

http://www.Kevin.com/WEBSITE/summary.pdf

http://www.Kevin.com/WEBSITE/charts.xls

http://www.Kevin.com/WEBSITE/info.rtf

You can then configure this LINK attribute to be a hyperlink in Robert’s Identify or Enhanced Search Widget.

The trick is to make sure the D:\WEBSITE folder is added as a Virtual Directory inside IIS, and is shared by Everyone with Read Access.

Kevin,

   If you can change the fields data then I would go with what Tapas details. But if you need to leave the fields value alone and just manipulate the value to remove the file portion then that will need to be done in the eSearch code, just search for this comment in the code "//work with the links now"

Anonymous User

TAPAS DAS​ that's exactly how I had it, for the regular website, and it worked perfectly. Thank you for explaining this in very well-written detail, for anyone else doing this. I have a virtual directory already on IIS, we'll call it WEBSITE.    so previously,  I snipped out the "file://site.internalsite.local/"  ...and replace it with the website url: "oursubdomain.internalsitename.local/".  The virtual directory was needed because the files were on a different server than the website code.  That's a no-no, linking to file:// on a different machine, for security reasons. Browsers will intentionally not open the links as clickable. (You can of course manually open them in a new tab by copy and pasting but my task was making clickable links) Although IE does not obey this rule, and it would have actually worked just having the file:// links.  But, now in WAB, no browsers will open file:// links from WAB.   So, your approach would be perfect, but I can't change the attribute values in our LINK field.  The users can't change how they are doing things and have to keep doing file:// for the time being.

So... my mission is to modify the file:// links with code before they get put into the eSearch popup. I am going to investigate Robert's note on manipulating it in code.

Hi Robert,

I just want to let you know that I love this widget and it has worked well for me so far. I do have a question. I am adding a link using a field as a url parameter in the Search Links section, the weird thing is that when I do this, the field(page_id) shows up in the attribute table of results. I do not have the attribute table widget or pop-ups configured to show this field, it only appears when I add it as a parameter in my url link. I have tested it several times and this seems to be what is causing it. What am I missing? Thanks!! Emily

Emily,

   I will need to look into this but likely the reason is that when you add the page_id field to the link I have to add this to the outFields for the Query and the results layer (or else I would not get that data to use in the link). I need to think about this some more to see if there is anything I can do differently to prevent it from showing in the attribute table widget if someone does not want it to. Bottom line is your not doing anything wrong.

Thanks Robert! It is not the end of the world, I know it can be hidden if the user knows where to show/hide fields, although that is somewhat hidden. I appreciate you looking into this.

Hey all,

I entered some predefined values in the the Update Expression Value window to build the SQL statement, but we have a Zone Type called M&G. The widget doesn't like the "&" sign and it will not search that layer. Is there a way to get around this and search this layer with it being predefined?

Jordan,

   Until I get something in place for the next release and you test M\&G as the value?

After I added it and saved, this is what it displayed when I went ot use the dropdown menu: M\&G

I was able to get it to work by setting the field to Predifined Value "Unique", but using the Predefined doesn't work. Thanks for the quick response!!! You make some awesome widgets!!

Jordan,

   I will likely be changing the way predefined values are setup to address this issue. Glad you go it to work with Unique.

hi

i just went to the esri wab dev site and it appears there is a version 1.3 available.

i am going to install the wab on a new machine.

should i use this new or the one we are currently running (1.2).

any thoughts or advice?

Glenn,

  I always take new versions and install on the same machine in a new folder (i.e. WAB1.3 or something like that) that way I can have older version on the same machine. Then I use the command line upgrade functionality to upgrade all my previous apps to the new WAB version. This does not change your old version it just copies and updates your old versions apps and widgets to the new version in the new folder. I have not begun work on testing my widgets for breaking changes in 1.3 yet so be aware of that.

i will wait for you to do some testing.

i appreciate all you do to help the rest of us.

Any thoughts as to why my default point symbol is not showing up properly in the results window and on the map? It should be the binoculars but it is showing as below.

I have the i_search.png file located in the widgets\eSearch\images folder.

Regards,

Michael

Michael,

   Look in your [install dir]/server/apps/[app #]/configs/config_Enhanced Search.json at the bottom of the file you will find the symbols object and it should look like this

"symbols": {

    "simplemarkersymbol": null,

    "picturemarkersymbol": {

      "url": "images/i_search.png",

      "height": "20",

      "width": "20",

      "type": "esriPMS",

      "angle": "0"

    },

    "simplelinesymbol": {

      "type": "esriSLS",

      "style": "esriSLSSolid",

      "color": [

        255,

        0,

        0,

        204

      ],

      "width": 2

    },

....

Interesting...mine was "widgets/eSearch/images/i_search.png", which is the proper path.

I changed it to just "images/i_search.png" and it worked.

As always, thanks for help Robert!

Regards,

Michael

I am having trouble with the records in the Results tab. After having added additional features using the Add to Current Results, when I use the Remove from Current Results option to remove some, the zoom functionality stops working when you click on an item in the Results tab list. I think the index of the list items is getting messed up when certain ones are being removed from the array. Hopefully that makes sense. I was able to replicate it using your Live Preview Site on Traffic Cameras for I-64 and I-71, Thanks!

Alisa,

   Thanks for reporting this I will have it fixed in the 1.3 release.

Hi Robert,

I created a few test websites using the new version 1.3 of the Developer Edition of the Web AppBuilder.

https://developers.arcgis.com/web-appbuilder

p01.jpg

I was curious to see how your existing Custom Widgets would work in this new release.

I added the latest versions of all your Custom Widgets designed for Web AppBuilder 1.2

Enhanced Search Widget 1.2.0.6                                     11/12/2015

Enhanced Basemap Gallery Widget 1.2.0.2             10/28/2015

Google Street View Widget 1.2                               8/25/2015

Share Widget 1.2.0.2                                                 12/10/2015

Identify Widget 1.2.0.4                                     11/24/2015

Elevation Profile Widget 1.2                                           8/24/2015

Map Progress Indicator Widget 1.2.0.1             10/23/2015

Enhanced Bookmark Widget 1.2.0.1                         10/23/2015

Enhanced Locate Widget 1.2.0.3                         10/23/2015

Popup Panel Widget 1.2.0.1                                     12/10/2015

I also included the following 3

Add Service Widget 1.2                                           11/17/2015

https://community.esri.com/docs/DOC-6263

Add Shapefile Widget                                                 9/18/2015

https://community.esri.com/docs/DOC-6907

Zoom Previous/Next Widget 1.1.1                            5/13/2015

By Larry Stout

https://community.esri.com/docs/DOC-6111

Before adding the Custom Widgets, I edited the manifest.json file of each widget and changed the wabVersion to 1.4

p02.jpg

I made 7 test cases based on the 7 different Themes in WAB 1.3

Foldable Theme

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

p03.jpg

Launchpad Theme

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

p04.jpg

Dart Theme

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

p05.jpg

Tab Theme

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

p06.jpg

Box Theme

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

p07.jpg

Jewelry Box Theme

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

p08.jpg

Billboard Theme

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

p09.jpg

I was pleasantly surprised to find that most of your Custom Widgets work fine in this new version of the Web AppBuilder.

I will share the results of my testing in my next post.

Hi Robert,

There are several new Widgets in WAB 1.3

When I try to add your Enhanced Search Widget 1.2.0.6

p01.jpg

I get this Loading GIF and nothing happens.

p02.jpg

I get the same Loading GIF when I try to add your Identify Widget 1.2.0.4

The remaining Custom Widgets all loaded fine.

The Enhanced Basemap Gallery Widget 1.2.0.2 is working fine on all 7 Themes.

p03.jpg

The Google Street View Widget 1.2.0.2 is working fine on all 7 Themes.

p04.jpg

p05.jpg

The Elevation Profile Widget 1.2 is working fine.

p06.jpg

p07.jpg

However, when I use the Launchpad Theme, I see that the text is missing.

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

p08.jpg

The Enhanced Bookmark Widget 1.2.0.1 is working fine.

p09.jpg

The Enhanced Locate Widget 1.2.0.3 is also working fine.

p10.jpg

The Popup Panel Widget 1.2.0.1 is working fine on all Themes.

Here is a regular Popup.

In WAB 1.3, all the ESRI Popups now match the Style Color! Great job ESRI.

p11.jpg

Here is the Popup information displayed in the Popup Panel.

p12.jpg

This widget will be very useful to us for displaying a long list of attributes without blocking the graphics.

Thanks to Moxie Zhang and his Web AppBuilder Team!

Web AppBuilder 1.3 is a solid release with many bug fixes.

I am delighted to verify that Moxie fixed an important issue with area calculations.

In version 1.2, the perimeter calculation was dropping the last segment while summing up the total length in the Draw Widget.

So a typical city block (1mile x 1mile) was incorrectly reporting the perimeter as 3 miles.

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

p01.jpg

In version 1.3, the perimeter calculations are correct.

It is reporting the correct perimeter as (1 + 1 + 1 + 1) = 4 miles.

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

p02.jpg

This was a very important fix for us. Without this we could not use the Draw Widget for calculating the perimeter of buildings.

Moxie took care of the issue within 24 hours of bringing this to his attention.

I like all the subtle improvements that went into this 1.3 release.

For example, it is a lot easy to read the running Lat/Long coordinates with the shaded background.

p03.jpg

When the display mode is toggled, you get a useful tip:

Click the map to get coordinates.

p05.jpg

A green point marker is placed at the point where the map is clicked, and the coordinates are displayed.

p04.jpg

This product is getting more powerful with every release, and at the same time becoming more user friendly.

Moxie's Team did a fantastic job overhauling the Attribute Table!

The Attribute Tables seems more responsive and robust at version 1.3.

In version 1.2, when you opened the Attribute Table, it would attempt to list all the records irrespective of your current map extent.

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

Here it is trying to display the attributes of all 1377 public schools in Arizona.

p01.jpg

It was possible to limit the listing to only the features within the current map extent.

p02.jpg

When this option was checked, you got back a faster readout.

p03.jpg

In version 1.3, the default option is to Filter the attribute display by Map Extent.

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

p04.jpg

This can be toggled on demand to show all records.

p05.jpg

This simple enhancement at version 1.3 will help us a lot in getting a faster readout from the Attribute Table.

Tapas,

i love how you document everything.

perhaps when Robert sorts out what is wrong with the esearch widget you could document the steps required to upgrade webappbuilder to the new version and the steps you took to upgrade an existing webappbuilder app to the new version.

Robert mentioned using the command line update tool referenced in the esri help but in reading your posts it looks like you are doing a bit more than that.

Hi Glenn,

I will be adding Robert's Enhanced Search Widget 1.3 to create new test cases today.

I agree, it would be a good idea to document all the steps.

This is what I am doing now.

Download WAB1.3 from:

https://developers.arcgis.com/web-appbuilder

Unzip to folder C:\WAB30 (or whatever you want to name this top level folder)

Add all your custom widgets to:

C:\WAB30\client\stemapp\widgets

Make sure you edit the manifest.json file in each custom widget to read:

"wabVersion": "1.4",

Start Node.js with

C:\WAB30\startup.bat

Open Firefox and Launch Web AppBuilder 1.3 with:

http://localhost:3344/webappbuilder

Create New | Default

This launches a brand new 2D web app.

Notice that this first app will have an ID = 2

http://localhost:3344/webappbuilder/?id=2

Next, I am opening the Map Tab, and Selecting my Web Map to point to the ArcGIS Online Web Map that I had previously created. Nothing changes here.

Then I am adding all the standard widgets and custom widgets I would need.

After all my widgets have been loaded, I am exiting the Web AppBuilder.

Then I am going into this folder:

C:\WAB30\server\apps\2

This has a configs folder which holds all config.json files for each widget that I have added to my web application.

I am manually replacing each config.json with the corresponding config.json that I had previously configured with Web AppBuilder 1.2.

For example,

Replace C:\WAB30\server\apps\2\configs\ElevationProfile\config_Elevation Profile.json

with C:\WAB20\server\apps\2\configs\ElevationProfile\config_Elevation Profile.json

where C:\WAB20 was the top level folder for my Web AppBuilder version 1.2 projects.

This means you do not have to reconfigure all your widgets a second time.

This saves a lot of time.

Finally, I am launching WAB 1.3 one more time with

http://localhost:3344/webappbuilder

When I go to edit the first app (APP ID = 2), my new configuration files take effect.

I can now save this app and download the ZIP file and deploy it to my web server.

Hi Robert,

Thanks a million for releasing version 1.3 of your Enhanced Search Widget to quickly.

I made up a few test cases. They include all your Custom Widgets with the exception of the Identify Widget version 1.3 that you also released this afternoon.

Foldable Theme

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

app130.jpg

I like the Edit Result Formatting option that you added similar to your Identify Widget.

p01.jpg

The preview makes it very easy to dial in the colors for the Attribute Label and the Value.

I am applying this simple color scheme to differentiate between the Label text and Value text.

Label Color = RGB (100,100,100) = Light Gray

Value Color = RGB (0,110,0) = Green

Here is how last section of the config.json file for the eSearch Widget looks like:

p02.jpg

This gets me a clean, easy-to-read attribute display.

p03.jpg

Subtle enhancements like this makes it so much easier for the end-user.

This eliminates all confusion between the Attribute Label and the Value, even when the Value Text wraps around.

I like how the Popup information from the eSearch Widget can be shunted off to your Popup Panel Widget when opened.

p04.jpg

This trick will come in very handy when we need to display a long list of attributes without cluttering up the graphics.

I like how my custom formatting shows up in the Popup Panel.

When I close the eSearch Widget, and click on a School, the Popup Panel shows the ESRI Popup that I had configured inside the ArcGIS Online Web Map.

p05.jpg

Now, all the information is showing up in gray. I would have liked the gray-green color scheme.

I had an enhancement request on your Popup Panel Widget.

Would it be possible to add the Edit Result Formatting option to this widget so that I could make the color scheme match what I had configured for the eSearch Results even for ESRI Popups?

The Filter by Map Extent is a great feature now prominently displayed on the Attribute Table.

p06.jpg

This default setting makes it so much easier to navigate through the attribute table listing.

p07.jpg

Launchpad Theme

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

eSearch 1.3 works flawlessly.

app131.jpg

Dart Theme

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

app132.jpg

You have explained that formatting is not possible on the Dart Theme. This is a limitation. At least the formatting works in the Popup window.

p08.jpg

Your Enhanced Search Widget 1.3 is working fine on all the remaining themes.

Tab Theme

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

app133.jpg

Box Theme

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

app134.jpg

Jewelry Box Theme

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

app135.jpg

Billboard Theme

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

app136.jpg

I found one minor issue when you open the By Shape Tab for the first time.

The Select by Point Tool shows the wrong symbol.

p09.jpg

However, the moment you click on this Select by Point Tool, you get back the correct symbol.

p10.jpg

This behavior shows up on all themes.

Thanks for all your hard work in updating this complex widget to make it compatible with WAB1.3.

I was not expecting such a quick turnaround time!

thanks for the steps.

i see you are not using the esri upgrade commandline tool but just manually reconfiguring the apps you have built.

have you tried the tool? i have some alterations to the esri widget that i could like to keep and i was thinking the upgrade tool was the best way to hold onto them without having to manually redo them.

Glen,

  You will lose all changes to jimu.js files and core otb esri widgets when using the upgrade cmd line.

ok so how does the upgrade cmd tool fit into the process?

Robert, after I select the graphical search by point, how can I change the tooltip "Click to add point"?....
I mean...is there a property? or can I force the default tooltip text inside jsapi.js?

Thanks,

Naty

Naty,

   There is not configuration in the widget for this but yes you can do it in the code.

Require

'dojo/i18n!esri/nls/jsapi',

esriBundle

esriBundle.toolbars.draw.addPoint = "something"

Thanks Robert, this is the error I'm getting...I don't know why...
create [widgets/eSearch/Widget] error:TypeError: Cannot read property 'draw' of undefined

Naty

Sounds like you messed up the order of the requires

When a search option drop down is set to 'all' the results do not appear in the attribute table:

Also, the 'Result Item Sorting' seems to remain disabled even when I have a layer that supports advanced queries capabilities.

Paul,

   I just tested the "all" and the results appear fine in the attribute table widget for me...

The layer has to support "supports advanced queries capabilities: OrderBy"

example.jpg

I too can not load the e-search widget, just get the loading giff image and nothing happens

George,

   Are you using the correct version of the widget for the version of WAB you are using?

WAB 1.3 and e-search 1.3,

George,

   Can you verify that the eSearch widget in your particular app is version 1.3 by holding the Alt key and clicking anywhere in the widget?

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