Enhancing BW objects with geo-capabilities
Are you using SAP Analytics Cloud with your SAP Business Warehouse and would like to use geomaps in your stories? And you do not (yet) have any geodata in your BW data?
Then this blog post should be for you!
When talking to customers the next question usually is: how do I get the geodata for my master data? Why can’t I simply use the country codes to build a geomap? Why do I have to add coordinates to my data?
This blog post describes an approach that hopefully answers those questions! It is based on this blog post. Please read the post to understand how geomaps work on BW live connections.
The objective is to allow geomap visualizations based on the country code. In this case the country is a navigational attribute of the customer and both are already available in the relevant composite providers.
Enrich master data
For this we make use of the characteristic 0GEOFEATID, which is the basis for chloropeth layers in SAP Analytics Cloud geomaps.
Now the task is to assign the relevant 0GEOFEATID codes to the country codes. Depending on the number of countries this can be done manually or you can implement a transformation.
(And yes, I know that this is easy on a country level and more complex on region or city level. But in my opinion this is a matter of implementing the fitting BW modelling/transformation logic).
This provides a central country geo characteristic without the need to think about coordinates and detailed geo-encoding. And you can reuse the country object for all other data that contains country codes.
Enhance data model
Now that we have the central country object, how do we add this to our existing reporting applications?
Go to the BI client setting of the customer attribute and select configure it as a geo-characteristic based on the attribute “Country”:
This adds the 0GEOFEATID of the country as a navigational attribute of the customer and now the customer characteristic is geo-enabled!
The last steps are already described in Arno’s blog post: activate the new nav. attribute in the relevant composite provides and add it to the relevant queries. Now you can use the customer as a location dimension in SAP Analytics Cloud.
I hope that his approach shows you how to easily add geo-functionality to your data models without having to do this over and over again.
Once the central objects like country have been prepared you can easily reuse them in your different data models.
Thanks a lot to my colleague Markus Westerfeld for his input and feedback!
Hello Jens Braun , thank you for the great post! May I have a question?
I have stumbled upon an issue with Choropleth maps in SAC and was wondering if you could help me find a solution. Our customer would like to analyse sales in different countries using the Choropleth map but there seems to be some areas that SAC does not accept such as Taiwan, Réunion or Palestine.
I am currently developing a story using only an excel file with countries names and coordinates but in the future we are going to create an ABAP CDS view on S4H (where the sales data lies) and then we will connect it with BW query (where we have the country dimension with the coordinates).
Is there any way to analyse areas such as Taiwan in SAC using the Choropleth?
Thank you very much!