P_REIntegObjMsmtSliceByKeyDate

DDL: P_REINTEGOBJMSMTSLICEBYKEYDATE Type: view_entity COMPOSITE

Integration Object Measurement Time Slices by Keydate

P_REIntegObjMsmtSliceByKeyDate is a Composite CDS View that provides data about "Integration Object Measurement Time Slices by Keydate" in SAP S/4HANA. It reads from 3 data sources (I_REIntegObjectSubObjValidity, I_REIntegrationObjectBasicData, I_REIntegrationObjectTimeline) and exposes 4 fields with key field InternalRealEstateNumber. It has 1 association to related views.

Data Sources (3)

SourceAliasJoin Type
I_REIntegObjectSubObjValidity _REIntegObjectSubObjValidity inner
I_REIntegrationObjectBasicData _REIntegrationObject from
I_REIntegrationObjectTimeline _REIntegrationObjectTimeline inner

Parameters (1)

NameTypeDefault
P_KeyDate recakeydate

Associations (1)

CardinalityTargetAliasCondition
[0..*] I_REMeasurement _REMeasurement _REIntegObjectSubObjValidity.InternalRealEstateNumberLvl3 = _REMeasurement.InternalRealEstateNumber and _REMeasurement.ValidityStartDate <= $parameters.P_KeyDate and _REMeasurement.ValidityEndDate >= $parameters.P_KeyDate

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label Integration Object Measurement Time Slices by Keydate view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
VDM.private true view
VDM.viewType #COMPOSITE view

Fields (4)

KeyFieldSource TableSource FieldDescription
KEY InternalRealEstateNumber I_REIntegrationObjectBasicData InternalRealEstateNumber
REIntegrationObjectType I_REIntegrationObjectBasicData REIntegrationObjectType
ValidityStartDateendasValidityStartDate
ValidityEndDateendasValidityEndDate
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'Integration Object Measurement Time Slices by Keydate'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #X,
  sizeCategory: #L,
  dataClass: #MIXED
}
@VDM.private: true
@VDM.viewType: #COMPOSITE
define view entity P_REIntegObjMsmtSliceByKeyDate
  with parameters
    P_KeyDate : recakeydate
  as select from I_REIntegrationObjectBasicData as _REIntegrationObject
    inner join   I_REIntegObjectSubObjValidity  as _REIntegObjectSubObjValidity on (
       _REIntegrationObject.InternalRealEstateNumber                                                                                     = _REIntegObjectSubObjValidity.InternalRealEstateNumberLvl0
       or _REIntegrationObject.InternalRealEstateNumber                                                                                  = _REIntegObjectSubObjValidity.InternalRealEstateNumberLvl1
       or _REIntegrationObject.InternalRealEstateNumber                                                                                  = _REIntegObjectSubObjValidity.InternalRealEstateNumberLvl2
       or _REIntegrationObject.InternalRealEstateNumber                                                                                  = _REIntegObjectSubObjValidity.InternalRealEstateNumberLvl3
     )
                                                                                and(
                                                                                  (
                                                                                    _REIntegObjectSubObjValidity.ValidityStartDateLvl0   <= $parameters.P_KeyDate
                                                                                    and _REIntegObjectSubObjValidity.ValidityEndDateLvl0 >= $parameters.P_KeyDate
                                                                                  )
                                                                                  and(
                                                                                    _REIntegObjectSubObjValidity.ValidityStartDateLvl1   <= $parameters.P_KeyDate
                                                                                    and _REIntegObjectSubObjValidity.ValidityEndDateLvl1 >= $parameters.P_KeyDate
                                                                                  )
                                                                                  and(
                                                                                    _REIntegObjectSubObjValidity.ValidityStartDateLvl2   <= $parameters.P_KeyDate
                                                                                    and _REIntegObjectSubObjValidity.ValidityEndDateLvl2 >= $parameters.P_KeyDate
                                                                                  )
                                                                                  and(
                                                                                    _REIntegObjectSubObjValidity.ValidityStartDateLvl3   <= $parameters.P_KeyDate
                                                                                    and _REIntegObjectSubObjValidity.ValidityEndDateLvl3 >= $parameters.P_KeyDate
                                                                                  )
                                                                                )
    inner join   I_REIntegrationObjectTimeline  as _REIntegrationObjectTimeline on  _REIntegrationObjectTimeline.InternalRealEstateNumber    = _REIntegrationObject.InternalRealEstateNumber
                                                                                and _REIntegrationObjectTimeline.REIntegrationObjectIsActive = 'X'
  association [0..*] to I_REMeasurement as _REMeasurement on  _REIntegObjectSubObjValidity.InternalRealEstateNumberLvl3 = _REMeasurement.InternalRealEstateNumber
                                                          and _REMeasurement.ValidityStartDate                          <= $parameters.P_KeyDate
                                                          and _REMeasurement.ValidityEndDate                            >= $parameters.P_KeyDate
{
  key _REIntegrationObject.InternalRealEstateNumber,
      _REIntegrationObject.REIntegrationObjectType,
      max( case when _REMeasurement.ValidityStartDate < _REIntegObjectSubObjValidity.ValidityStartDateLvl3 then _REIntegObjectSubObjValidity.ValidityStartDateLvl3
           when _REMeasurement.ValidityStartDate < _REIntegObjectSubObjValidity.ValidityStartDateLvl2 then _REIntegObjectSubObjValidity.ValidityStartDateLvl2
           when _REMeasurement.ValidityStartDate < _REIntegObjectSubObjValidity.ValidityStartDateLvl1 then _REIntegObjectSubObjValidity.ValidityStartDateLvl1
           else _REMeasurement.ValidityStartDate
      end ) as ValidityStartDate,
      min( case when _REMeasurement.ValidityEndDate > _REIntegObjectSubObjValidity.ValidityEndDateLvl3 then _REIntegObjectSubObjValidity.ValidityEndDateLvl3
           when _REMeasurement.ValidityEndDate > _REIntegObjectSubObjValidity.ValidityEndDateLvl2 then _REIntegObjectSubObjValidity.ValidityEndDateLvl2
           when _REMeasurement.ValidityEndDate > _REIntegObjectSubObjValidity.ValidityEndDateLvl1 then _REIntegObjectSubObjValidity.ValidityEndDateLvl1
           else _REMeasurement.ValidityEndDate
      end ) as ValidityEndDate
}
where
  _REIntegrationObject.REIntegrationObjectType <> 'C4SG'
group by
  _REIntegrationObject.InternalRealEstateNumber,
  _REIntegrationObject.REIntegrationObjectType
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_REINTEGOBJECTSUBOBJVALIDITY",
"I_REINTEGRATIONOBJECTBASICDATA",
"I_REINTEGRATIONOBJECTTIMELINE",
"I_REMEASUREMENT"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/