I_ReldSftyInstrnFactoryVH

DDL: I_RELDSFTYINSTRNFACTORYVH Type: view_entity COMPOSITE

Factories for Safety Instruction

I_ReldSftyInstrnFactoryVH is a Composite CDS View that provides data about "Factories for Safety Instruction" in SAP S/4HANA. It reads from 4 data sources (I_EHSLocation, I_EHSLocationHierarchyNode, I_EHSLocationHierarchyRevision, I_SafetyInstructionDefinition) and exposes 13 fields with key fields EHSLocationUUID, SafetyInstructionType, SafetyInstructionSubType. It has 1 association to related views.

Data Sources (4)

SourceAliasJoin Type
I_EHSLocation I_EHSLocation from
I_EHSLocationHierarchyNode I_EHSLocationHierarchyNode inner
I_EHSLocationHierarchyRevision I_EHSLocationHierarchyRevision inner
I_SafetyInstructionDefinition I_SafetyInstructionDefinition inner

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_CurrentEHSLocationNameText _EHSLocationName $projection.EHSLocationUUID = _EHSLocationName.EHSLocationUUID and _EHSLocationName.Language = $session.system_language

Annotations (12)

NameValueLevelField
EndUserText.label Factories 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 (13)

KeyFieldSource TableSource FieldDescription
KEY EHSLocationUUID I_EHSLocation EHSLocationUUID
KEY SafetyInstructionType I_SafetyInstructionDefinition SafetyInstructionType
KEY SafetyInstructionSubType I_SafetyInstructionDefinition SafetyInstructionSubType
EHSLocationType
EHSLocationName _EHSLocationName EHSLocationName
Plant I_EHSLocation Plant
EHSLocationStatus I_EHSLocation EHSLocationStatus
EHSLocationAuthorizationGroup
CostCenter I_EHSLocation CostCenter
Country I_EHSLocation Country
CompanyCode I_EHSLocation CompanyCode
BusinessArea I_EHSLocation BusinessArea
Associations_EHSLocationName
@EndUserText.label: 'Factories 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_ReldSftyInstrnFactoryVH
  as select from I_EHSLocation

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

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

    inner join   I_EHSLocationHierarchyNode     on  I_EHSLocationHierarchyNode.EHSLocationUUID             = I_EHSLocation.EHSLocationUUID
                                                and I_EHSLocationHierarchyNode.EHSLocHierarchyRevisionUUID = I_EHSLocationHierarchyRevision.EHSLocHierarchyRevisionUUID

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

{

         @ObjectModel: { filter.enabled: false,
                         sort.enabled: true,
                         text: { association: '_EHSLocationName',
                                 control: #ASSOCIATED_TEXT_UI_HIDDEN } }
  key    I_EHSLocation.EHSLocationUUID,

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

         @ObjectModel: { filter.enabled: true,
                         sort.enabled: true }
         @Consumption.filter.hidden: true
         @EndUserText: { label: 'SI Subtype', quickInfo: 'SI Subtype' }
  key    I_SafetyInstructionDefinition.SafetyInstructionSubType,

         @Consumption.hidden: true
         @ObjectModel.readOnly: true
         cast ( I_EHSLocation.EHSLocationType as ehfnd_loc_type_code_nc preserving type )                             as EHSLocationType,

         @ObjectModel: { readOnly: true,
                         filter.enabled: true,
                         sort.enabled: true }
         @Search: { defaultSearchElement: true,
                    ranking: #HIGH,
                    fuzzinessThreshold: 0.9 }
         _EHSLocationName.EHSLocationName,

         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #MEDIUM }
         @ObjectModel.readOnly: true
         I_EHSLocation.Plant,

         @Consumption.hidden: true
         @ObjectModel.readOnly: true
         I_EHSLocation.EHSLocationStatus,

         @Consumption.hidden: true
         @ObjectModel.readOnly: true
         cast( I_EHSLocation.EHSLocationAuthorizationGroup as ehfnd_loc_auth_group_nc preserving type ) as EHSLocationAuthorizationGroup,

         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #MEDIUM }
         @ObjectModel.readOnly: true
         I_EHSLocation.CostCenter,

         @Search: { defaultSearchElement: true,
                    fuzzinessThreshold: 1,
                    ranking: #MEDIUM }
         @ObjectModel.readOnly: true
         I_EHSLocation.Country,

         @Consumption.hidden: true
         @ObjectModel.readOnly: true
         I_EHSLocation.CompanyCode,

         @Consumption.hidden: true
         @ObjectModel.readOnly: true
         I_EHSLocation.BusinessArea,

         -- Associations
         _EHSLocationName

}
where
      I_EHSLocation.RevisionStartDate <= $session.system_date
  and I_EHSLocation.RevisionEndDate   >= $session.system_date
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CURRENTEHSLOCATIONNAMETEXT",
"I_EHSLOCATION",
"I_EHSLOCATIONHIERARCHYNODE",
"I_EHSLOCATIONHIERARCHYREVISION",
"I_SAFETYINSTRUCTIONDEFINITION"
],
"ASSOCIATED":
[
"I_CURRENTEHSLOCATIONNAMETEXT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/