Show TOC

 Getting Interval Energy Consumption from SAP EDM Profile Values

 

SAP Energy Data Management (SAP EDM) is an application component (IS-U-EDM) within SAP Utilities for Industry Solutions to manage energy data of a utility company. Based on this data, a utility company can retrieve real-time interval consumption and also decide on pricing and settlements in real time.

Features

SAP Multichannel Foundation for Utilities and Public Sector provides a set of OData entities to help you retrieve the consumption data from the interval registers from SAP EDM Profile Values.

There are two models to get SAP EDM profile values: simplified model and complete model.

Simplified Model

With the simplified model, the profile values can be directly accessed by contract, device or register.

When you use OData service navigation from the Contract entity to the ProfileValues entity, the SAP EDM profile values are retrieved for all existing profiles of all devices within the contract with all the interval registers of those devices. It is recommended to use filters to reduce the volume of data for profile values.

Example Example

https://(___servicepath___)/ERP_UTILITIES_UMC/Contracts(‘9000002344’)/ ProfileValues ?$filter=Timestamp ge datetime'2014-03-01T00:00:00' and Timestamp le datetime'2015-01-31T00:00:00' and OutputInterval eq 'MON'

End of the example.
Complete Model

This allows you to get EDM profile values by device and register by using Profile Header. With this approach, the profile values are accessed by the profile headers. Therefore, you are able to apply more complex logic with the profile headers in their applications.

OData Entities in SAP EDM Profile Values

Note Note

Amounts provided by OData entities may differ from the amounts calculated by IS-U billing.

End of the note.
ProfileValue

ProfileValue on SAP ERP returns the EDM profile values with the following fields:

  • ProfileHeaderID: Profile ID (Key, Filterable*)

  • Timestamp: Interval Time Stamp (Key, Filterable*)

  • OutputInterval: Output Interval. (Key, Filterable*) Supported values are:

    Initial: Original Interval

    60: Hourly (Aggregated value If the original interval < 60 minutes)

    DAY: Daily (Aggregated value if the original interval < 1 day)

    MON: Monthly (Aggregated value If the original interval < 1 month

  • ContractID: Contract ID (Filterable*)

  • DeviceID: Meter Device ID (Equipment ID) (Filterable*)

  • RegisterID: Meter Register ID (Filterable*)

  • ProfileTypeID: Profile Type ID (Filterable*). Standard EDM Profile types are supported.

  • ProfileValueTypeID: Profile Value Type ID.

    Supported values are:

    • H: Actual

    • F: Projected

    • C: Calculated

    • M: Missing

    • E: Error

    • O: Others

  • UnitOfMeasure: Unit for the profile value (Filterable*)

  • Currency: Currency for the profile value (Filterable*)

  • TimeZone: Time zone (UTC by default)

  • Value: Actual value

* There are restrictions in the filter support for this entity: only the “eq” comparison operator is allowed for all the filterable properties except Timestamp. For the timestamp property, it is possible to define the interval by using “ge” and “le” operators as shown in the earlier example.

Besides the standard fields listed above, the back end API of the OData service also retrieves additional fields as defined in the DDIC structure ISUS_UMC_EDM_PROFILE_VALUE. The following additional fields are retrieved:

  • SPARTE: Division ID

  • PROF_DATE: Date for the profile value interval

  • PROF_TIME: Time for the profile value interval

In the BAdI definitionISU_UMC_EDM under the Enhancement Spot ISU_UMC_ODATA, the method IF_ISU_UMC_EDM~ENHANCE_EDM_PROFILE_VALUES is designed for further enhancement of the profile values.

Profile Data Aggregation

By default, the system supports three aggregated output interval types. The interval types are defined by the following Customizing parameters under the Maintain Settings for Business Processes Customizing activity to get real-time consumption from SAP EDM profile values:

Entity Name

Parameter

SEQNO

Parameter Value

ProfileValue

IntervalType_Hour

1

DAY

ProfileValue

IntervalType_Day

1

60

ProfileValue

IntervalType_Month

1

MON

The interval of the original SAP EDM consumption data must be smaller than or equal to the supported aggregation output interval. The EDM interval length is defined in Customizing under Start of the navigation path SAP Utilities Next navigation step Tools Next navigation step System Modifications Next navigation step User-Defined Enhancements for Energy Data Management Next navigation step Interval Lengths Next navigation step Define Interval Lengths End of the navigation path.

In the BAdI definition ISU_UMC_EDM under the Enhancement Spot ISU_UMC_ODATA, the method IF_ISU_UMC_EDM_BADI~AGGREGATE_EDM_PROFILE_VALUES is designed for further enhancement of the aggregation.

Profile Value Type Mapping

In the Customizing delivered with the current release, the profile value type is mapped by the profile value status.

The mapping table is defined by the following Customizing parameters under the Maintain Settings for Business Processes Customizing activity to get real-time consumption from SAP EDM profile values:

Entity Name

Parameter

SEQNO

Parameter Value

ProfileValue

ValueType_Error

1

IU014

ProfileValue

ValueType_Forecast

1

IU020

ProfileValue

ValueType_Historical

1

IU012

ProfileValue

ValueType_Historical

2

IU013

ProfileValue

ValueType_Historical

3

IU015

ProfileValue

ValueType_Historical

4

IU016

ProfileValue

ValueType_Missing

1

IU011

ProfileValue

ValueType_Missing

2

IU010

Based on the Customizing that is delivered as listed in the preceding table, the profile value types are mapped as follows:

Profile Value Type ID

Profile Value Type Description

Profile Value Status

E

Error

IU014 (Value implausible)

F

Forecasted

IU020 (Value was extrapolated)

H

Historical

IU012 (Valid value)

IU013 (Value was estimated)

IU015 (Value entered/changed manually)

IU016 (Value has been released)

M

Missing

IU010 (Value does not exist)

IU011 (Value missing)

You can control the mapping between value type and value status by using the Maintain Settings for Business Processes Customizing activity. In the BAdI definition ISU_UMC_EDM under the Enhancement Spot ISU_UMC_ODATA, the method IF_ISU_UMC_EDM~ MAP_EDM_PROFILE_VALUE_TYPE is designed for further enhancement of the mapping of profile value types.

ProfileHeader

The OData entity ProfileHeader returns the SAP EDM profile header data with the following fields:

  • ProfileHeaderID: Profile ID (Key)

  • DeviceID: Meter Device ID (Equipment ID)

  • DivisionID: Division ID

  • RegisterID: Meter Register ID

  • Interval: EDM Profile Data Interval

  • ProfileTypeID: Profile Type ID

  • UnitOfMeasure: Unit

  • Currency: Currency

  • DateFrom: Profile validity period: Date from

  • TimeFrom: Profile validity period: Period From

  • DateTo: Profile validity period: Date to

  • TimeTo: Profile validity period: Period To

  • TimeZone: Time Zone

ProfileType

The OData entity ProfileType returns the SAP EDM profile header type ID with the description as follows:

  • ProfileTypeID: Profile Header Type ID (Key)

  • Description: Description

The profile type is maintained in Customizing under Start of the navigation path SAP Utilities Next navigation step Energy Data Management Next navigation step Basic Settings Next navigation step Profile Type Next navigation step Define Profile Types End of the navigation path.

ProfileValueType

The OData entity ProfileValueType returns the SAP EDM profile header value type ID with the description as follows:

  • ProfileValueTypeID: Profile Value Type ID (Key)

  • Description: Description

Profile value types are defined by the domain ISU_UMC_EDM_PROFILE_VALUE_TYPE.

ProfileValuesFile

The OData entity ProfileValuesFile returns the search parameters for downloading SAP EDM profile data with the following fields:

  • ProfileValuesFileID: Artificial key (composed by all filtering parameters)

  • MimeType: MIME type. Currently only supports the CSV ( 'application/octet-stream')

  • MediaResource: X-String for the profile values

  • Timestamp: Filtering* Parameter: validity period

  • OutputInterval: Filtering* Parameter: output interval

  • ContractID: Filtering* Parameter: Contract ID

  • DeviceID: Filtering* Parameter: Device ID

  • RegisterID: Filtering* Parameter: Register ID

  • ProfileHeaderID: Filtering* Parameter: Profile Header ID

  • ProfileTypeID: Filtering* Parameter: Profile Type ID

The selection criteria for the SAP EDM profile values can be different and the file is dynamically composed based on those criteria. This reason does not allow for the key to be persisted anywhere in the back end.

In order to access the file, you need to get a key. As a result, if you retrieve an entity set with filter parameters, you receive the result with a single entity that contains the correct key for your file.

Example Example

An example of such query is the following:

https://(___servicepath___)/ERP_UTILITIES_UMC/Contracts(‘9000002344’)/ ProfileValuesFiles ?$filter=Timestamp ge datetime'2014-03-01T00:00:00' and Timestamp le datetime'2015-01-31T00:00:00' and OutputInterval eq 'MON'

End of the example.

Navigation is allowed from the following OData entities:

  • Contract

  • Device

  • RegisterToRead

* There are restrictions in the filter support for this entity: only the “eq” comparison operator is allowed for all the filterable properties except Timestamp. For the timestamp property, it is possible to define the interval by using “ge” and “le” operators as shown in the earlier example.

Currently, SAP Multichannel Foundation for Utilities and Public Sector only supports the CSV (comma-separated values) format. You can control the delimiter and fields by using the following Customizing parameters under the Maintain Settings for Business Processes Customizing activity to get real time consumption from SAP EDM profile values:

Entity Name

Parameter

SEQNO

Parameter Value

ProfileValuesFile

CSV_Delimiter

1

,

ProfileValuesFile

Structure_Name

1

ISUS_UMC_EDM_PROFILE_VALUE_CSV

By default, the CSV delimiter is the comma (,). But in European systems, this character is reserved as the decimal indicator. In this case, the parameter “CSV_Delimiter” needs to be set to semicolon (;).

The Customizing parameter Structure_Name defines the DDIC structure in the output files. This structure must be the subset of the structure with the profile value ISUS_UMC_EDM_PROFILE_VALUE.

In the BAdI definition ISU_UMC_EDM under the Enhancement Spot ISU_UMC_ODATA, the method IF_ISU_UMC_EDM~ GET_EDM_PROFILE_VALUES_CSV is designed for further enhancement.

Activities

You can carry out Customizing for business process settings under Start of the navigation path SAP Utilities Next navigation step Customer Service Next navigation step SAP Multichannel Foundation for Utilities Next navigation step Maintain Settings for Business Processes End of the navigation path.

More Information

For more information on SAP Energy Data Management, see https://help.sap.com/erp2005_ehp_05/helpdata/en/7d/a0023b288dd720e10000000a114084/frameset.htmInformation published on SAP site