OData Model Configuration
OData service implemented using the Mobile Application Integration Framework does not use the Gateway Service Builder to define the OData model. Define the OData model using the OData Model configuration tool in the ConfigPanel. The runtime OData model is generated dynamically based on the configuration settings. The OData model configuration is mobile application-specific. You cannot share OData models across mobile applications.
Define the OData model configuration settings through the following screens:
Entity Set Tab
Entity configuration defines the OData entity type. Entity set configuration defines the OData entity set. In an OData model configuration, each entity type is limited to one entity set. Reuse of entity types by multiple entity sets or by different OData services is not supported.

-
Entity Type Name: Case-sensitive name of the entity type. The name must be unique within the OData service.
-
Active Flag: If unchecked, the entity type is not included in the generated OData model
-
Entity Type ID: Internal ID generated by the system to identify the entity type
-
Mobile Application: Mobile application for the entity type. The OData model configuration is defined for individual mobile applications. You can reuse the entity type name in different mobile applications.
-
Internal OData Service ID: Internal OData service ID that identifies the OData service for which the entity type is defined
-
Service: Gateway technical service name of the OData service. Information is read-only.
-
Version: Gateway technical service version. Information is read-only.
-
OMDO ID: OMDO that provides business logic for the entity type and its entity set
-
OMDO Entity Type: Technical entity type of the OMDO that is mapped to the OData entity type. Data for the OData entity type is supplied by the OMDO entity type.
-
EntitySet Name: Case-sensitive name of the entity set. Must be unique within the OData service.
-
Creatable: If checked, creation (POST) request for the entity set is supported
-
Updatable: If checked, update (PUT / PATCH / MERGE) request for the entity set is supported
-
Deletable: If checked, deletion (DELETE) request for the entity set is supported
-
Pageable: If checked, paging is allowed for the entity set read request
-
Filter Required: Not applicable for SAP Service and Asset Manager
Property List

-
Property Name: Case-sensitive name of the property
-
OMDO Field Name: Field name of the OMDO technical entity type mapped to the property. The value of the property is supplied in the <OMDO Entity Type> field.
-
EDM Type: Standard EDM type for the property
-
Key Indicator: If checked, the property is the key property of the entity type
-
Creatable: Not applicable for SAP Service and Asset Manager
-
Updatable: Not applicable for SAP Service and Asset Manager
-
Sortable: If checked, the property can be used for sorting
-
Nullable: If checked, the property can have NULL value
-
Filterable: If checked, the property can be used for filtering
-
Content Type: If checked, the property value can represent content type
-
Max Length: Maximum allowed length of the property value
-
Precision: Decimal precision of the property, if relevant
-
Scale: Decimal scale of the property, if relevant
-
ETag: If checked, the property serves as the <ETag> field. You can set only one field as an <ETag> field in an entity type.
-
Conversion Exit: Conversion exit for the property
Association & Set List Tab
An association defines the relationship between two entity types, with one entity type as the principle entity type, and the other as the dependent entity type. An association set defines the relationship between the two entity sets of the respective entity types in the association. In an OData model configuration, associations and association sets are child objects of an entity type, and each association can have only one association set defined.
When you define an OData model to use with OData offline SDK client application, you also define referential constraints for the association. Only key fields of the principle entity type can be used in referential constraints.

-
Association Name: Case-sensitive name of the association
-
External Association: By default, the parent entity type of the association is the principle entity type. However, if the External Association flag is checked, the parent entity type of the association is the dependent entity type. An external association is commonly used when defining associations between entity types across component services.
-
Association ID: A read-only internal GUID generated by the system that identifies the association
-
Principle Entity Type ID: Lead entity type of the association
-
Principle OMDO ID: Read-only OMDO ID to which the principle entity type is mapped to
-
Principle Tech Entity Type: Read-only technical entity type of the OMDO ID to which the principle entity type is mapped to
-
Principle Cardinality: Cardinality of the lead entity type
-
OnDelete Cascade (Principle): If checked, the dependent entity type and entity set are automatically deleted when the principle entity type and entity set are deleted
-
Dependent Entity Type ID: For standard associations, the dependent entity type can be any entity type belonging to the same OData service or child component service
-
Dependent OMDO ID: Read-only OMDO ID to which the dependent entity type is mapped to
-
Dependent Tech Entity Type: Read-only technical entity type of the OMDO ID to which the dependent entity type is mapped to
-
Dependent Cardinality: Cardinality of the dependent entity type
-
Dependent OnDelete Cascade: If checked, the principle entity type and entity set are automatically deleted when the dependent entity type and entity set are deleted
-
Association Set Name: Case-sensitive name of the association set
-
Association Set ID: Read-only internal GUID generated by the system that identifies the association set
-
Principle Entity Set Name: Read-only entity set name of the principle entity type. Each entity type in the OData model configuration can only have one entity set.
-
Dependent Entity Set Name: Read-only entity set name of the dependent entity type. Each entity type in the OData model configuration can only have one entity set
-
Principle Entity Type: Read-only principle entity type of the association
-
Principle Property: Principle property of the referential constraint. The principle property is the key field of the principle entity type.
-
Dependent Entity Type: Read-only dependent entity type of the association
-
Dependent Property: Dependent property of the referential constraint. The dependent property can be any field of the dependent entity type that has a foreign key relationship with the principle property.
Navigation Property List Tab
A navigation property represents a link from the parent entity type to a related entity types.

-
Navigation Property Name:
-
Technical Name: Case-sensitive name of the Internal technical name of the navigation property. The technical name is not case-sensitive.
-
Association: Association for the navigation property. The navigation represents the link between the principle entity type and the dependent entity type.
-
Principle Entity Type Name: Read-only principle entity type name of the association used by the navigation property
-
Dependent Entity Type Name: Read-only dependent entity type name of the association used by the navigation property
Additional Setting Tab

-
Media Flag: If checked, the entity type is a media entity type
-
Enable Structure Conversion Exit: If checked, the gateway automatically performs conversion exits for the entity type at runtime for both the request payload and the response payload
OMDO Assignment Tab
The OMDO Assignment tab only supports substitution configuration scenarios.
Use the following screenshot as an example. When a user posts a meter reading from their client, by default the reading is posted to the default OMDO, which here is SAM<XX>_METER_READING. However, if the user is reading a periodic meter, the reading is posted to the SAM<XX>_MR_PERIODIC OMDO, which is substituted for the default OMDO through the use of custom headers.
