P_ChmlCmplncInfoAssgdPCStRct

DDL: P_CHMLCMPLNCINFOASSGDPCSTRCT Type: view_entity CONSUMPTION Package: EHFND_CNS_CCI

Assgd Stability & Reactivity Proprerties

P_ChmlCmplncInfoAssgdPCStRct is a Consumption CDS View that provides data about "Assgd Stability & Reactivity Proprerties" in SAP S/4HANA. It reads from 2 data sources (I_PCPrptyRootType, I_ChmlCmplncInfo) and exposes 8 fields. It has 1 association to related views. Part of development package EHFND_CNS_CCI.

Data Sources (2)

SourceAliasJoin Type
I_PCPrptyRootType _PCPrptyRootType inner
I_ChmlCmplncInfo ChemicalComplianceInfo from

Associations (1)

CardinalityTargetAliasCondition
[1..1] P_CChmlCmplConstants _Constants _Constants.Constant1 = _Constants.Constant1

Annotations (5)

NameValueLevelField
EndUserText.label Assgd Stability & Reactivity Proprerties view
AccessControl.authorizationCheck #NOT_REQUIRED view
VDM.viewType #CONSUMPTION view
VDM.private true view
Feature FTGL_PSSPROD_8827 view

Fields (8)

KeyFieldSource TableSource FieldDescription
ChmlCmplncInfoUUIDasChmlCmplncInfoUUID
PCPrptyRootTypeasPCPrptyRootType
PCPrptyInProcessUUID StabilityReactivityInProcess PCStRctUUID
PCPrptyInProcProcgSts StabilityReactivityInProcess PCPrptyProcgSts
PCPrptyReleasedUUID StabilityReactivityReleased PCStRctUUID
PCPrptyReldProcgSts StabilityReactivityReleased PCPrptyProcgSts
PCPrptyReleasedByasReleasedByUser
PCStRctUUIDendasPCPrptyNavgnLinkUUID
@AbapCatalog.viewEnhancementCategory: [#NONE]
@EndUserText.label: 'Assgd Stability & Reactivity Proprerties'

--Access Control: Authorizations Checks
@AccessControl:
{
   authorizationCheck: #NOT_REQUIRED
}

--VDM view type
@VDM.viewType: #CONSUMPTION
@VDM.private: true
@Feature: 'FTGL_PSSPROD_8827'
define view entity P_ChmlCmplncInfoAssgdPCStRct
  as select from           I_ChmlCmplncInfo  as ChemicalComplianceInfo
    inner join             I_PCPrptyRootType as _PCPrptyRootType             on _PCPrptyRootType.DomainValue = 'EHFNDD_STA'

  --Join data from stability and reactivity properties with status In Process => Active or draft composition
    left outer to one join I_PCStRct         as StabilityReactivityInProcess on  ChemicalComplianceInfo.ChmlCmplncInfoUUID    = StabilityReactivityInProcess.ChmlCmplncInfoUUID
                                                                             and StabilityReactivityInProcess.PCPrptyProcgSts = 'IP'

  --Join data from stability and reactivity properties with status Released => only active chemical composition, because released composition is not editable
    left outer to one join I_PCStRct         as StabilityReactivityReleased  on  ChemicalComplianceInfo.ChmlCmplncInfoUUID   = StabilityReactivityReleased.ChmlCmplncInfoUUID
                                                                             and StabilityReactivityReleased.PCPrptyProcgSts = 'RE'
  --Dummy constant selection to solve issues with case-statements with constants (not null-preserving)
  association [1..1] to P_CChmlCmplConstants as _Constants on _Constants.Constant1 = _Constants.Constant1
{
      --UUID of chemical compliance information
  key ChemicalComplianceInfo.ChmlCmplncInfoUUID                                 as ChmlCmplncInfoUUID,

      --Property Type
  key _PCPrptyRootType.PCPrptyRootType                                          as PCPrptyRootType,

      StabilityReactivityInProcess.PCStRctUUID                                  as PCPrptyInProcessUUID,
      StabilityReactivityInProcess.PCPrptyProcgSts                              as PCPrptyInProcProcgSts,

      --Is Active entity
      cast(_Constants[inner].ConstantTrue as sdraft_is_active preserving type ) as PCPrptyInProcIsActive,

      StabilityReactivityReleased.PCStRctUUID                                   as PCPrptyReleasedUUID,
      StabilityReactivityReleased.PCPrptyProcgSts                               as PCPrptyReldProcgSts,
      --Released By User
      StabilityReactivityReleased.PCPrptyReleasedBy                             as ReleasedByUser,

      --Is Active entity
      cast(_Constants[inner].ConstantTrue as sdraft_is_active preserving type ) as PCPrptyReldIsActive,
      
            --Navigation Link UUID
      case
        when StabilityReactivityInProcess.PCPrptyProcgSts = 'IP' then
          StabilityReactivityInProcess.PCStRctUUID
        when StabilityReactivityReleased.PCPrptyProcgSts = 'RE' then
          StabilityReactivityReleased.PCStRctUUID
      end                                                                       as PCPrptyNavgnLinkUUID,

      --Active Indicator
      case
        when StabilityReactivityInProcess.PCPrptyProcgSts = 'IP'
          then cast(_Constants[inner].ConstantTrue as sdraft_is_active preserving type )
        when StabilityReactivityReleased.PCPrptyProcgSts = 'RE'
          then cast(_Constants[inner].ConstantTrue as sdraft_is_active preserving type )
      end                                                                       as PCPrptyIsActive
}