This topic describes how to add a new OpenStreetMap Object to a Screen or a Container and its specific properties.
To create a new OpenStreetMap:
Open a Screen in Design Mode.
In the Screen editing page, locate the OpenStreetMap Object in the Screen Objects list on the left panel, then drag and drop it onto the Screen or Container.

When the OpenStreetMap is created, it is initially empty. Configure a Layout to define the data displayed in the map using one of the following methods:
Clicking on the center of the OpenStreetMap
Selecting the OpenStreetMap, then clicking on the Configure Layout button
in the Properties toolbar on the right side of the Screen.

See The Layout Object, Configure a Layout, and About Data Blocks of a Layout for more details on the Layout Object.
The OpenStreetMap, just like every other Object, can be moved, resized, duplicated via copy/paste, and easily aligned with other Objects on the Screen.
See Configure Screen Objects for more details.
OpenStreetMap Layout
The Layout Editor for the OpenStreetMap Object slightly differs from the standard Layout Editor, as it includes map-specific configuration options and requires dedicated Data Blocks to support geographic visualization.
The main elements needed to support geographical visualization are:
In the Data Blocks area
Latitude
Longitude
In the Object Settings
Map Areas
Bubbles
These elements are highlighted in the image below.

The Data Blocks area
Using Data Blocks, geocoding can be configured in two ways:
Using Latitude and Longitude Cubes. Use dedicated Cubes to provide geographic coordinates for Map Areas and Bubbles. Refer to the Object Settings area for additional details.
Using Entity or Text Block mapped to GeoJSON IDs. Use an Entity or Text Data Block whose members or text strings correspond to the IDs of SVG areas defined in a GeoJSON file. This method applies only to Map Areas. Refer to the Object Settings area for additional details.
Geocoding refers to the process of associating data with geographic positions or areas to enable its visualization on a map, allowing the OpenStreetMap Object to render multidimensional data as points (Bubbles) or regions (Map Areas).
Using Latitude and Longitude Cubes
Follow these steps to configure geocoding using Latitude and Longitude Cubes:
Add Latitude and Longitude Cubes to the Data Blocks area of the Layout Editor. These Cubes must provide the latitude and longitude values corresponding to the members of the Entity used in the "Markers" field in the Axes area.
Add an Entity to the "Markers" field in the Axes area to define the map elements. All Cubes in the Layout must include this Entity in their structure, or another Entity from the same Relationship tree at any level of aggregation, to ensure proper alignment of coordinates and data.
Geographic data can be sourced from external providers (free or paid) or entered manually through data-entry actions in the corresponding Cubes.
Example
You want to display data from the Net Sales Cube, which is dimensioned by Day, Shipper, Product, and Branch.
The parent Entity is Branch, which is organized in the following hierarchy:
To display data in the OpenStreetMap Object, add two Cubes to the Layout, both dimensioned by the same Entity (in this example, Branch): one Cube containing Latitude values and the other containing Longitude values for each Member of the Entity.
The following Data View shows the coordinates associated with each Member of the Branch Entity in this example.
4. The following Layout configuration enables data visualization on the map.
Data visualization is enabled provided that Bubbles and Map Areas have been properly configured in the Object settings area (see next paragraph for more details).
In this example, the Customer Entity is placed in the "Markers" field within the Axes area, and all Cubes included in the Layout share the same Entity in their structure, ensuring proper alignment of data.

Using an Entity/Text Block
Add an Entity/Text Block whose members/text strings are mapped to IDs of SVG areas in a GeoJSON file to the Layout.
Go to the Object settings area of the Layout and select the "Map Areas" menu. To access these settings, you must first enable the "Map Areas" toggle.
Select the above Entity/Text Block from the "Shape name" dropdown under the "Map Areas" menu in the Object settings area of the Layout.
The GeoJSON file must contain IDs and coordinates for each map area while the Entity/Text Block in the Layout must contain the same IDs as member codes (Entity) or text strings (Text Block).
Data Cubes added to the Data area should also have the Entity added to the "Markers" field - or another Entity in the same Relationships tree - in their structure.
Example
You want to visualize data from your Net Sales Cube which is dimensioned by Day, Shipper, Product, and Branch.
The Branch hierarchy is the following:

To plot your data in the OpenStreetMaps Object, add an Entity/Text Block containing the IDs of the SVG areas included in the GeoJSON file you want to use to your Layout.
Then you will need to map the Block containing the IDs to the GeoJSON file, from the "Map Areas" menu in the Object settings area.
Using an Entity, the Layout configuration should look as follows:

The Country Entity contains the following members, whose code is also used to identify map areas in the GeoJSON file:

Data Cubes must have the Entity added to the "Markers" field or another Entity from the same Relationship tree at any level of aggregation in their structure.
The Axes area
In the Axes area, you can add dimensions to define markers that will be used to plot bubbles in the map or to highlight map areas.
The Google Maps Object supports up to 2 Entities in the "Markers" field. For geocoding using Latitude and Longitude to work correctly, the dimension (Entity) used in the structure of Latitude and Longitude Cubes must be added to the "Markers" field as well. See next paragraph for more info. For geocoding using an Entity/Text Block whose members/text strings are mapped to IDs of SVG areas in a GeoJSON file, you need to include the Entity/Text Block in the Layout and select it in the "Shape name" dropdown under the "Map Areas" menu. See Object properties and Upload GeoJSON for more details.
Based on the numbers of Entities set in the "Markers" field, two scenarios may occur:
Standard data set (single Entity). The value is shown in the marker form. The position is given by Longitude and Latitude Cubes.
Clustered data set (two Entities). Data points are clustered together in Bubbles, and relevant information related to the data point and the two Entities is displayed in a popover.
The Object Settings area
In the Layout Editor, under the Object Settings area, the "Map areas" menu allows you to configure data visualization as a colored layer over relevant map areas.
Map areas
The configuration can be done in two ways:
Latitude/Longitude. Use Latitude and Longitude Cubes. Add these Cubes to the Data area in order to select them from the dropdown menus under "Map areas".
Shape name. Map the Entity/Text Block to the ID of the SVG areas in the GeoJSON file via the "Shape name" field.
Color
For both options, in the "Color" dropdown menu, you can select Blocks from the Layout and use them as drivers for the area's color, while the "Color opacity for data aggregation by" dropdown menu allows you to define a criterion that controls the color opacity.
The following examples show the two mapping options available.
If you select multiple Blocks in the "Color" dropdown list, they will also appear in the Object toolbar both in Design and Play Modes under the "Shapes" dropdown list: from there, just select the Block you want to be used as driver for the map areas color.

Bubbles
The "Bubbles" menu allows you to configure Bubbles that will be plotted on the map using Latitude and Longitude Cubes in the Layout. You can also define which Blocks will be used as drivers for the Bubble’s radius and color.
You can configure the Bubbles color to change dynamically by setting a color alert on the corresponding Block. See Block settings for more details.
If both the Bubbles and Map areas option are enabled, setting a color alert on the Block that drives the color setting for both options will apply the alert settings to Bubbles and Map areas. If you select multiple Blocks in the "Radius" and "Bubbles Color" dropdown lists, they will also appear in the Object toolbar both in Design and Play Modes under the "Bubbles" dropdown list: from there, just select the Block you want to be used as driver for the Bubbles color and Radius (Value).


