Custom desktop application using ArcReader, how does it work?

5882
6
Jump to solution
02-05-2015 03:36 PM
ChrisCrabtree
New Contributor III

I've been working with GIS for several years now, doing data collection and also using some of the analysis tools with ArcMap but I have a question that’s been puzzling me for some time and I've came to several conclusions and I figured I'd just ask the experts. I work for a 911 center and they have a GIS system. The files are stored locally on each computer, not on a server or online. They have a custom built desktop application they use, I know that ArcReader is running in the background, and the program is using a PMF file. I know that when updates are done to the system they are saved and then exported as a PMF file and then the geo database along with the PMF are copied over to each dispatch station.

My question is, and this is very vague so bare with me, What is used to design a custom desktop application? The application has several search fields, they are blank fields and as long as you type 3 characters it will search the designated feature class in the geodatabase and bring back a box of results. I assume the application is built using visual basic studio along with something that ESRI has to go along with it, but I'm not for sure. I've seen things online such as publisher, and arc objects, but I've never really got a straight answer on it. The reason I'm wondering this is, I would like to learn to build custom desktop applications such as this using the same method if possible. I’m currently in the process of trying to convince my county government that we need GIS across the whole government platform, so far they agree but we are such a small county that we do not have internet and cell service all over the county and for me to convince the government this is something we need, I’m going to have to be able to show that we can have a desktop application where no network service is needed to pull up information such as address, streets, utility lines, and things of that nature. Our 911 center is hopefully going to upgrade their system soon where all the information is stored in 1 location on the server (I know this sounds crazy, our 911 center is still living in the 1800’s) but, what I’m currently looking at is the Local Government package that ESRI offers, I’m going to get the city and county governments to go in together and purchase this, and from what I can see it seems like everything in the GIS world is going to the cloud or based somewhere where you have to have a network connection to access your data, I simply can’t work with that. I know it’s going to be time consuming but in the end there are several agencies where I will have to actually go out to their vehicles and copy over the updated data because they have no way of accessing this stuff over a network.

I know programming isn’t easy, and asking someone to tell me how to build an application sounds crazy in itself, but I’m willing to learn if I was pointed in the right direction. I have taken every GIS related class I can find at all my local community colleges and universities, and I’m fixing to start VB and C+ classes, but I can not find anyone who teaches how to build applications for GIS. It’s always, ArcGIS online, cloud, server based, flex viewer, or something.

Any and all help would be greatly appreciated,

0 Kudos
1 Solution

Accepted Solutions
DougGreen
Occasional Contributor II

I don't know if Christopher is still looking into this since it is a year old. However, I thought I'd share my experience with similar feelings. I feel old fashioned like you with your "disconnected" situation. My experience makes me even more convinced to use custom ArcReader apps or even just the full ArcReader app. Even though we only have a few places with "dead-zones" (no cellular data connectivity), there are more reasons that just that for using ArcReader with local data stored on the hard drive.

  1. Performance
    1. I have never seen a map with lots of layers (as are required by our utility field staff) perform as well using published ArcGIS Server Map Services over a cellular connection as you can achieve using local data through a local app.
  2. Minimal Licensing Costs
    1. Only those creating the data and maps require licenses
    2. Those utilizing the maps in the field don't require a license to view and interact with the data
    3. Some say that web mapping applications provide this benefit as well but that goes back to the performance improvement mentioned in item #1.
  3. Automated updates
    1. For our field users, we provided them with shortcuts .bat files that are stored on a network. Once a week or day, they just bring their laptop into the office, connect to Wi-Fi or ethernet and run the .bat file. The .bat file contains XCOPY commands to update the files on their local machine. This takes minutes and they have updated data and maps and we don't even have to touch their machine.
  4. Emergency Safe
    1. All we here from our Fire and Police and other Field Staff is that everything has to work wherever they are. They want their maps even in the case of a cellular outage or internet outage. Local data and maps continue to work when other vulnerable systems are down.
  5. Focused Customizations
    1. While we do have many users that use ArcReader in the field, we have internal uses of custom ArcReader applications that allow a focused database application, such as our addressing editor, to be map enabled without the user having to switch between two applications. We do not even require a license to use it--only to publish the pmf. While this use does lend itself to a web mapping application, we have found that the customized ArcReader Control built into our app is more reliable than the browser control, running a web mapping application since the browsers are updated more often.
  6. Longevity
    1. Even though you will hear talk of ArcReader being old technology and that it will go away, I am not hearing the same thing from ESRI. If you go right now to the latest download page for ArcReader, there is a link for the brand new ArcReader 10.4. Esri is currently keeping this app up and running with the other desktop apps. I haven't heard them issue any plans of deprecating it except for on older server operating systems.

I have had several people doubt my use of it, claiming that it is old fashioned or clunky. All you have to do is show them a side-by-side comparison of a web map with the same layers in it and ask them which one performs better and has more functionality. TRUE, it doesn't look as fancy and new as web mapping applications built using webAppBuilder, but for the time in setup and maintenance, reliability, and low cost, I haven't found anything better.

View solution in original post

6 Replies
MarkBockenhauer
Esri Regular Contributor

Christopher,

It is possible to build custom applications using ArcReader.  To do so you need ArcGIS Desktop and the Publisher Extension... as well as Visual Studio.

Here is a link to the basic starting point.

ArcGIS Publisher | Customizing ArcReader

Here is some more information specific to the PublisherControls  that you can build custom ArcReader applications with.

Publisher Library Overview

Mark

0 Kudos
KarunyaLakshmi
New Contributor II

Actually i use the desktop application across the lab ,

that is something related to intranet due to some security purpose,

It is useful to know how to retrieve the data from the database (Visual Studio 2013 --> VC# and SQL SERVER)

and manipulation of the data after retrieving from the database .

If you know c# or java script useful for you to proceed further,

Mainly .pmf uses .GDB file to store the data .

Even i am also searching solution in the case of Online or cloud based ,

if any idea related to this forward to my blog is appreciated i am in needy.

Karunya Lakshmi's Blog

0 Kudos
DougGreen
Occasional Contributor II

I don't know if Christopher is still looking into this since it is a year old. However, I thought I'd share my experience with similar feelings. I feel old fashioned like you with your "disconnected" situation. My experience makes me even more convinced to use custom ArcReader apps or even just the full ArcReader app. Even though we only have a few places with "dead-zones" (no cellular data connectivity), there are more reasons that just that for using ArcReader with local data stored on the hard drive.

  1. Performance
    1. I have never seen a map with lots of layers (as are required by our utility field staff) perform as well using published ArcGIS Server Map Services over a cellular connection as you can achieve using local data through a local app.
  2. Minimal Licensing Costs
    1. Only those creating the data and maps require licenses
    2. Those utilizing the maps in the field don't require a license to view and interact with the data
    3. Some say that web mapping applications provide this benefit as well but that goes back to the performance improvement mentioned in item #1.
  3. Automated updates
    1. For our field users, we provided them with shortcuts .bat files that are stored on a network. Once a week or day, they just bring their laptop into the office, connect to Wi-Fi or ethernet and run the .bat file. The .bat file contains XCOPY commands to update the files on their local machine. This takes minutes and they have updated data and maps and we don't even have to touch their machine.
  4. Emergency Safe
    1. All we here from our Fire and Police and other Field Staff is that everything has to work wherever they are. They want their maps even in the case of a cellular outage or internet outage. Local data and maps continue to work when other vulnerable systems are down.
  5. Focused Customizations
    1. While we do have many users that use ArcReader in the field, we have internal uses of custom ArcReader applications that allow a focused database application, such as our addressing editor, to be map enabled without the user having to switch between two applications. We do not even require a license to use it--only to publish the pmf. While this use does lend itself to a web mapping application, we have found that the customized ArcReader Control built into our app is more reliable than the browser control, running a web mapping application since the browsers are updated more often.
  6. Longevity
    1. Even though you will hear talk of ArcReader being old technology and that it will go away, I am not hearing the same thing from ESRI. If you go right now to the latest download page for ArcReader, there is a link for the brand new ArcReader 10.4. Esri is currently keeping this app up and running with the other desktop apps. I haven't heard them issue any plans of deprecating it except for on older server operating systems.

I have had several people doubt my use of it, claiming that it is old fashioned or clunky. All you have to do is show them a side-by-side comparison of a web map with the same layers in it and ask them which one performs better and has more functionality. TRUE, it doesn't look as fancy and new as web mapping applications built using webAppBuilder, but for the time in setup and maintenance, reliability, and low cost, I haven't found anything better.

ChrisCrabtree
New Contributor III

Doug I hope you get this message. It's been a long time since I posted on here, and I was once again trying to find a solution to my problem. I'm in the same boat. I have Fire/EMS/Law Enforcement/ and EMA that want maps, and can't rely on cellular service. For one the city and county government will not pay for the data usage, and even if they did our cell service is so bad in our county it wouldn't work half the time.

EMA needs everything offline, all the surrounding county ortho's in case of search and rescue, and law enforcement / EMS needs up to date addressing for the calls they go on. But I'm glad you mentioned the .bat file. I was also looking for a solution to update the data. I wanted the employees themselves to be able to update the data, but it was looking like I was going to have to remote in with a RDP session and update the files manually.

Right now any of our county employees can access the GIS data using ArcReader, but the search capabilities are limited. We had a vendor to create a desktop application that uses ArcReader in the background, but I've looked and looked and can't find the best solution to build my own application. If you try searching for ArcGIS applications the only thing you can find anymore is cloud / online based solution.

Very glad to see I'm not the only with this type of scenario going on. Thanks Doug!

0 Kudos
DougGreen
Occasional Contributor II

Christopher, it took me a week to see this but I'm glad that was helpful. It sounds like you are still trying to find a way to either create a custom app or something. I am trying to figure out how to get you my contact info without leaving it out there for all the spammers. You could call the City of Meridian in Idaho and ask for me and I'd love to share what we've been doing in more detail. Just for general info, here is the idea.

  1. Create folder on my c drive that is called ReaderMapFiles
  2. Inside that folder I have a Data, Imagery, and PMF folder and then a bat file.
  3. I put the data that will be in the map in that folder on my c drive and then publish the map to the PMF folder.
  4. I copy the ReaderMapFiles folder to a network share and point the bat file to xcopy from that network share to the local c:\ReaderMapFiles folder with the flag that only copies if the source file is newer.
  5. To set up each individual machine, I only have two steps: 1. install arcreader; 2. run the batch file from the network share

so once a machine is set up, they need to periodically bring the machine (usually laptops) to a city facility and connect to our network and run the batch file (which I place a shortcut to on their desktop).

As far as a custom arcreader app, we use ArcObjects .NET SDK and you can focus it down for specific purposes. That is only for a limited few though with very critical and focused workflows. Most of our users in the field are fine with the full ArcReader app.

0 Kudos
AlanTonkin
Occasional Contributor

Hi Chris,

I have been in GIS since 1997 and taught myself how to program in Delphi. It is definitely not the most popular of development platforms and there's also limited help available for it regarding any of the ESRI active-x controls.

Despite this I developed a customised ArcReader application for our company that has specific search and export dialogs. Updating of the data is only done on a quarterly basis and the data is just copied over to the standalone users and to a network share for others that don't go out in the field.

I could assist you by customising my app to your specifications but it would mean communicating over email or Skype to see what your requirements are. I am based in South Africa.

Cheers,

Alan

0 Kudos