Web AppBuilder for ArcGIS | Help - Identify Widget
List of the latest enhancements and changes:
Previous enhancements and changes:
Check the "Older enhancements or changes.txt" in the download for a complete list.
Older Versions
ATTENTION:
Features:
Rebecca,
A1: The PopUp Only option only has to do with whether that field will be displayed in the results and the popup or only the popup. I am seeing some issues with popups configured for a layer working after the identify widget is used though. I will have to research that.
A2: I am looking into adding a option to add the identify layer from the map or a url but adding all the layers in the map will not be an option I will consider.
C1A: I found a bug there and have addressed it for the next release.
C1B: Did you do any manual editing to the config? Does that particular feature have values for those fields?
C1B - date: Also a bug and have addressed it for the next release.
C2: I will research this.
Robert,
Thanks for 1.1.0.1. Would you rather we post issues (if any) here, or in the Roberts Custom WAB Widgets thread?
Cheers,
Barnaby
Start a new thread please, that way this post does not get 20 pages like the LocalLayer widget
Will do.
hi Robert,
I can't get your live preview site to display in IE 11
it is working in Chrome however.
I have cleared my IE cash...
any ideas?
Glenn,
I just tested in IE 11 and have no issue see attached image:
Try bringing up F12 developer tools and see if the console lists any error and check the version mode (indicated in the image).
here is what I see in the F12 display.. error says access denied.. but I can get in with chrome so it can't be our firewall...
Glenn,
And what about the version mode? Second part of my question?
what I sent is what I see, my toolbar looks different.. not sure why or how to get the black bar you have.
how about this.. I found a bar along the side
Glenn,
That is an issue. You are using IE 11 in 5 document mode. Change document mode to edge and it will work
still blank
I think I have compatibility on...
here is what f12 gives me
Glenn,
Compatibility mode is an issue. Se this link on how to turn it on/off
I turned compatatility off and still nothing showing up
as you might have guessed the webappbuilder doesn't work either.
any ideas on how to trouble shoot this.
could it java runtime client? or some other setting?
I will try to reset the browser back to default settings.
Glenn,
If resetting to default does not work then give tech support a call
See my post from March 2, 2015 in this thread
for an Excel spreadsheet containing RegEx script commands for use in Notepad++ which quickly convert the XML config code from the Flex version widget into json code for the WAB version of the widget.
Robert,
just a followup
I had to rebuild my pc.
all is working well now.
something in the profiles was blocking my domain authentication.
thanks so much for your ideas.
Hey Rob,
Haven't had the chance to try this widget yet, but does it have the ability to view attached photos in-window?
Nathan,
No currently this widget does not support attachments. It does support links to images, url links, and the such.
Robert Awesome Widget.
After loading your widget and adding the button and configuring it, it worked well.
I did notice that the Web Appbuilder identify is still popping up as well. How do you disable the Web Appbuilder identify and just have your widget Identify as the only primary one?
thanks.
Luke,
I can not say that I am seeing that issue when testing... Are the popups configured on your web map from AGOL?
I went into AGOL and removed the popup on all they layers and still got the Web Appbuilder identify to popup. I want to the your Identify widget and removed the layer, they add it back. I am still getting the Web Appbuilder identify. after i re-added they layer i changed the name in your Identify widget and i noticed that the Web Appbuilder Identify is also displaying the same name that i changed to.
Luke,
maybe screenshots will help me understand.
Here is a screen shot after i click on a parcel with your identify too.
It seems as i have to move the mouse away from the parcel after i click on a parcel using your widget or Web Appbuilder Identifier will popup or if I hoover over the parcel or your identify window that i clicked to identify the Web Appbuilder Identifier popup
Luke,
OK now I understand. What you are calling the Appbuilder Identifier is the maps popup window. The Identify widget is developed to use the maps popup window in its operation as will as list the results in the widgets result list. If you don not want this behavior then you can configure the Identify Widget to prevent the popup. To do this uncheck the Enable Mouse Over Graphic Info Windows and Enable Mouse Over Result Info Windows option in the widgets configuration UI.
Luke,
As Robert wrote, you can use something like this in your config_identify.json file:
{
"identifylayeroption": "visible",
"identifytolerance": 5,
"defaultzoomscale": 5000,
"keepidentifyactive": true,
"returngeometryforzoom": true,
"enablelineselect": true,
"enablefreehandlineselect": true,
"enablepolylineselect": true,
"enableextentselect": true,
"enabletriangleselect": false,
"enablepolyselect": true,
"enablefreehandpolyselect": true,
"enablecircleselect": true,
"enableellipseselect": true,
"enablegraphicclickinfo": true,
"usemaptime": false,
"infoautoclosemilliseconds": 2000,
"autoactivatedtool": "point",
"disablelayerdropdown": false,
"disablealllayerschoice": false,
"replacenullswithemptystring": true,
"enablemouseoverrecordinfo": false,
"enablemouseovergraphicsinfo": false,
"layers": {
Regards,
Barnaby
Yep,
those options are configureable in the widgets setting UI as checkboxes with the labels I mentioned.
thanks for the suggestions Barnaby and Robert!
Hi Robert,
Just configured this widget and it works great! Thanks for the contributions! Anyways, I decided to use this to account for the oddities that I was seeing with the local layer widget and I think this will be sufficient. At this point I'm trying to make a small modification to the size of the form during the initial load. I want the height to be larger. I've been looking at the style.css and changing the height, min-height (lines 4 & 6), and another height tag at line 26, but I have not seen any changes. Is there any way to change the height of the widget so that more information appears in the list? Am I in the right area for this?
Nick,
You set the widget height and width in the main config.json
{
"position": {
"left": 55,
"top": 45,
"width": 400,
"height": 410
},
"placeholderIndex": 1,
"id": "_5",
"positionRelativeTo": "map",
"name": "Identify",
"label": "Identify",
"version": "1.1.0.1",
"IsController": false,
"uri": "widgets/Identify/Widget",
"config": "configs/Identify/config_Identify.json"
},
thanks!
Another potential solution for you is to move the widget so that it is accessed from the upper-right corner of the app as so:
Then the height of the ID widget window is automatically the height of the app in your browser. Hope this helps...
so before version 1.1.2 i could have just copied over the identify widget folder and not had to re-do the layers? on every release i have been deleting the identify folder in clien/stemapp/widgets folder then moving the new version.
Luke,
That is still best practice. But actually removing the identify widget in the WAB user interface also removes the apps/###/configs/Identify/config_identify.json for that particular app, and that is the file that needs updating. If you just overwrite the Identify widget folder in the apps/###/widgets folder then it will continue to attempt to use the apps/###/configs/Identify/config_identify.json and that is an issue. For new apps you build just replacing the client/stemapp/widgets folder is fine.
Maybe I found a bug?
From my understanding, the "Add Exclude Identify Layer " option would seem to allow us to exclude one layer in a service with multiple layers, for example let's say I have 10 layers. One layer is the County as a polygon. So it's layer id 10. Every time I click identify in the county, of course, the entire county highlights. So it's useless and I want to exclude it. This should work right? When I add it (http://ourserver/arcgis/rest/services/lTheLayerName/MapServer/10) it breaks Identify entirely. It says No results found. Apparently it excluded the entire service. Here is my workflow: I put this service into a webmap, then added the webmap in Developer Edition and have been adding and configuring your lovely widgets (eSearch, Identify etc). So currently the whole county highlights in Identify. Thoughts? Thank you..
Kevin,
I need to look into this. On thing that I know works is to use the layers 'name' in the exclude. So using your rest endpoint find the name of the layer in the map service and use that in the exclude dialog under name instead of url.
Robert I tried that. It would not let me continue. I guess the form did not see it as valid input. It only let me use a URL.
If you would like to call me to test further I would be glad to help.
Kevin,
Can you share your config_Enhanced Search.json for review?
Hi Robert,
I went to send you a personal message...it said I was not connected? I don't see how to connect to you unless that means you follow me? I did Endorse you though.
Config file is here: http://www.thempc.org/sitesupport/SAGIS_DATA/config_Enhanced Search.json
Yes, I found this problem last week. If a layer in a service is excluded, all other layers in the service are also excluded.
Excluding layers also has issues in the Flex version of the widget:
Kevin,
Sorry I meant the config_Identify.json and this url does not work http://www.thempc.org/sitesupport/SAGIS_DATA/configs/Identify/config_Identify.json
Ha! I was wondering the same thing myself, but kept my mouth shut...
Here's the link Robert - http://www.thempc.org/sitesupport/SAGIS_DATA/config_Identify.zip
Apologies for the GeoNet question I just wasn't sure how to message Robert. If anyone wants to contact me just follow me.
Kevin,
I was hoping to see some of your attempts to exclude layers in the json, but there is nothing there but the default ones that come with the widget.
Here is what some named excludes look like that are working fine for me.
{
"name": "County Fill"
},
{
"name": "County Outline"
},
{
"name": "Parcels"
}
Edit:::::::
It is now working. Using the layer name.
It really wouldn't validate / save at first. I think however that was because I first entered a URL, then deleted URL and entered a layer name. I think that specific workflow may have been relevant to the form validation. If it matters, it was also in IE 11. But... it's working now!!! Thanks Robert and Barnaby.
Robert,
Bingo. Problem solved. When a service has multiple layers, one of which you want to exclude from ID results, just add the layer "name" from REST endpoint, and NOT the layer URL, into the "Add Exclude Identify Layer" GUI. Case closed for WAB version of widget!!!!!!!!!!!!!!!!!!!!
Is there any chance that this method will work for the Flex widget?
Many thanks,
Barnaby
Edit: "Is there any chance that this method will work for the Flex widget?"
-The answer is YES!!!!!!!!!!!!!!!!!!!! I will add this answer to the Flex thread. Good job, Robert!
Barnaby,
I think it will.
Hi Robert,
This is a very interesting widget which is very much same as Identify in Flex.
I have couple of thoughts which will help us and everyone to use the WAB functionalities between the Communication between the widgets.
In the results that we display, can you also look into to show the results into the Attribute table.
And also is there any configuration that helps to enforce Layers Visibility to the Identify layers.
Thanks in advance.