ArcNews Online

Winter 2002/2003
Search ArcNews

E-mail to a Friend

How Esri Technology Interfaces With SAP's ERP Software

click to see enlargementAs demonstrated by the myriad of successful implementations by joint Esri/SAP users, Esri has several methods for interfacing with SAP enterprise resource planning (ERP) software, whether it's a customized GIS application built using MapObjects, a more powerful ArcGIS application, or a Web-based GIS application built using ArcIMS. The City of Richmond, California, is an excellent example of the diverse array of interfacing options for integrated GIS/ERP applications. Here's how the city did it.

Creating Object Relationships Between GIS and ERP Data

At the City of Richmond, all GIS data is stored in a central ArcSDE server. Operational data is stored in the central SAP R/3 ERP system.

The first step in building fully integrated Esri/SAP applications is establishing object relationships between the ERP and the GIS systems--in other words, creating links between GIS spatial data and ERP tabular data.

For each ERP object, such as a record for a utility asset, there is an ERP key: an identification number or some other unique identifier that links common attributes to a record. For instance, a customer ID number may serve as an ERP key for linking all related customer attributes to an ERP object.

Saving the ERP key in the corresponding GIS database creates the object relationship between Esri and SAP; now both systems can tie in to each other and communicate with each other and exchange data objects.

As the diagram shows, linking GIS features to SAP can be approached in three basic ways:

  • Link the feature to an object in SAP via an Object Link ID.
  • Link the feature to an Equipment Object in SAP via an Equipment ID.
  • Link the feature to a Functional Location in SAP via a Functional Location ID.

Some of the data objects and relationships for the City of Richmond are as follows:

Street Segment as Functional LocationStreet Segment feature
Parcel as Functional Location Parcel feature
Building as Functional LocationBuilding feature
Streetlight as EquipmentStreetlight feature
Traffic Signal as EquipmentTraffic Signal feature
Traffic Sign as EquipmentTraffic Sign feature
Storm Drain Structure as EquipmentStorm Drain Structure feature
Storm Drainpipe as Object LinkStorm Drainpipe feature

Aside from the relationships between the above ERP and GIS objects, there are built-in relationships between certain ERP objects that create even tighter integration between the ArcGIS and SAP R/3 systems. For example, when a GIS object is tied to one ERP object, it is by default tied to any other ERP objects related to each other. For instance, by calling up in GIS an ERP record on a storm drainpipe, a user can also access the related or corresponding ERP work order record.

The relevant SAP object relationships at the City of Richmond are as follows:

Work Requests<-->Functional Location (for Street Segment and Parcel Building)
Capital Improvement Projects<-->Street Segment Functional Location
Business Licenses<-->Customer Address

The city uses five applications in which Esri and SAP interface: Visualize Data Manager creates the corresponding ERP object of a newly created GIS feature. It stores the resulting ERP key in the GIS feature record. Visualize Work Manager, Business License, and Capital Improvement Projects applications use ERP keys of GIS features to extract status information from the SAP ERP system. The My Work Place application uses the ERP keys of GIS objects to update the object information in the SAP ERP system.

Software Integration

The My Work Place, Business License, and Capital Improvement Projects Web applications use ArcIMS and are built using Microsoft's Active Server Pages (ASP). Connectivity to ArcIMS is established using the ArcIMS ActiveX Connector while connectivity to the SAP server and functionality from the SAP ERP system are established using SAP's DCOM Connector. The DCOM Connector adds the benefit of empowering the SAP ERP administrator with the flexibility to control the number of connections from the ASP Web application to the SAP system, ensuring optimized performance.

Visual Data Manager
Visualize Data Manager, which is used for data creation and maintenance and requires a richer set of GIS tools, is an ArcGIS software-based application customized using Visual Basic for Applications. The same controls from the SAP Automation Toolkit are used to establish connectivity to SAP ERP and are used to perform specific functionality from the system.

Visualize Work Manager
Visualize Work Manager, which is used for information query and visualization, uses MapObjects and was built using Visual Basic. Connectivity to the SAP ERP server is established using the SAP Automation Toolkit-Logon Control. SAP Automation Toolkit controls are programming building blocks for integrating SAP ERP systems with external applications. Also part of the SAP Automation Toolkit are Business Application Programming Interface (BAPI) controls.

A custom ArcPad application with voice enabling is being used for field data collection and SAP ERP work order completion. SAP ERP work orders are downloaded into ArcPad with a standard BAPI and then uploaded back to SAP ERP after all activities are completed as captured in the field with the ArcPad application using voice to control all commands.

For more information, e-mail or visit

See main article, "The City of Richmond, California, Implements Enterprise Framework."

Contact Us | Privacy | Legal | Site Map