We are in the process of upgrading our server from 9.3 to 10.3, and I am attempting to re-create our flex apps using the App Builder. We are running a federated server and I am building apps via Portal. The first thing I noticed is with App Builder is that there is no "search by attributes" functionality, which is really the fundamental use in all of our flex apps. Typically users start by searching an address (located in an attribute field) or a facility ID #. Essentially users enter a value and the attribute table is searched and matching features are highlighted...
Regardless, this functionality does not appear to be there "out-of-the-box", though one can configure the Query widget or use the Geocoding widget to approximate it. I started with the Query widget, thinking it would be the easiest to set up and maintain, however there is some bug or problem with the data that I and Tech support cannot figure out. So I'm now looking at using the Geocoding widget to perform the search task.
In researching this, I am a little confused and hoped some of you could verify my understanding of the situation. As I understand it:
1. in order to use the geocoding widget, I will need to build a locator for each field and feature class I want to search. These different locators will be able to be selected via drop-down in the entry box of the geocoding widget. So for instance, if I want users to be able to search by Property ID, Owner Name, and Place name, I will need to build three locators for this one widget. Is this correct?
2. I've only built an address locator once and it was a long time ago. In reading through the resources, it seems like any locator that is built is considered an "address locator", even though it may use an attribute field instead of geometry to identify a feature. Is this correct or do I need to be looking at something else? For instance I may need to have manholes "searchable" by manhole ID number, which actually has little to do with geography. And "address locator" doesn't sound like the correct tool for this purpose.
3. As values in the attribute table (or a joined table) change, does the locator need updated manually, or will it always read the data dynamically?
Thanks for the input. This is a bewildering workflow for what should really be out of the box functionality...
Wow, no responses... Perhaps I'll ask a very slightly related question: Is there a way to use the Geocoding Widget without building an address locator? Its looking like that is the widget I will need to use, but my data is not set up correctly for use with a locator. Any thoughts?
Unfortunately, I am limited to the OOTB tools included in the App Builder for Portal. I don't have the skills or support to build / modify an app myself. (as ever, I am a geographer, not a programmer!). It would be nice if the OOTB tools were a little more fully-featured or configurable.
Thanks for the input!
I'm in a similar situation - and like you, I'm not a programmer.
I was able to use the out-of-the-box query widget to do set up a search-by-parcel number query, which I would imagine is similar to what you want with your facility ID. It's not as clean as the eSearch widget I use in our Flex apps, but it does work for us.
I know that doesn't resolve whatever technical issue you're having with Query, but I just wanted to reassure you that it does work. Here's a screen-shot of how I have it set up:
Hi Lon & Jacob,
I've been in touch (for weeks) with Tech Support and they now tell me this is a server-side bug. I believe the issue is that the data I need to query is an SDE Feature Class joined to an SDE table, and that is creating an error somewhere.
For what its worth, the query widget appears to locate the value in the table (it says that there is one feature identified), but then immediately throws a generic "Query Error!" message, I believe when attempting to highlight and zoom to the feature.
Tech Support has a temporary workaround involving exporting the data to a separate file GDB. This is fine in the very short term, but is not a good long-term solution (kinda negates having a server if you're just posting a copy every so often, right?).
So this is all to say that if the geocoding (or other) widget offers a more immediate and permanent solution, I would consider it.
Sean, I was having the same appbuilder "Query Error!" with map services which contained a join to a table. I was able to remedy this by creating a database view for the map service rather than a join. Works just fine now. Hope this helps!