C_ChmlCmplncInfoAssgdPCPrpty

DDL: C_CHMLCMPLNCINFOASSGDPCPRPTY Type: view CONSUMPTION Package: EHFND_CNS_CCI

Chemical Compliance Info assigned Properties

C_ChmlCmplncInfoAssgdPCPrpty is a Consumption CDS View that provides data about "Chemical Compliance Info assigned Properties" in SAP S/4HANA. It reads from 1 data source (P_ChmlCmplncInfoAssgdPCPrpty) and exposes 15 fields with key fields ChmlCmplncInfoUUID, PCPrptyRootType. It has 2 associations to related views. Part of development package EHFND_CNS_CCI.

Data Sources (1)

SourceAliasJoin Type
P_ChmlCmplncInfoAssgdPCPrpty Property from

Associations (2)

CardinalityTargetAliasCondition
[0..1] I_PCPrptyRootType _PCPrptyRootType $projection.PCPrptyRootType = _PCPrptyRootType.PCPrptyRootType -- needed for DCL
[0..1] I_ChmlCmplncInfo _ChmlCmplncInfo $projection.ChmlCmplncInfoUUID = _ChmlCmplncInfo.ChmlCmplncInfoUUID

Annotations (10)

NameValueLevelField
EndUserText.label Chemical Compliance Info assigned Properties view
AbapCatalog.sqlViewName CCCIASGDPRPTY view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #CONSUMPTION view
ObjectModel.representativeKey ChmlCmplncInfoUUID view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view

Fields (15)

KeyFieldSource TableSource FieldDescription
KEY ChmlCmplncInfoUUID ChmlCmplncInfoUUID
KEY PCPrptyRootType PCPrptyRootType
PCPrptyProcgStsText
PCPrptyProcgStsCritlty
PCPrptyNavgnLinkUUID PCPrptyNavgnLinkUUID
StatusInProcessPCPrptyInProcProcgSts
IsActiveentityPCPrptyInProcIsActive
UUIDofreleasedversionPCPrptyReleasedUUID
StatusReleasedPCPrptyReldProcgSts
IsActiveentityPCPrptyReldIsActive
MaterialIsProduced _ChmlCmplncInfo MaterialIsProduced
MaterialIsSold _ChmlCmplncInfo MaterialIsSold
MaterialIsTransported _ChmlCmplncInfo MaterialIsTransported
MaterialIsSourced _ChmlCmplncInfo MaterialIsSourced
neededforDCL_ChmlCmplncInfo
@EndUserText.label: 'Chemical Compliance Info assigned Properties'

@AbapCatalog:
{
  sqlViewName: 'CCCIASGDPRPTY',
  compiler.compareFilter: true
}

@AccessControl:
{
  authorizationCheck: #MANDATORY,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}

--Client Handling of the view
@ClientHandling.algorithm: #SESSION_VARIABLE

--VDM view type
@VDM.viewType: #CONSUMPTION

--ObjectModel Usage Type
@ObjectModel:
{
  representativeKey: 'ChmlCmplncInfoUUID',
  semanticKey:  [ 'ChmlCmplncInfoUUID', 'PCPrptyRootType' ],
  usageType:
  {
    serviceQuality: #C,
    dataClass: #MIXED,
    sizeCategory: #L
  }
}

//--Header information

  /*define data for the header*/
@UI:
{
  headerInfo:
  {
    typeName: 'Property',
    typeNamePlural: 'Properties',
    title:
    {
      label: 'Properties',
      value: 'PCPrptyRootTypeName'
    }
  },
  presentationVariant:
  {
    sortOrder:
    [
      {
        by: 'PCPrptyRootTypeName',
        direction: #ASC
      }
    ],
    requestAtLeast: [
                      'PCPrptyProcgSts',
                      'PCPrptyProcgStsCritlty',
                      'PCPrptyNavgnLinkUUID',
                      'PCPrptyIsActive',
                      'SemanticObject',
                      'SemanticObjectAction',
                      'PCPrptyNavgnLinkParamName',
                      'PCPrptyActiveIndParamName'
                    ]
  }
}

define view C_ChmlCmplncInfoAssgdPCPrpty

  as select from P_ChmlCmplncInfoAssgdPCPrpty as Property

  -- Root type text
  association [0..1] to I_PCPrptyRootType as _PCPrptyRootType on $projection.PCPrptyRootType = _PCPrptyRootType.PCPrptyRootType

  -- needed for DCL
  association [0..1] to I_ChmlCmplncInfo  as _ChmlCmplncInfo  on $projection.ChmlCmplncInfoUUID = _ChmlCmplncInfo.ChmlCmplncInfoUUID
{

       @UI.hidden: true
  key  ChmlCmplncInfoUUID,

       @UI.lineItem: {
         position: 5
       }
       @ObjectModel.text.element: ['PCPrptyRootTypeName']
       @ObjectModel.sort.enabled: false
       @UI.textArrangement: #TEXT_ONLY
  key  PCPrptyRootType,

       @ObjectModel.readOnly: true
       cast(coalesce(
         _PCPrptyRootType._Text[ 1: Language = $session.system_language ].PCPrptyRootTypeName,
         _PCPrptyRootType._Text[ 1: Language = 'E' ].PCPrptyRootTypeName
       )  as ehfnd_prptry_group_sort)    as PCPrptyRootTypeName,

       -------------------------------------------------------------------------------------------------------
       --Information for Navigation to associated property records
       -------------------------------------------------------------------------------------------------------
       -- Overall Status
       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       @ObjectModel.text.element: ['PCPrptyProcgStsText']
       @UI.textArrangement: #TEXT_ONLY
       @UI.lineItem: {
         position: 10,
         label: 'Processing Status',
         criticality: 'PCPrptyProcgStsCritlty',
         criticalityRepresentation: #WITHOUT_ICON
       }
       cast('' as ehfnd_property_status) as PCPrptyProcgSts,

       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       cast('' as val_text)              as PCPrptyProcgStsText,

       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       cast(0 as abap.int1)              as PCPrptyProcgStsCritlty,

       @ObjectModel.readOnly: true
       @UI.hidden: true
       PCPrptyNavgnLinkUUID,

       --Indicator: Is active entity
       @ObjectModel.readOnly: true
       @UI.hidden: true
       cast(PCPrptyIsActive as boole_d)  as PCPrptyIsActive,

       --SemanticObject
       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       cast('' as val_text)              as SemanticObject,

       --SemanticObjectAction
       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       cast('' as val_text)              as SemanticObjectAction,

       --Paramter Name for Navigation Link
       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       cast('' as val_text)              as PCPrptyNavgnLinkParamName,

       --Paramter Name for Activation Indicator
       @ObjectModel.virtualElement
       @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
       @ObjectModel.readOnly: true
       cast('' as val_text)              as PCPrptyActiveIndParamName,

       --UUID of in process version
       @UI.hidden: true
       PCPrptyInProcessUUID,

       --Status In Process
       @UI.hidden: true
       PCPrptyInProcProcgSts,

       --Is Active entity
       @UI.hidden: true
       PCPrptyInProcIsActive,

       --UUID of released version
       @UI.hidden: true
       PCPrptyReleasedUUID,

       --Status Released
       @UI.hidden: true
       PCPrptyReldProcgSts,

       --Is Active entity
       @UI.hidden: true
       PCPrptyReldIsActive,

       @UI.hidden: true
       _ChmlCmplncInfo.MaterialIsProduced,

       @UI.hidden: true
       _ChmlCmplncInfo.MaterialIsSold,

       @UI.hidden: true
       _ChmlCmplncInfo.MaterialIsTransported,

       @UI.hidden: true
       _ChmlCmplncInfo.MaterialIsSourced,

       -- needed for DCL
       _ChmlCmplncInfo
}
//reduce property groups to only compliance info relevant ones

//       PCPrptyRootType.PCPrptyRootType              = 'EHFNDD_PHYSCHEM'