Monthly Archives: December 2008

Happy New Year from the Geodatabase Team

2008 was an exciting year for the team, one of the highlights was launching this blog during the 2008 Developer Summit. Since then the team has enjoyed exploring this new medium by sharing their knowledge with geodatabase users through various posts. While we are thrilled with the comments we have recieved so far we would love to hear some feedback on what you think of the blogs in hopes of improving the blog for users in 2009.

In the spirit of New Years, the Geodatabase Team would like to make some blog specific resolutions but we would like your feedback. 

  • What was your favorite post?
  • What geodatabase topics need more coverage?
  • Are there things you disliked about the blog?
  • How could the blog change to be more useful for you?

You get the idea, any and all comments are welcome and appreciated.

I will end by offering a sincere thanks for your readership. This blog is nothing without user involvement and for that we are thankful for your continued participation.

Happy New Years!

- the Geodatabase Team 

Posted in Geodata | Tagged | Leave a comment

Happy New Year from the ArcGIS Explorer Team

Posted in Uncategorized | Leave a comment

Bad maps are bad for business

By Charlie Frye, Esri Chief Cartographer

Bad maps, unlike bad press, do not garner the sort of attention that can be capitalized upon. Bad maps are strong impediments to gaining mind share, and represent a significant risk to depleting mind share. Why? Bad maps are a visual, i.e., strong, communication method and convey incompetence and poor judgment.

To many of us this is obvious, but we consistently hear from people who are professionals who have to make maps.  Though most would not describe themselves as cartographers or mappers, they want us to help them make a case for better cartography in their organizations. Continue reading

Posted in Mapping | Tagged | Leave a comment

Automation tip for Python-based field calculations

By Charlie Frye, Esri Chief Cartographer

I do most of my data automation in Python–I’m no expert with Python, but I learned the basics a few years ago and that’s served me well. One of the tasks I frequently use Python for is automating the management of attributes, i.e., adding, deleting, and calculating fields.  Continue reading

Posted in Mapping | Tagged | 3 Comments

Happy Holidays from the ArcGIS Explorer Team

The ArcGIS Explorer Team would like to send you our Season’s Greetings in the form of a screenshot showing a snowy Yosemite landscape via a live Web cam seen from within Explorer. We managed to capture the sunset glow at the top of Half Dome the other day.

We’d like to pause for a moment to thank everyone for helping make it such a great year. The coming year holds much more for ArcGIS Explorer, and we’re looking forward to the release of ArcGIS Explorer 900. As usual we’ll be filling you in on what’s new here on the blog.

Season’s Greetings!

- the ArcGIS Explorer Team

The image above was made by using note results that link to live Yosemite Web cams and a display overlay map property. For more info and ideas on creating notes that link to Web cams and other content, see these posts:

Adding Photos and More to Note Popups (April 7, 2008)

Exploring the Collapse of Wall Arch (August 12, 2008)

ESRI User Conference 2008 – Plenary Part I (August 4, 2008)

For more info on display overlays, see this post:

Display overlay, legends, and streamlining the user experience (October 6, 2008)


Posted in Uncategorized | Tagged , , | Leave a comment

Want to be a Presenter at the 2009 ESRI Developer Summit?

The web page for submitting User Presentations is up. 

The ESRI Developer Summit has always been a great productivity event, and we expect the 2009 DevSummit to be even better.  ESRI staff have recently begun preparing about 25% more technical sessions.   Attendees get to hear from and interact with the product teams and innovative developers who are creating our technologies and putting them to use.  And over the past year, we have heard from you that we need to continue growing user-involvement.  After all, it is a “Summit” for all of us, right?

So here we go.  Share your ideas, present your work, or lead a topic of discussion with the developer community.  If you have content that would be of interest to other attendees, then we encourage you to submit an abstract.

If you are interested in learning more about this opportunity visit the 2009 DevSummit “Share Your Work” webpage.  That page also lists some suggested topic areas, but feel free to be creative.

Once accepted, your assigned conference planner will help get you what you need to be successful.  And then your presentation will be scheduled and promoted on the website, conference materials, and signage.

At this point, it looks like we’re going to have about 10-15 scheduled slots.  The capacity of the room will be between 50 and 70, so it should end up being a more interactive experience if you want it to be.  This room will be part of the “Showcase” area, which is the central hub of the event.  Then in the weeks leading up to the DevSummit, registered attendees will be able to vote so that particularly popular sessions can be moved into larger capacity rooms.

The deadline for submissions is February 6th, 2009.  If you’re interested, let us know right away and we look forward to working with you.

Article submitted by the EDN Team at ESRI.

Posted in Developer | Tagged , | Leave a comment

A little fun with Explorer and Animoto


Posted in Uncategorized | Leave a comment

San Bernardino County Imagery added to World User Imagery map

12/19/08—The World User Imagery 2D and 3D services, CSP_Imagery_World_2D and CSP_Imagery_World, were updated with imagery for San Bernardino County, California. The new map content is 1 foot resolution, orthorectified aerial imagery for the San Bernardino County valley area collected in April 2007, provided courtesy of the County of San Bernardino Information Services Department.

If you have previously used these services, you may need to clear your cache in order to see the updates.

How to clear the cache in ArcGIS Desktop:

  1. Right-click the service in the table of contents.
  2. Click Properties.
  3. Click the Cache tab.
  4. Click the Clear Local Cache Now button, and click OK.

How to clear the cache in ArcGIS Explorer:

  1. Click Tools > Options.
  2. Expand Cache and click Disk Cache.
  3. Under Cache Clean Up, select All Caches.
  4. Click the Delete Cache button, and click Yes to confirm. ArcGIS Explorer will need to restart as part of this process.

How to clear the cache in ArcGlobe:

  1. Right-click the service in the ArcGlobe table of contents.
  2. Click Refresh. It may take several seconds for the cache to be cleared.
Posted in ArcGIS Online, Services | Comments Off

Using the ComReleaser to manage the lifetime of cursors in .NET

Geodatabase cursors should always be explicitly destroyed in a runtime environment that uses garbage collection. The rule of thumb is to always release a COM object as soon as the application is done using the reference. This is especially important with geodatabase cursors because failing to dispose of cursors can put locks on system and DBMS resources; a common symptom of this is having a table remain locked for an indeterminate amount of time after you’ve finished iterating through its rows with a search cursor.

This article in the .NET SDK is a great read for developers using the geodatabase API – it discusses the importance of releasing COM objects (and cursors specifically) as well as a few different approaches. Many .NET developers who have worked with COM interop will be familiar with the static method Marshal.ReleaseComObject, but there’s also a section about an ADF class called the ComReleaser that is really handy when working with cursors.

Here’s an example of using the ComReleaser to ensure a cursor is properly disposed of:

using (ComReleaser comReleaser = new ComReleaser())


      // Instantiate a cursor and manage its lifetime with the ComReleaser.

      IFeatureCursor featureCursor = featureClass.Search(null, true);



      // Iterate through the features.

      IFeature feature = null;

      while ((feature = featureCursor.NextFeature()) != null)


            // Do something.



Regardless of how the code leaves this using block – whether a value is returned, an exception is thrown, or it gracefully exits – the cursor will have its reference count properly decremented.

Posted in Geodata | Tagged , , , | 2 Comments

Creating a Google Gadget with the ArcGIS JavaScript API in 5 minutes

Google Gadgets are small self-contained Web-based modules that plug into
iGoogle. iGoogle is a framework, similar to a portal, which can display
multiple gadgets in a tabular fashion. Similar Web
2.0 portal sites are Netvibes,
My Yahoo
, Pageflakes, and
Windows Live
. As opposed to traditional portal frameworks, these are
very lightweight and do not require the extensive development of a portal
version of your Web applications. Finally, the learning curve is minimal.

These services do not host the content or the Web application, rather they
provide a framework to bring together Web applications from various sources.
For example, a user can customize an iGoogle page to display local weather,
movies, traffic conditions, gas prices, maps, to-do lists, emails etc.

So how does this relate to Web applications made using the ArcGIS JavaScript API?

iGoogle provides a nice framework to display various applications in a dashboard
like fashion. Because iGoogle uses IFrames to display content from each gadget,
and is a lightweight framework, you can port existing applications with minimal

You can create a gadget in 2 ways: by authoring a mixed-content XML file, or by
simply pointing to an existing application’s URL. Using ESRI’s
ArcGIS JavaScript API
, you can author a mixed-content XML file that
contains the HTML, JavaScript, and CSS code for a fully functional application.
As for Web applications created using the ADF (either .Net or Java) you can use
an IFrame in the mixed-content XML that points to the existing application’s

Although the gadget is simple to create, you can use it to perform sophisticated
tasks. For example, using various APIs exposed by ArcGIS Server, you can make
use of geoprocessing services, as well as REST services that buffer, project,
etc. You can also use third-party Javascript frameworks like
and jQuery in your gadgets.

For more interaction and functionalities, Google offers a
JavaScript helper library
. This provides convenience methods and
advanced tools that can do things like store and retrieve user personalization.


This tutorial shows how to create a simple URL-based gadget from an ArcGIS
JavaScript API sample that
calculates a service area

Follow these steps:

  1. Sign in to with your Google Account, then click on iGoogle on the
    top right corner of the page.
  2. Add a new tab for developing gadgets and give it a name, for example “ArcGIS”.
    To add a tab, find the active tab, click the dropdown arrow, and choose “Add a
  3. Add these two developer gadgets to your new tab. With the tab open, just click
    the links below and click “Add it now”:

    After adding the tab and developer tools gadgets, your iGoogle page should look
    like this:

    iGoogle page with developer gadgets

  4. Copy and paste the code below into the Google Gadget Editor. Then click File >
    Save and save it as EsriServiceArea.xml.

    <?xml version="1.0" encoding="UTF-8"?>
    title="ArcGIS JavaScript API Service Area sample"
    <Content type="url"
  5. Now you’ll add that gadget URL to the My Gadgets tools to have a full preview.
    Here’s what you need to do to add your newly created gadget to your iGoogle

    • Right click on the link with the name of this gadget file, in this case
      EsriServiceArea.xml, and copy the target URL.

      Copying the URL

    • Paste the URL into the My Gadgets input box and press the Add button. This will
      add the gadget to the current tab in your iGoogle. For development and quick
      previewing I would recommend not caching it so that your changes can be viewed
      instantly upon refresh.

      Pasting the URL

You should now have a live preview of your gadget that looks something like


In the above image we gained some screen real estate by configuring the tab to
have two columns instead of three (you can set this manually in the tab
dropdown > Edit this tab). Also, thanks to the view=”canvas” attribute we
included, you can optionally maximize this gadget to fill the whole page.

This shows how easy it is to port an existing application or Web page based on
ArcGIS Server to a Google Gadget.

Contributed by Reiman Rabbani of ESRI Professional Services, Charlotte Regional

Posted in Services | Tagged , | Leave a comment