Skip to Content

Geo Heatmaps in SAP Dashboards, Design Studio and Webi

One of the common requirements we see for maps for SAP BusinessObjects is creating geographic choropleths / heat maps. In this scenario, you can view common administrative areas or custom territories (country, state, etc) with a single measure at a time. In this article, I wanted to share an approach that my team has been championing with customers over the last 6 months. The idea is to use SAP Dashboards as rapid designer for embedded analytics. Most important, we can use the HTML5 output, not just as Flash. With SAP tools themselves having limited integration, we wanted to figure out a good way to get as close to possible for “design once deploy everywhere” when it comes to maps.

Notice: The instructions in this tutorial rely on third party, certified integrations for SAP. If you are not interested in reviewing solution using third party tools, this may not be an article of interest.

Required SAP Software:
SAP Dashboards for BI4.1

SAP Design Studio

SAP BusinesObjects 4.1 SP03-SP04 preferred

Required Third Party Tools:

Dashboards: CMaps Plugin for mapping

Webi: CMaps Analytics Webi Extension (included with CMaps Plugin)

Design Studio: APOS Dashboard Migrator for Design Studio

The concept of a choropleth is simple! Use the values from a measure to drive color intensity from high to low in a geographic map. This kind of visualization is good for quickly identifying outliers (high and low). However, Choropleths when used against geographic boundaries can be deceptive for several reasons.. View Choropleths and Heatmaps Intro and Best Practices for more details.

Without going into click by click steps, I have highlighted the important steps to produce a US Choropleth across all of the major SAP tools. I provide the project source files below:

Create your Choropleth in SAP Dashboards

(download the complete dashboard template here)

  • Drag the CMaps Plugin map component onto your canvas and open the property sheet
  • Select “Shape Data” and then paste the URL to the World Shapefile. If you have another geography in mind you can our free Shapefile Explorer.
  • In this dashboard template, we have data for World Countries with a few measures (sales,expenses, etc). Additionally, we have a selector that allows you to choose between the two measures using dashboard column insertion.
  • From the selected measure, we calculate the min, max, and midpoint to give us our Choropleth levels. This technique grants you with complete control over the logic so you can potentially ignore outliers. You can also use this with out of the box maps that ship with SAP Dashboards.


  • I included some sample, colors in the spreadsheet, but if you want custom heatmap colors, you can use this free choropleth color generator
  • As the last step, we bind our colors to the Colors property and choropleth logic to the Limits property, on the CMaps Plugin alerts tab.


All of the above steps can be easily reversed engineered in this free template along with a copy of CMaps Plugin

Now we have our functional choropleth with hardcoded data that we can connect to a live query, or prepare it for use with Webi and Design Studio

Prepare for Webi and Design Studio:
For embedding SAP Dashboards in Webi or Design Sutido, you will need to create an external interface inside of SAP Dashboards using the Data Manager.


For Webi, create an external interface with the following properties:

Range Name: GetReportData

Range: Bind it to the data range containing the raw data for your map. This range will automatically be replaced by a Webi report part data.

Access: Read/Write

For Design Studio, create an external interface with the following properties:

Range Name: Range_0

Range: Bind it to the data range containing the raw data for your map. This range will automatically be replaced by a Webi report part data.

Access: Write

That’s it! Your map is now ready for use with Webi and Design Studio.


Export your Geographic Analytic to the SAP BusinessObjects repository

  • Go to the repository, right click on the new dashboard object, select Properties and get the iDocID and the CUID.

You will need both of these values for Webi and Design Studio publishing. APOS Dashboard Migrator for Design Studio does have a feature to browse the repository and quickly get this information.

Embed and Capturewebi.JPGView your Geo Heatmap in Webi

This step requires installation of CMaps Analytics Webi Extension

  • Open the Webi Report containing your data
  • Go to Design mode in Webi where you can edit your report layout and objects
  • Select the Webi extension icon on the left icon pane.
  • Paste the Dashboard iDocID and press “Save”. This will load your dashboard object
  • Click in the report to select the report part which you would like to load into your dashboard. The extension will automatically capture what report part you selected.
  • Instantly, only the countries in your report part will appear on the map along with shaded regions

View your Geo Heatmap in Design Studio

This step requires installation of APOS Dashboard Migrator for Design Studio

  • Open Design Studio
  • Add the APOS Dashboard Migrator Component
  • Fill in the connection details for APOS Dashboard Migrator (system name, BOE credentials, etc)
  • Select the CUID from the “Additional Properties” pane.


  • Select a Data Source which connects this component directly to a query. In our example, we created a Universe data connection with a Country and some measures:


  • Fill in the external interface definition which will load the contents of the query into the Range_0 external interface we created in our dashboard.

{“send”:[{“range”:”Range_0″,”dataDS”:[“Country Name”,“Population”,”Sales”,”Expenses”]}]

  • Select the dashboard type as Flash or Mobile (HTML5)- This is one of the great aspects of APOS Dashboard Migrator. You can absolutely use the HTML5 version of the dashboard object which does include CMaps Plugin (HTML5 Supported).


  • Preview your dashboard from Design Studio to view your data. Additionally, you can use interactivity, filtering, and even use the map to drive additional events just like any other component.


What’s Next?

We are just scratching the surface for what is possible here, so I am excited to see how customers push us further to simplify and enhance these capabilities.

Be the first to leave a comment
You must be Logged on to comment or reply to a post.