I_EHSLocationExpanded

DDL: I_EHSLOCATIONEXPANDED Type: view COMPOSITE

EHS Location and Sublocations

I_EHSLocationExpanded is a Composite CDS View (Dimension) that provides data about "EHS Location and Sublocations" in SAP S/4HANA. It reads from 2 data sources (I_EHSLocationHierarchyRevision, I_EHSLocHierarchyPath) and exposes 3 fields with key field EHSLocationUUID. It has 2 associations to related views.

Data Sources (2)

SourceAliasJoin Type
I_EHSLocationHierarchyRevision I_EHSLocationHierarchyRevision inner
I_EHSLocHierarchyPath I_EHSLocHierarchyPath from

Parameters (1)

NameTypeDefault
P_EHSLocationUUID ehfnd_location_uuid_ref

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_EHSLocation _EHSLocationRevision $projection.EHSLocationUUID = _EHSLocationRevision.EHSLocationUUID and _EHSLocationRevision.RevisionStartDate <= $session.system_date and _EHSLocationRevision.RevisionEndDate >= $session.system_date
[1..1] P_EHSLocationHierarchyLevel _EHSLocationHierarchyLevel I_EHSLocationHierarchyRevision.EHSLocHierarchyRevisionUUID = _EHSLocationHierarchyLevel.EHSLocHierarchyRevisionUUID and $projection.EHSLocationUUID = _EHSLocationHierarchyLevel.EHSLocationUUID

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName ILOCEXPANDED view
AbapCatalog.compiler.compareFilter true view
EndUserText.label EHS Location and Sublocations view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.allowExtensions true view
ObjectModel.representativeKey EHSLocationUUID view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MASTER view

Fields (3)

KeyFieldSource TableSource FieldDescription
KEY EHSLocationUUID
_EHSLocationRevision _EHSLocationRevision
EHSLocationHierarchyLevel _EHSLocationHierarchyLevel EHSLocationHierarchyLevel
@AbapCatalog:{
    sqlViewName: 'ILOCEXPANDED',
    compiler.compareFilter: true
}
@EndUserText.label: 'EHS Location and Sublocations'
@Analytics: { 
    dataCategory:#DIMENSION , 
    dataExtraction.enabled:true 
}
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #NOT_REQUIRED
// Client handling by session

@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.allowExtensions:true
@ObjectModel:{
    representativeKey: 'EHSLocationUUID',
// used for BOBF Master Data Object

    usageType:{ serviceQuality: #C,        // < 15 msec

                         sizeCategory:  #L,         // < 10.000.000

                         dataClass: #MASTER }
}                        
// This returns the current users "My Location" and its sublocations

define view I_EHSLocationExpanded
  with parameters
    @Consumption.hidden: true
    P_EHSLocationUUID : ehfnd_location_uuid_ref
  as select from I_EHSLocHierarchyPath

  // get the current revision of the location hierarchy

    inner join   I_EHSLocationHierarchyRevision on I_EHSLocationHierarchyRevision.RevisionStartDate <= $session.system_date and
                                                   I_EHSLocationHierarchyRevision.RevisionEndDate   >= $session.system_date
                                                   and
                                                   I_EHSLocHierarchyPath.EHSLocHierarchyRevisionUUID = I_EHSLocationHierarchyRevision.EHSLocHierarchyRevisionUUID

  /*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] }*/
  association [1..1] to I_EHSLocation as _EHSLocationRevision on  $projection.EHSLocationUUID = _EHSLocationRevision.EHSLocationUUID and
                                                                  _EHSLocationRevision.RevisionStartDate <= $session.system_date and
                                                                  _EHSLocationRevision.RevisionEndDate   >= $session.system_date

  association [1..1] to P_EHSLocationHierarchyLevel as _EHSLocationHierarchyLevel on I_EHSLocationHierarchyRevision.EHSLocHierarchyRevisionUUID = _EHSLocationHierarchyLevel.EHSLocHierarchyRevisionUUID 
                                                                                  and $projection.EHSLocationUUID = _EHSLocationHierarchyLevel.EHSLocationUUID
                                                                  


{
   key cast (I_EHSLocHierarchyPath.EHSLocationUUID as ehfnd_location_uuid_ref preserving type ) as EHSLocationUUID,

   _EHSLocationRevision,
   
   _EHSLocationHierarchyLevel.EHSLocationHierarchyLevel       
}
where 
  // get all sub location of my location and my location in addition

  I_EHSLocHierarchyPath.EHSParentLocationUUID     = $parameters.P_EHSLocationUUID or
  I_EHSLocHierarchyPath.EHSLocationUUID           = $parameters.P_EHSLocationUUID and
  I_EHSLocHierarchyPath.EHSParentLocationUUID     = hextobin( '00000000000000000000000000000000' )
 /*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_EHSLOCATIONHIERARCHYREVISION",
"I_EHSLOCHIERARCHYPATH",
"P_EHSLOCATIONHIERARCHYLEVEL"
],
"ASSOCIATED":
[
"I_EHSLOCATION",
"P_EHSLOCATIONHIERARCHYLEVEL"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/