Using a non spatial table in a workflow
Hi, this is my first post so I hope that I am using this area correctly. Please feel free to tell me if I am not.
I am new to Geocortex Essentials.
I have a non-spatial table in Oracle that I want to access in a workflow, basically it is a Gazetteer without a spatial column.
Is there a way that I can do this ?
I notice that the Query Tool only allows you to put in a link to a rest layer
Although I have added my layer to my mxd file it does not seem to appear in the Rest list of layers.
Have I done something wrong when configureing the layer in ArcMAP
Thanks for your help
-
Chris,
If you have ArcGIS 10, you can add tables to your service. Like this example. For some of my workflows, I create a config table and put some of my form options in it. Maybe that's what you are already trying.
/customer/servlet/servlet.FileDownload?file=00P6000000e881CEAQ
0 -
Hi Sonia,
This looks exactly what I want. I will have a go and et you know
Thanks
0 -
Hi Sonia and thanks for your answer.
I´m trying something similar, but the tabels aren´t showing. I´ve attached a screen dump from ArcEditor and the ArcGSI server directory. Could you explaing, what you´ve done exactly in order to get tabels to work.
First a scrren dump from ArcEditor with non-spatialm tables added
/customer/servlet/servlet.FileDownload?file=00P6000000e8838EAA
Now the service page from ArcGIS server.
/customer/servlet/servlet.FileDownload?file=00P6000000e883DEAQ
0 -
Kare,
I'm not sure. I tried adding tables from a variety of sources and didn't have any issues.
Data types
The following data types are available:
ArcSDE geodatabaseFile geodatabaseMicrosoft Access (nongeodatabase)Personal geodatabasePlug-in custom data typesQuery layersSDCShapefileRasterTable from text file or OLE DB workspace
My guess is that you added the tables to an existing msd - refreshed the map service - looked at the results - and didn't see the tables - Maybe you need to refresh the rest cache -
to do that go to (http://%3cyour%20server%3e/arcgis/rest/admin) http://<your server>/arcgis/rest/admin enter your username/pwd and refresh the rest cache.
0 -
Hello:
I think the tables need to be in a place accessible to the IIS. Try putting the tables into the SDE geodatabase and then republish the service.
J.
0 -
Hi Sonia and "Solano" and thanks for your reply.
It seems I´ve made a mistake forgetting to install the Oracle client software along side the ArcGIS server. Once the client software where installed, the tables where available.
Regards
/Kaare
0 -
Jimmy,
The tables do not need to be in the Geocortex site rest endpoint in order for workflows to access them. So lets say you want to get the values for a combobox from one of your tables
In your Task URL : http://kgisccprsoc3/ArcGIS/rest/services/MSD/Parcel_Info_msd/MapServer/2 - that would query KGIS.VIEW_PARCEL_ADDR_OWNER
You want to get the owner_names where it is not null (you probably don't have any nulls in this table - Its just a good example for the case where you are querying a field that does have nulls and you don't want them to show up in the combobox)
Where Clause OWNER_NAME IS NOT NULL
Display Field: OWNER_NAME
Value Field: OWNER_NAME
You probably know this, but, make sure the variable for the combobox is an object not a string.
0 -
Sonia
Thanks for the info. I will try that in my workflow.
I know this topic is under workflow but, can I use the SDE view (KGIS.VIEW_PARCEL_ADDR_OWNER) for my Global Search? Currently I using a Parcel polygon file with a joined table in ArcMap. The search using the layer with a join is very slow.
Thanks
Jimmy Brink
0 -
Chris you should try a query layer (ArcMap->File->Add Data->Query Layer). It works similar to a view, but you can publish it so it's available through the REST endpoint under tables. It's also very handy for getting a distinct list of data or other complex SQL that may need to be done.
0 -
I'm guessing many of you are doing the same thing.
I have a non-spatial table with ~50,000 indexed records and exposed via a ARCGIS rest end point. (Let's say this is called Table A)
I created a search form in workflow to select any number of records from Table A (anywhere from 1 to 200 records) The resultant featureset (COUNT_IDFS) has an attribute called "Count_ID" which I use to query a spatial layer.
I use the "Get Attribute Values" activity on the COUNT_IDFS to get a list of "Count_ID"s and then use the "For Each " Activity to rebuild a string so I can query and select from a spatial layer.
The query string looks something like this " COUNT_ID = '123123' OR COUNT_ID = '456456' OR COUNT_ID = '456456465' etc.
As you can image my query string can be very very long if I have 200 records from my non-spatial query.
Is this really the best way to select spatial features from a non spatial table? I'm concerned my query string is just too long.
0 -
Hi Kenneth,
You could instead format your query string in the For Each activity to build it like "COUNT_ID IN ('123123', '456456', '456456456',...)". This would probably cut out close to half of the characters in the query string (depending on how many values there are).
-Victoria
0
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.
Kommentare
11 Kommentare