Enhanced Search Widget Version 2.23.1 - 11/22/22

532143
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

Alexandra Washburn,

   Can you try replacing the files that are in this zip and see if this resolves the nls issue:

setting2.zip

Hi Robert! I just upgraded to WABDE v. 2.5 and downloaded this widget this morning. I'm having an issue when trying to configure the "Update Expression" settings. When I click on the pencil to edit the expression value, nothing happens.

It looks like the search by value tab will not appear unless this is configured. Is there a bug? Or, more likely, did I do something wrong with the install?

Anonymous User

SingleSearchEdit.js is trying to use SingleRelateEdit but it doesn't exist. This file isn't being referenced in the previous version.

Thank you again for your amazing work on this widget!

Sorry that was my WAB 2.5 version file. Try the link again for my 2.4 version ones.

Amy,

   I will have a 2.5 version out today or tomorrow.

Oh cool, thanks! We’re looking forward to taking it for a spin in our test environment when it’s ready.

Anonymous User

I had to make a couple changes:

  • For some reason, ArcGIS Portal 10.5.1 doesn't come with all of the jimu.js files that are present in WAB Dev edition. I had to copy CSVUtils.js from WAB Dev edition and paste it into C:\Program Files\ArcGIS\Portal\apps\webappbuilder\stemapp\jimu.js. Your eLocate widget requires ServiceBrowserRule.js and serviceBrowserRuleUtils.js, and those are missing from Portal, too.
  • In SingleValueEdit.js, you're creating an eSimpleTable object but the module was missing, so I added ./SimpleTable to the define and eSimpleTable to the function portion of the code. Also, I changed line 121 (now 122) from:
html.addClass(this.displayFieldsTable.domNode, "user-values-table");‍‍

to:

html.addClass(this.uservaluesTable.domNode, "user-values-table");‍‍

But after these changes, as far as I can tell from my testing, eSearch works in 10.5.1!

Edit: I now see that CSVUtils.js has to be pasted into C:\Program Files\ArcGIS\Portal\apps\webappviewer\stemapp\jimu.js as welI. As long as CSVUtils.js is in these two locations on the server hosting Portal, eSearch 2.5 works in Portal 10.5.1.

Alexandra,

   That is great news. I will be updating the eLocate and Identify for version 2.4 very soon to remove Portal issues as well.

Robert,

 Thanks for this great Widget.  I think i can (almost) skipping using the query widget.  It looks like i am missing one feature, unless I just cant find it

We build an address search based on multiple fields, each with unique values specified.  In the stock query widget you can set each expression to filter based on all other expressions.  I.e. if the user selects house # 10, only street names with a 10 house number would show in the street name drop down.  This is a very handy feature, is it or could it be in your widget somewhere?

Thanks

Jeff

Jeff,

   It is not currently but it is something I am considering.

Thank you very much, it would be huge for us

Hi Robert , 

is there a solution to make an enhanced search for many layers . Please what about enhanced layer list in javascript ?

Amal,

   The Query Task is limited to querying one layer, so no. What would be the features of an enhanced layerlist widget?

I downloaded the latest widget this morning and am running into a problem. I went through your instruction document and configured the search by value settings, but when I test the actual widget, I am not allowed to type in the search box. I can click in it and I get a cursor, but it won't take any keyboard input. Any idea what setting I've got misconfigured that would cause that issue? My suspicion is that I've got the expression wrong:

Do I need to put anything in the text box to the right of the two drop-downs that select the field and the operator?

Amy,

  You need to check the Ask for values checkbox if you want the user to provide input for that field. If that is not checked then the widget assumes that you have provided a default value in the text box you are talking about.

That did it. Thank you! I have a lot of people who are going to be really excited about this!

Hi Robert ,

I want my layers to be developed .

On Fri, Aug 11, 2017 at 2:41 PM, Robert Scheitlin, GISP <geonet@esri.com>

Amal,

   What does that mean?...

The search field we are using contains nulls and empty string values, however when we configured the widget to "Hide Null data in widget results and popups" there are some that still show up in the drop-down list.

The Expression set to "is" with the "Unique" property.

Is this expected?

Thanks!

Hi there, apologies as I messaged you but probably better to ask a question on here...

I have got the enhance search widget into a test app and have configured searches but when i go to use the widget in the app this is as far as I get with the following error message can you offer any insight?

Thanks 

Gareth

James,

   That is not a null value, it is an blank string. So it will not be filtered out. Also the removal of null happens in the widgets results and popup not the unique drop down list. So the answer is yes, it is expected.

Gareth,

  I have not seen this issue before. Are you adding the eSearch widget to Portal?

Yes to portal, I noted a previous comment stating "For some reason, ArcGIS Portal 10.5.1 doesn't come with all of the jimu.js files that are present in WAB Dev edition. I had to copy CSVUtils.js from WAB Dev edition and paste it into C:\Program Files\ArcGIS\Portal\apps\webappbuilder\stemapp\jimu.js." My error message seems to refer to the same file...

Gareth,

   I am not sure why Portal 10.5.1 did not have the CSVUtils.js on your end as that portal version should be the same as WAB 2.4 and that file is still there in 2.4 and 2.5. It is hard for me to say what the issue is as I do not have Portal 10.5.1. installed.

Anonymous User

Hey Gareth,

Yes, to get eSearch to work in Portal 10.5.1 I had to copy CSVUtils.js from WAB and paste it into Portal's webappbuilder and webappviewer folders. Once you do that, it should work correctly.

I'm not sure why the Portal team chose to leave out so many files from the jimu.js folder. Disregarding the files within subfolders, WAB has dozens, but there's only one file in Portal.

I am getting an error on addign searches.  For some reason, when i include fields, the field list is 

CIP_KEY,PROJECT_NO,

The trailing comma causes AGS to throw "Failed to execute query"

I am not seeing this issue and no one else is reporting this issue. So can you give me some details? 

  1. WAB Version
  2. eSearch Version
  3. Are you configuring using the eSeach GUI or manually editing the config

It doesnt happen on every service. Most work fine.  Its odd.

https://www.mymanatee.org/arcgis01/rest/services/queries/cipquery/MapServer/0

That is the first one i saw it on

WAB built into portal 10.5.1

eSearch version "2.4.0.2", slightly modified for pathing for local hosting in portal

Using the GUI, i was not even aware you could manually edit the config.  I tried include all, and even just adding objectid.  

Hi Alex, do you have the exact location to these folders at all?

Jeff,

   So the issue is that you have an OBJECTID field that has a type of esriFieldTypeInteger  instead of the normal type of esriFieldTypeOID  so the eSearch is trying to add the ObjectId field to the query and it is not finding a field with the type esriFieldTypeOID  and thus it is adding a null. I will work on trapping this error, but you need to look at your layer schema as this is NOT normal.

Its a spatial view.  Using an int field as an objectid is valid.  Alot of our services use them

What is an ObjectID?—Help | ArcGIS Desktop 

Jeff,

  Also if you use the older versions link to get the latest 2.4 version (2.4.1.1) it is compatible with portal without any code adjustments (and now has the fix for the ObjectId issue you are seeing).

For some reason with our portal i have to modify any paths in custom widgets that are ./ or ../ to be a hardcoded fully qualified path (https://www.mymanatee.org/gisapps/widgets/....filename.js') I have no idea why, otherwise it tries to pull the js file from within portal and appends a wab?v2.4 or something to the end

I have to do it with all our custom widgets

Thanks for the quick fix.  Sorry to be a pain, but i had already upgraded to 2.5 to see if that was the problem.  Can you tell me what file(s) the fix is in so i can merge the changes?

Again thank you

Jeff,

   Version 2.5 will already have the Portal fixes (removal of eSearch widget hardcoded paths) in it it is just the ObjectID fix that has not been added.

When using Portal you should use the previous version of widgets (Portal 10.5.1 needs to use 2.4 versions). I the custom widget happens to use a new dijit or core feature of the latest version of WAB then Portal with is the previous version will break.

Anonymous User

Gareth,

For CSVUtils.js:
Copy here: <your WAB Dev Edition install>\client\stemapp\jimu.js
Paste here: C:\Program Files\ArcGIS\Portal\apps\webappbuilder\stemapp\jimu.js
Then paste here: C:\Program Files\ArcGIS\Portal\apps\webappviewer\jimu.js

Robert can confirm 2.4.1.1 fixes the objectid as int from spatial view issue.  thank you!

Hi Robert,

 

Thanks a million for updating your Custom Widgets so promptly for the Web AppBuilder Developer Edition 2.5

 

They were all rock solid back in WAB 2.4.

 

I ran some tests on a few of your Custom Widgets for WAB 2.5.

 

Enhanced Search Widget 2.5, Version 71                             8/10/2017

Enhanced Basemap Gallery Widget 2.5, Version 14            8/10/2017

Identify Widget 2.5, Version 27                                            8/10/2017

Elevation Profile Widget 2.5, Version 16                             8/10/2017

Map Progress Indicator Widget 2.5, Version 9                     8/10/2017

Enhanced Locate Widget 2.5, Version 12                             8/10/2017

Popup Panel Widget 2.5, Version 14                                     8/10/2017

 

Everything is working like a charm in WAB 2.5, except a couple of glitches that I found.

 

To reproduce the problem, I created 2 Web Apps, one using WAB 2.4, and the other using WAB 2.5.

 

Parcel Map with WAB 2.4 using eSearch 2.4, Identify 2.4

 

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

 

 

Parcel Map with WAB 2.5 using eSearch 2.5, Identify 2.5

 

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

 

 

I will go back and forth between these two versions to show you some anomalies.

 

First, let’s try WAB 2.4 where everything works perfectly.

 

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

 

 

When you run eSearch 2.4 to find a parcel, you get a list of nicely formatted hyperlinks.

 

 

The Popup Panel shows the complete list of parcel attributes with their user defined alias names.

 

This is great.

 

 

However, when I copy over the exact same config_eSearch.json file and place it within WAB 2.5 (eSearch 2.5), the formatting of the hyperlinks gets messed up like this.

 

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

 

 

The user defined alias names show up correctly. This is good.

 

Now, let’s examine the Identify Wiget in WAB 2.4

 

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

 

The hyperlinks are formatted correctly

 

 

The user defined alias names show up correctly.

 

Example:

Item Name = APNDash

User defined alias name = Parcel Number

 

 

The Popup Panel shows all the attributes with the correct user defined alias names. This is good.

 

However, when I take the exact same config_Identify.json file and place it within WAB 2.5 (Identify 2.5), the user defined alias names do not appear.

 

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

 

I was expected to see the alias names for all the items.

 

For example, I was expecting to see “Parcel Number” rather than the item name APNDash.

 

 

When I open the Popup Panel, I see that none of the attributes are showing their user defined alias names.

They are all showing the Item Names.

 

 

When I open the configuration panel for the Identify 2.5 widget in WAB 2.5, I see it did not read the user defined alias names. They are all pointing to the item names.

 

I also found an extra “undefined” column that shows up as an artifact.

  

 

So to troubleshoot, I examined the original config_Identify.json file for 2.4.

 

There were 3 components to each item:

 

name

alias

useralias

 

For example, useralias = Parcel Number

 

 

When I compared this to the config_Identify.json file for 2.5, I saw that there were only two components to each item:

 

name

alias

 

The useralias was missing.

 

 

When I tried to enter the User Alias value for the Alias value, it turned up with a blank value.

 

For example:

 

name = APNDash

alias = Parcel Number

 

 

The Alias name did show up, but the value was blank.

 

 

I may be doing something wrong which is causing these issues.

 

Here are the download links for both these apps:

 

WAB 2.4

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

 

 

WAB 2.5

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

 

 

Once again, thank you so much for taking your time to update these custom widgets with every new release of the Web AppBuilder.

 

Your Enhanced Search Widget has gone through 71 updates! This is incredible.

 

The eSearch and Identify Widgets are the two essential custom widgets that go into all our Web Apps.

 

With all the effort you have put in to maintain and update these two critical tools, I feel ESRI should simply incorporate them into their standard Widget Pool. This will be welcomed by the Web AppBuilder Community.

 

Best regards,

 

Tapas Das

Tapas,

   For the eSearch link formatting issue it is a small mistake in the style.css:

.relate-list-item ._title {}
  cursor:pointer;
}

Needs to be:

.relate-list-item ._title {
  cursor:pointer;
}

I will have this addressed in the next release.

I will need to fix and re-release the Identify widget.

Hi Robert,

 

You are faster than the wind!

 

Thanks for the quick fix.

 

Tapas

Hi Robert,

 

Thanks for releasing the new version of Identify 2.5.0.1 so promptly.

 

This fixes my issue with the User Alias.

 

Now everything is working properly.

 

Tapas

Hi Robert,

 

Thank you so much for the code to fix the CSS issue in eSearch 2.5, and the new Identify 2.5.0.1 widget that resolves the User Alias issue.

 

I tested several of your Custom Widgets in Web AppBuilder 2.5 using the 8 different Themes.

 

Enhanced Search Widget 2.5, Version 7 – with CSS fix                   8/10/2017

Enhanced Basemap Gallery Widget 2.5, Version 14                        8/10/2017

Identify Widget 2.5, Version 27                                                        8/10/2017

Elevation Profile Widget 2.5, Version 16                                         8/10/2017

Map Progress Indicator Widget 2.5, Version 9                                 8/10/2017

Enhanced Bookmark Widget 2.5, Version 7                                     8/17/2017

Enhanced Locate Widget 2.5, Version 12                                         8/10/2017

Popup Panel Widget 2.5, Version 14                                                 8/10/2017

 

Each one is working flawlessly, in all the 8 different Themes.

 

 

WAB 2.5 – Foldable Theme

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

 

WAB 2.5 – Launchpad Theme

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

 

 

WAB 2.5 – Dart Theme

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

 

 

WAB 2.5 – Tab Theme

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

 

 

WAB 2.5 – JewelryBox Theme

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

 

 

WAB 2.5 – Box Theme

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

 

 

WAB 2.5 – Billboard Theme

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

 

 

WAB 2.5 – Plateau Theme

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

  

 

Thanks to your incredible Enhanced Search Widget and Identify Widget, our users can instantly get to a parcel out of a File Geodatabase of 1.6 million records, with over 70 parcel attributes and hyperlinks.

 

It just works like magic.

 

These are amazingly powerful web apps that anyone can deploy without having to write a single line of code!

 

Thanks to Moxie Zhang and his team for Web AppBuilder 2.5.

 

This is a solid release.

 

Best regards,

 

Tapas Das

Hi Robert,

Thank you for the eSearch 2.5 version. When I read about the ability to hide null field values from the results and popups, I was hoping the users will not be able to select  the NULL values but I don't think I understood it this correctly. See the image attached. Could you please explain what this new feature does? Thank you,

Lacri Ursu

It prevents null value fields from being displayed in the widgets results and popups (only) it has nothing to do with the unique value drop down list.

Thank you Robert for your response.

Hi Robert,

Great widget...

I was just curious to know if I set the configuration to use "popups from the web map" and I don't enable/configure the popup in the web map itself, does the eSearch widget automatically use the eSearch popup?

Thanks,

James

James,

   No if you configure the layer to use popup from webmap and the layer does not have a popup configured then no popup gets set for that layer.

Hi Robert!

I'm having a weird issue and I'm hoping you might be able to help me out. We've been using the eSearch for more than a year now and it has worked flawlessly the entire time. Our 2.4 Web App is using eSearch Version 2.3. Early last week, the Search by Value ceased working as it had and started returning no results. This search for Survey numbers containing "CS1" should return hundreds of results.

The query it sends to the service should be

Upper(DocumentNa) LIKE Upper('%cs1%')

but instead it is sending the entire query regardless of the entered parameters. 

Upper(DocumentNa) LIKE Upper('%cs1%') AND Upper(SurveyorKe) LIKE Upper('%%') AND Upper(Subdivisio) LIKE Upper('%%') AND Upper(ClerkNumbe) LIKE Upper('%%')

The issue exists in IE, Firefox, and Chrome versions 59 and 60. No errors show in the DEV Console. 

Any guidance you might have would be highly appreciated.

Thanks!

Eric,

   So what changes did you make to your app or data when you started to see this issue?

Robert,

I haven't made any changes to the app since early July and the data structure has remained unchanged as well. I'm a little baffled here. The only change I've made is updating our server to 10.5.1

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