Web AppBuilder for ArcGIS | Help - Enhanced Search widget
List of the latest enhancements and changes:
Older enhancements or changes
Check the "Older enhancements or changes.txt" in the download for a complete list.
Older Versions
Can you try replacing the files that are in this zip and see if this resolves the nls issue:
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?
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.
I had to make a couple changes:
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.
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?
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
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.
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