P_SftyInstrnTextBlockFactory

DDL: P_SFTYINSTRNTEXTBLOCKFACTORY Type: view CONSUMPTION

P_SftyInstrnTextBlockFactory is a Consumption CDS View in SAP S/4HANA. It reads from 7 data sources and exposes 31 fields with key fields EHSLocationUUID, SafetyInstructionType, SafetyInstructionSubType, SafetyInstructionType, SafetyInstructionSubType.

Data Sources (7)

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

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PFSITBFCTR view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
VDM.viewType #CONSUMPTION view
VDM.private true view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (31)

KeyFieldSource TableSource FieldDescription
KEY EHSLocationUUID I_EHSLocation EHSLocationUUID
KEY SafetyInstructionType I_SafetyInstructionDefinition SafetyInstructionType
KEY SafetyInstructionSubType I_SafetyInstructionDefinition SafetyInstructionSubType
EHSLocationType
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
_Plant I_EHSLocation _Plant
_EHSLocationStatus I_EHSLocation _EHSLocationStatus
_BusinessArea I_EHSLocation _BusinessArea
_CompanyCode I_EHSLocation _CompanyCode
EHSLocationUUID
KEY SafetyInstructionType
KEY SafetyInstructionSubType
EHSLocationType
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
_Plant I_EHSLocation _Plant
_EHSLocationStatus I_EHSLocation _EHSLocationStatus
_BusinessArea I_EHSLocation _BusinessArea
_CompanyCode I_EHSLocation _CompanyCode
_Country I_EHSLocation _Country
@AbapCatalog: {
  sqlViewName: 'PFSITBFCTR',
  compiler.compareFilter: true,
  preserveKey: true
  }

@VDM: { 
  viewType: #CONSUMPTION,
  private: true
  }

@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED

@AccessControl.authorizationCheck: #NOT_REQUIRED

@ClientHandling.algorithm: #SESSION_VARIABLE

define view P_SftyInstrnTextBlockFactory
  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

{

  key    I_EHSLocation.EHSLocationUUID,

  key    I_SafetyInstructionDefinition.SafetyInstructionType,

  key    I_SafetyInstructionDefinition.SafetyInstructionSubType,

         cast ( I_EHSLocation.EHSLocationType as ehfnd_loc_type_code_nc preserving type )               as EHSLocationType,

         I_EHSLocation.Plant,

         I_EHSLocation.EHSLocationStatus,

         cast( I_EHSLocation.EHSLocationAuthorizationGroup as ehfnd_loc_auth_group_nc preserving type ) as EHSLocationAuthorizationGroup,

         I_EHSLocation.CostCenter,

         I_EHSLocation.Country,

         I_EHSLocation.CompanyCode,

         I_EHSLocation.BusinessArea,

         I_EHSLocation._Plant,
         I_EHSLocation._EHSLocationStatus,
         I_EHSLocation._BusinessArea,
         I_EHSLocation._CompanyCode,
         I_EHSLocation._Country

}
where
      I_EHSLocation.RevisionStartDate <= $session.system_date
  and I_EHSLocation.RevisionEndDate   >= $session.system_date

union all

select distinct 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

{

  key    I_EHSLocation.EHSLocationUUID,

  key    ''                                                                                             as SafetyInstructionType,

  key    ''                                                                                             as SafetyInstructionSubType,

         cast ( I_EHSLocation.EHSLocationType as ehfnd_loc_type_code_nc preserving type )               as EHSLocationType,

         I_EHSLocation.Plant,

         I_EHSLocation.EHSLocationStatus,

         cast( I_EHSLocation.EHSLocationAuthorizationGroup as ehfnd_loc_auth_group_nc preserving type ) as EHSLocationAuthorizationGroup,

         I_EHSLocation.CostCenter,

         I_EHSLocation.Country,

         I_EHSLocation.CompanyCode,

         I_EHSLocation.BusinessArea,

         I_EHSLocation._Plant,
         I_EHSLocation._EHSLocationStatus,
         I_EHSLocation._BusinessArea,
         I_EHSLocation._CompanyCode,
         I_EHSLocation._Country

}
where
      I_EHSLocation.RevisionStartDate <= $session.system_date
  and I_EHSLocation.RevisionEndDate   >= $session.system_date