@EndUserText.label : 'Substances of Aft Prod Comp of MbC'
@AbapCatalog:
{
sqlViewName: 'AFTPRCOMPSUBVH',
compiler.compareFilter: true ,
preserveKey: true
}
@AccessControl:
{
authorizationCheck: #MANDATORY,
// blocking of personal data not required (no personal data fields exposed for material)
personalData.blocking: #NOT_REQUIRED
}
@VDM.viewType: #CONSUMPTION
@ObjectModel:
{
dataCategory: #VALUE_HELP,
usageType:
{
dataClass: #MIXED,
sizeCategory: #L,
serviceQuality: #C
} ,
representativeKey: 'ChmlCompUUID',
semanticKey: ['SubstanceName']
}
@Metadata.ignorePropagatedAnnotations: true
@ClientHandling.algorithm: #SESSION_VARIABLE
@UI:{
presentationVariant: [{
sortOrder: [{ by : 'SubstanceName', direction: #ASC } ],
requestAtLeast: ['SubstanceName',
'CASNumber',
'ChmlCompQtyAsText',
'ChmlCompQtyUnit',
'ChmlCompOperatorLowerLimit',
'ChmlCompQtyLowerLimitAsText',
'ChmlCompOperatorUpperLimit',
'ChmlCompQtyUpperLimitAsText'
]
}]
}
@Search.searchable: true
/*
* This view is used in the object page of the material based composition
* to diplay all CCIs with type = 'Bulk' and role 'Produced' or 'Sourced'
* in a value help
*/
define view C_MatlBsdAfterProdCompSubVH
with parameters
P_ChmlCmplncInfoUUID : sysuuid_x,
P_MatlBsdCompUUID : sysuuid_x
-- select Raw Material
as select from I_ChmlComponent as Component
--------------------------------------------------------------------------------------------------------------------
--Nodes/Detaildata
--------------------------------------------------------------------------------------------------------------------
--Parent Composition
association [1..1] to I_ChmlComposition as _ChemicalComposition on $projection.ChmlCompositionUUID = _ChemicalComposition.ChmlCompositionUUID
--Substance
association [0..1] to I_SubstanceTP as _Substance on $projection.SubstanceUUID = _Substance.SubstanceUUID
{
key Component.ChmlCompUUID,
Component.ChmlCompositionUUID,
Component.ChmlCmplncInfoUUID,
-- MatlBsdComp of Root
$parameters .P_MatlBsdCompUUID as MatlBsdCompUUID,
--UUID of Substance
Component.SubstanceUUID,
-- Combined Component Name: Concat (1. specific substance name 2. listed substance name 3. internal name)
@ObjectModel.readOnly: true
@Search: {
defaultSearchElement: true ,
fuzzinessThreshold: 0.8,
ranking: #HIGH
}
_Substance.SubstanceName,
@UI: {
lineItem: [{
position: 20 ,
importance: #MEDIUM
} ]
}
_Substance._ListedSubstance.CASNumber,
@Semantics.quantity.unitOfMeasure : 'ChmlCompQtyUnit'
Component.ChmlCompQty,
Component.ChmlCompQtyAsText,
Component.ChmlCompQtyUnit,
Component.ChmlCompOperatorLowerLimit,
@Semantics.quantity.unitOfMeasure : 'ChmlCompQtyUnit'
Component.ChmlCompQtyLowerLimit,
Component.ChmlCompQtyLowerLimitAsText,
Component.ChmlCompOperatorUpperLimit,
@Semantics.quantity.unitOfMeasure : 'ChmlCompQtyUnit'
Component.ChmlCompQtyUpperLimit,
Component.ChmlCompQtyUpperLimitAsText,
Component.ChmlCompIsRemoved,
// @ObjectModel.readOnly: true
// @ObjectModel.virtualElement
// @ObjectModel.virtualElementCalculatedBy : 'ABAP:CL_EHFND_MCMPS_APC_SUB_AC_EXIT'
// cast ( 0 as ehfnd_cci_ccomp_qty_ch ) as ChmlCompAbsQtyAsText,
@UI.hidden: true
_Substance.ResponsibleUnit as ResponsibleUnit,
/* Associations */
Component._ChmlCmplncInfo,
_ChemicalComposition,
_Substance
}
where
Component.ChmlCmplncInfoUUID = $parameters .P_ChmlCmplncInfoUUID
and Component._ChmlCmplncInfo.ChmlCmplncInfoType = 'BU'
and
-- Only for released analytical composition
Component._ChemicalComposition.ChmlCompositionType = 'ANALYTIC1'
and _ChemicalComposition.ChmlCompositionStatus = 'RE'
/*+[internal] {
"BASEINFO":
{
"FROM ":
[
"I_CHMLCMPLNCINFO",
"I_CHMLCOMPONENT",
"I_CHMLCOMPOSITION",
"I_SUBSTACTIVEDRAFTLSTDSUBST",
"I_SUBSTANCETP"
],
"ASSOCIATED":
[
"I_CHMLCMPLNCINFO",
"I_CHMLCOMPOSITION",
"I_SUBSTANCETP"
],
"BASE":
[
"I_CHMLCOMPONENT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Depth:
1
2
3
4
5
All
Reload
C_MatlBsdAfterProdCompSubVH view