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.
@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'
]
}
}
defineview C_ChmlCmplncInfoAssgdPCPrpty
asselectfrom 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: truekey ChmlCmplncInfoUUID,
@UI.lineItem: {
position: 5
}@ObjectModel.text.element: ['PCPrptyRootTypeName']@ObjectModel.sort.enabled: false@UI.textArrangement: #TEXT_ONLYkey PCPrptyRootType,
@ObjectModel.readOnly: truecast(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: truecast('' as val_text) as PCPrptyProcgStsText,
@ObjectModel.virtualElement@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
@ObjectModel.readOnly: truecast(0 asabap.int1) as PCPrptyProcgStsCritlty,
@ObjectModel.readOnly: true@UI.hidden: true
PCPrptyNavgnLinkUUID,
--Indicator: Is active entity@ObjectModel.readOnly: true@UI.hidden: truecast(PCPrptyIsActive as boole_d) as PCPrptyIsActive,
--SemanticObject
@ObjectModel.virtualElement@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
@ObjectModel.readOnly: truecast('' as val_text) as SemanticObject,
--SemanticObjectAction
@ObjectModel.virtualElement@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
@ObjectModel.readOnly: truecast('' as val_text) as SemanticObjectAction,
--Paramter Name for Navigation Link
@ObjectModel.virtualElement@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
@ObjectModel.readOnly: truecast('' as val_text) as PCPrptyNavgnLinkParamName,
--Paramter Name for Activation Indicator
@ObjectModel.virtualElement@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_EHFND_PRP_ASSIGNED_CALC_EXT'
@ObjectModel.readOnly: truecast('' 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'