I_ReldSftyInstrnFctryAreaVH

DDL: I_RELDSFTYINSTRNFCTRYAREAVH Type: view_entity COMPOSITE

Factory Areas for Safety Instruction

I_ReldSftyInstrnFctryAreaVH is a Composite CDS View that provides data about "Factory Areas for Safety Instruction" in SAP S/4HANA. It reads from 4 data sources (I_EHSLocationHierarchyNode, I_EHSLocationHierarchyRevision, I_EHSLocationRevision, I_SafetyInstructionDefinition) and exposes 19 fields with key fields EHSLocationUUID, EHSParentLocationUUID, SafetyInstructionType, SafetyInstructionSubType. It has 4 associations to related views.

Data Sources (4)

SourceAliasJoin Type
I_EHSLocationHierarchyNode I_EHSLocationHierarchyNode from
I_EHSLocationHierarchyRevision I_EHSLocationHierarchyRevision inner
I_EHSLocationRevision I_EHSLocationRevision inner
I_SafetyInstructionDefinition I_SafetyInstructionDefinition inner

Associations (4)

CardinalityTargetAliasCondition
[0..1] I_EHSLocationRevision _EHSLocationRevision $projection.EHSLocationUUID = _EHSLocationRevision.EHSLocationUUID and _EHSLocationRevision.RevisionStartDate <= $session.system_date and _EHSLocationRevision.RevisionEndDate >= $session.system_date
[0..1] I_CurrentEHSLocationNameText _EHSLocationName $projection.EHSLocationUUID = _EHSLocationName.EHSLocationUUID and _EHSLocationName.Language = $session.system_language
[0..1] I_CurrentEHSLocationNameText _EHSParentLocationName $projection.EHSParentLocationUUID = _EHSParentLocationName.EHSLocationUUID and _EHSParentLocationName.Language = $session.system_language
[0..1] C_EHSLocationTypeVH _EHSLocationTypeVH $projection.ehslocationtype = _EHSLocationTypeVH.EHSLocationType

Annotations (12)

NameValueLevelField
EndUserText.label Factory Areas for Safety Instruction view
AccessControl.authorizationCheck #MANDATORY view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.dataCategory #VALUE_HELP view
ObjectModel.representativeKey EHSLocationUUID view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.dataClass #MIXED view
Search.searchable true view
Metadata.ignorePropagatedAnnotations true view
Metadata.allowExtensions true view

Fields (19)

KeyFieldSource TableSource FieldDescription
KEY EHSLocationUUID I_EHSLocationHierarchyNode EHSLocationUUID Factory Area Location UUID
KEY EHSParentLocationUUID I_EHSLocationHierarchyNode EHSParentLocationUUID Parent Factory UUID
KEY SafetyInstructionType I_SafetyInstructionDefinition SafetyInstructionType
KEY SafetyInstructionSubType I_SafetyInstructionDefinition SafetyInstructionSubType
EHSLocationName _EHSLocationName EHSLocationName Factory Area Name
EHSParentLocationName _EHSParentLocationName EHSLocationName Parent Location Name
Plant _EHSLocationRevision Plant
EHSLocationType _EHSLocationRevision EHSLocationType Location Type
EHSLocationTypeText Location Type
CostCenter _EHSLocationRevision CostCenter
EHSLocationStatus _EHSLocationRevision EHSLocationStatus
EHSLocationAuthorizationGroup
ControllingArea _EHSLocationRevision ControllingArea
CompanyCode _EHSLocationRevision CompanyCode
BusinessArea _EHSLocationRevision BusinessArea
_EHSParentLocation I_EHSLocationHierarchyNode _EHSParentLocation
_EHSLocation I_EHSLocationHierarchyNode _EHSLocation
_EHSLocationTypeVH _EHSLocationTypeVH
_EHSLocationRevision _EHSLocationRevision
@EndUserText.label: 'Factory Areas for Safety Instruction'

@AccessControl.authorizationCheck: #MANDATORY

@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #SAP_INTERNAL_API
  }

@ObjectModel: {
                dataCategory:#VALUE_HELP,
                representativeKey: 'EHSLocationUUID',
                semanticKey: ['EHSLocationUUID'],
                usageType:{ serviceQuality: #C,
                            sizeCategory:  #M,
                            dataClass: #MIXED }
               }

@Search.searchable: true

@Metadata: { ignorePropagatedAnnotations: true,
             allowExtensions:true }


define view entity I_ReldSftyInstrnFctryAreaVH

  as select from I_EHSLocationHierarchyNode

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

    inner join   I_EHSLocationRevision          on  I_EHSLocationRevision.RevisionStartDate <= $session.system_date
                                                and I_EHSLocationRevision.RevisionEndDate   >= $session.system_date
                                                and I_EHSLocationRevision.EHSLocationUUID   = I_EHSLocationHierarchyNode.EHSParentLocationUUID

    inner join   I_SafetyInstructionDefinition  on  I_EHSLocationRevision.Plant           = I_SafetyInstructionDefinition.Plant
                                                and I_EHSLocationRevision.EHSLocationType = I_SafetyInstructionDefinition.SafetyInstructionLocType

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

// end correction 3113514 28.10.2021  


  association [0..1] to I_CurrentEHSLocationNameText as _EHSLocationName       on  $projection.EHSLocationUUID = _EHSLocationName.EHSLocationUUID
                                                                               and _EHSLocationName.Language   = $session.system_language

  association [0..1] to I_CurrentEHSLocationNameText as _EHSParentLocationName on  $projection.EHSParentLocationUUID = _EHSParentLocationName.EHSLocationUUID
                                                                               and _EHSParentLocationName.Language   = $session.system_language

  association [0..1] to C_EHSLocationTypeVH   as _EHSLocationTypeVH     on  $projection.ehslocationtype = _EHSLocationTypeVH.EHSLocationType

{
         //I_EHSLocHierarchyPath

         @EndUserText.label: 'Factory Area Location UUID'
         @ObjectModel: { text: { element: ['EHSLocationName'] } }
  key    I_EHSLocationHierarchyNode.EHSLocationUUID,  //correction 3113514 28.10.2021


         @Consumption.filter.hidden: true
         @EndUserText.label: 'Parent Factory UUID'
  key    I_EHSLocationHierarchyNode.EHSParentLocationUUID,  //correction 3113514 28.10.2021


         @ObjectModel: { filter.enabled: true,
                       sort.enabled: true }
  key    I_SafetyInstructionDefinition.SafetyInstructionType,

         @ObjectModel: { filter.enabled: true,
                         sort.enabled: true }
         @Consumption.filter.hidden: true
  key    I_SafetyInstructionDefinition.SafetyInstructionSubType,

         @EndUserText.label: 'Factory Area Name'
         @Semantics.text: true
         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #HIGH }
         _EHSLocationName.EHSLocationName,

         @EndUserText.label: 'Parent Location Name'
         _EHSParentLocationName.EHSLocationName                                                               as EHSParentLocationName,

         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #MEDIUM }
         _EHSLocationRevision.Plant,

         @EndUserText.label: 'Location Type'
         @Consumption.valueHelp: '_EHSLocationTypeVH'
         _EHSLocationRevision.EHSLocationType,

         @EndUserText.label: 'Location Type'
         @Consumption: { valueHelpDefinition: [{ entity: { name: 'C_EHSLocationTypeVH',
                                                        element: 'EHSLocationTypeText'
                                            }, label: 'Location Type' }]     }
         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #MEDIUM }
         _EHSLocationRevision._EHSLocationType._Text[1: Language = $session.system_language].EHSLocationTypeText,

         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #MEDIUM }
         _EHSLocationRevision.CostCenter,

         // DCL related fields

         @Consumption.hidden: true
         _EHSLocationRevision.EHSLocationStatus,
         @Consumption.hidden: true
         cast(_EHSLocationRevision.EHSLocationAuthorizationGroup as ehfnd_loc_auth_group_nc preserving type ) as EHSLocationAuthorizationGroup,
         @Consumption.hidden: true
         _EHSLocationRevision.ControllingArea,
         @Consumption.hidden: true
         _EHSLocationRevision.CompanyCode,
         @Consumption.hidden: true
         _EHSLocationRevision.BusinessArea,

         I_EHSLocationHierarchyNode._EHSParentLocation,
         I_EHSLocationHierarchyNode._EHSLocation,
         @Consumption.hidden: true
         _EHSLocationTypeVH,
         _EHSLocationRevision
}


where
  I_EHSLocationHierarchyNode.EHSParentLocationUUID <> hextobin('00000000000000000000000000000000')
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CURRENTEHSLOCATIONNAMETEXT",
"I_EHSLOCATIONHIERARCHYNODE",
"I_EHSLOCATIONHIERARCHYREVISION",
"I_EHSLOCATIONREVISION",
"I_EHSLOCATIONTYPE",
"I_EHSLOCATIONTYPETEXT",
"I_SAFETYINSTRUCTIONDEFINITION"
],
"ASSOCIATED":
[
"C_EHSLOCATIONTYPEVH",
"I_EHSLOCATIONREVISION",
"I_EHSLOCATIONROOT"
],
"BASE":
[
"I_EHSLOCATIONHIERARCHYNODE"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/