C_EHSControlImplmtnForTaskList

DDL: C_EHSCONTROLIMPLMTNFORTASKLIST Type: view CONSUMPTION Package: EHHSS_CNS_RISK_ASSESSMENT

EHS Control Implementation for Task List

C_EHSControlImplmtnForTaskList is a Consumption CDS View that provides data about "EHS Control Implementation for Task List" in SAP S/4HANA. It reads from 1 data source (I_EHSRiskControl) and exposes 20 fields with key field EHSControlInstanceUUID. It has 7 associations to related views. Part of development package EHHSS_CNS_RISK_ASSESSMENT.

Data Sources (1)

SourceAliasJoin Type
I_EHSRiskControl I_EHSRiskControl from

Associations (7)

CardinalityTargetAliasCondition
[0..*] I_EHSCtrlImplmtnStatusText _EHSCtrlImplmtnStatusText $projection.EHSControlImplStatus = _EHSCtrlImplmtnStatusText.EHSControlImplStatus
[0..*] I_CurrentEHSLocationNameText _CurrentEHSLocationNameText $projection.ehslocationuuid = _CurrentEHSLocationNameText.EHSLocationUUID
[0..*] I_HazardText _HazardText $projection.hazard = _HazardText.Hazard
[0..*] I_CurrentEHSAgentNameText _CurrentEHSAgentNameText $projection.EHSAgentUUID = _CurrentEHSAgentNameText.EHSAgentUUID
[0..*] I_EHSOperationalStatusText _EHSOperationalStatusText $projection.operationalstatus = _EHSOperationalStatusText.OperationalStatus
[0..*] C_EHSControlImplementationTask _Tasks $projection.EHSControlInstanceUUIDHex = _Tasks.EHSTaskHostObjectInstance
[0..*] I_EHSTaskDefinitionTP _EHSTaskDefinitionTP $projection.EHSControlInstanceUUID = _EHSTaskDefinitionTP.EHSTaskHostObjectInstanceUUID

Annotations (13)

NameValueLevelField
AbapCatalog.compiler.compareFilter true view
AbapCatalog.sqlViewName CEHSCIMFTSKLST view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
Consumption.semanticObject EHSControlImplementation view
EndUserText.label EHS Control Implementation for Task List view
Metadata.allowExtensions true view
ObjectModel.representativeKey EHSControlInstanceUUID view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.dataClass #MIXED view
VDM.viewType #CONSUMPTION view

Fields (20)

KeyFieldSource TableSource FieldDescription
KEY EHSControlInstanceUUID EHSControlInstanceUUID
EHSControlInstanceUUIDHex
EHSControlTitleendasEHSControlTitle
EHSControlImplStatus EHSControlImplStatus
_EHSCtrlImplementationStatus _EHSCtrlImplementationStatus
EHSLocationUUID _EHSRiskRoot EHSLocationUUID
_EHSLocationRoot _EHSRiskRoot _EHSLocationRoot
Hazard _EHSRiskRoot Hazard
_Hazard _EHSRiskRoot _Hazard
OperationalStatus _EHSRiskRoot OperationalStatus
_EHSOperationalStatus _EHSRiskRoot _EHSOperationalStatus
_EHSCtrlImplmtnStatusText _EHSCtrlImplmtnStatusText
_CurrentEHSLocationNameText _CurrentEHSLocationNameText
_HazardText _HazardText
_CurrentEHSAgentNameText _CurrentEHSAgentNameText
_EHSOperationalStatusText _EHSOperationalStatusText
_Tasks _Tasks
EHSRiskUUID EHSRiskUUID
_EHSRiskRoot _EHSRiskRoot
_EHSTaskDefinitionTP _EHSTaskDefinitionTP
@AbapCatalog: {
  compiler.compareFilter: true,
  sqlViewName: 'CEHSCIMFTSKLST',
  preserveKey:true 
}
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@Consumption.semanticObject: 'EHSControlImplementation'
@EndUserText.label: 'EHS Control Implementation for Task List'
@Metadata.allowExtensions: true
@ObjectModel: {
  semanticKey: ['EHSControlTitle'],
  representativeKey: 'EHSControlInstanceUUID',
  usageType:{ serviceQuality: #C,        // < 15 msec

              sizeCategory:   #M,         // < 100.000

              dataClass:      #MIXED }
}
@VDM.viewType: #CONSUMPTION
define view C_EHSControlImplmtnForTaskList
  as select from I_EHSRiskControl
  association [0..*] to I_EHSCtrlImplmtnStatusText     as _EHSCtrlImplmtnStatusText   on $projection.EHSControlImplStatus = _EHSCtrlImplmtnStatusText.EHSControlImplStatus
  association [0..*] to I_CurrentEHSLocationNameText   as _CurrentEHSLocationNameText on $projection.ehslocationuuid = _CurrentEHSLocationNameText.EHSLocationUUID
  association [0..*] to I_HazardText                   as _HazardText                 on $projection.hazard = _HazardText.Hazard
  association [0..*] to I_CurrentEHSAgentNameText      as _CurrentEHSAgentNameText    on $projection.EHSAgentUUID = _CurrentEHSAgentNameText.EHSAgentUUID
  association [0..*] to I_EHSOperationalStatusText     as _EHSOperationalStatusText   on $projection.operationalstatus = _EHSOperationalStatusText.OperationalStatus
  association [0..*] to C_EHSControlImplementationTask as _Tasks                      on $projection.EHSControlInstanceUUIDHex = _Tasks.EHSTaskHostObjectInstance
  association [0..*] to I_EHSTaskDefinitionTP          as _EHSTaskDefinitionTP        on $projection.EHSControlInstanceUUID = _EHSTaskDefinitionTP.EHSTaskHostObjectInstanceUUID
{
  key EHSControlInstanceUUID,
      bintohex(EHSControlInstanceUUID) as EHSControlInstanceUUIDHex,

      case EHSControlIsAdhoc
            when 'X' then EHSControlAdhocTitle
            else _EHSControl._EHSCtrlTitleTxt[1:Language = $session.system_language].EHSControlTitle // EHSControlUUID is UUID of Control Master

      end as EHSControlTitle,

      // Fields whose text should be displayed

      @ObjectModel.text.association: '_EHSCtrlImplmtnStatusText'
      EHSControlImplStatus,
      _EHSCtrlImplementationStatus,
      @ObjectModel.text.association: '_CurrentEHSLocationNameText'
      _EHSRiskRoot.EHSLocationUUID,
      _EHSRiskRoot._EHSLocationRoot,
      @ObjectModel.text.association: '_HazardText'
      _EHSRiskRoot.Hazard,
      
      _EHSRiskRoot._Hazard,
      @ObjectModel.text.association: '_CurrentEHSAgentNameText'
      cast ( case
        when _EHSRiskRoot.ChemicalUUID != hextobin( '00000000000000000000000000000000' )
        then _EHSRiskRoot.ChemicalUUID
        when _EHSRiskRoot.AirborneAgentUUID != hextobin( '00000000000000000000000000000000' )
        then _EHSRiskRoot.AirborneAgentUUID
        when _EHSRiskRoot.PhysicalAgentUUID != hextobin( '00000000000000000000000000000000' )
        then _EHSRiskRoot.PhysicalAgentUUID
        else hextobin( '00000000000000000000000000000000' )
      end as ehhss_agent_combined_uuid_ref preserving type ) as EHSAgentUUID,
      @ObjectModel.text.association: '_EHSOperationalStatusText'
      _EHSRiskRoot.OperationalStatus,
      _EHSRiskRoot._EHSOperationalStatus, 

      // Text Associations

      _EHSCtrlImplmtnStatusText,
      _CurrentEHSLocationNameText,
      _HazardText,
      _CurrentEHSAgentNameText,
      _EHSOperationalStatusText,
     

      // The Tasks

      _Tasks,
      
      // Needed For Auth Check

      //--[ GENERATED:012:29JlHNUf7jY4oS0yl5vKTW

      @Consumption.valueHelpDefinition: [ 
        { entity:  { name:    'I_EHSRiskStdVH',
                     element: 'EHSRiskUUID' }
        }]
      // ]--GENERATED

      EHSRiskUUID,
      _EHSRiskRoot,

      // The Task Definiton BO to get the Function Imports for Creation

      _EHSTaskDefinitionTP

}