@EndUserText.label: 'After Production Cmpnt in Mat.Bsd Cmpstn'
@AbapCatalog:
{
sqlViewName: 'IMCOMPONENTAPTP',
compiler.compareFilter: true
}
@AccessControl:
{
authorizationCheck: #MANDATORY
}
--Client Handling of the view
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #TRANSACTIONAL
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@ObjectModel:
{
--Transactional Annotations for the generated BO
modelCategory: #BUSINESS_OBJECT,
transactionalProcessingEnabled: true,
createEnabled: true,
updateEnabled: true,
deleteEnabled: true,
writeDraftPersistence: 'EHFNDW_MCMPS_APC',
writeActivePersistence: 'EHFNDV_MCMPS_CMP',
semanticKey: [ 'MatlBsdCompUUID' ],
usageType:
{
dataClass: #TRANSACTIONAL,
sizeCategory: #XL,
serviceQuality: #C
}
}
define view I_MatlBsdAfterProdnCompTP
--Select data from basic view 'Material Based Component'
as select from I_MatlBasedCmpstnComponent as MatlBsdComponentAfterProdn
--Nodes/Detaildata;
association [1..1] to I_MatlBasedCompositionTP as _MatlBasedComposition on $projection.ChmlCompositionUUID = _MatlBasedComposition.ChmlCompositionUUID
{
--UUID of component
@ObjectModel.mandatory: true
key MatlBsdComponentAfterProdn.MatlBsdCompUUID,
--Active UUID of material based component
MatlBsdComponentAfterProdn.MatlBsdCompUUID as ActiveMatlBsdCompUUID,
--UUID of chemical compliance information (UP containing the CompChmlCmplncInfoUUID)
MatlBsdComponentAfterProdn.ChmlCmplncInfoUUID,
--UUID of chemical composition
@ObjectModel.mandatory: true
@ObjectModel.foreignKey.association: '_MatlBasedComposition'
MatlBsdComponentAfterProdn.ChmlCompositionUUID,
--Date/Time of creation
@ObjectModel.readOnly: true
MatlBsdComponentAfterProdn.CreationUTCDateTime,
--Created by
@ObjectModel.readOnly: true
MatlBsdComponentAfterProdn.CreatedByUser,
--Date/Time of change
@ObjectModel.readOnly: true
MatlBsdComponentAfterProdn.LastChangeUTCDateTime,
--Changed by
@ObjectModel.readOnly: true
MatlBsdComponentAfterProdn.LastChangedByUser,
--Component that available after Production
MatlBsdComponentAfterProdn.MatlBsdCompProductionType,
--UUID of component contained in material based composition TODO
@ObjectModel.mandatory: true
MatlBsdComponentAfterProdn.CompChmlCmplncInfoUUID,
--Concentration of component
MatlBsdComponentAfterProdn.ChmlCompQty,
--Concentration as text (for correct formatting with decimals exactly as entered by user)
MatlBsdComponentAfterProdn.ChmlCompQtyAsText,
--Unit of measurment of concentration
MatlBsdComponentAfterProdn.ChmlCompQtyUnit,
--Operator for Lower limit of concentration
MatlBsdComponentAfterProdn.ChmlCompOperatorLowerLimit,
--Lower limit of concentration
MatlBsdComponentAfterProdn.ChmlCompQtyLowerLimit,
--Lower limit as text (for correct formatting with decimals exactly as entered by user)
MatlBsdComponentAfterProdn.ChmlCompQtyLowerLimitAsText,
--Operator for Upper limit of concentration
MatlBsdComponentAfterProdn.ChmlCompOperatorUpperLimit,
--Upper limit of concentration
MatlBsdComponentAfterProdn.ChmlCompQtyUpperLimit,
--Upper limit as text (for correct formatting with decimals exactly as entered by user)
MatlBsdComponentAfterProdn.ChmlCompQtyUpperLimitAsText,
--Is a component not contained
MatlBsdComponentAfterProdn.ChmlCompIsNotContained,
--Is a component removed
MatlBsdComponentAfterProdn.ChmlCompIsRemoved,
/* Associations */
@ObjectModel.association.type: [ #TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT ]
_MatlBasedComposition,
_ChmlCmplncInfo,
_CompChmlCmplncInfo,
_UnitOfMeasure,
_OperatorLowerLimit,
_OperatorUpperLimit
}
where
MatlBsdComponentAfterProdn.MatlBsdCompProductionType = 'O'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_MATLBASEDCMPSTNCOMPONENT"
],
"ASSOCIATED":
[
"I_CHMLCMPLNCINFO",
"I_CHMLCOMPONENTOPTRLOWRLMT",
"I_CHMLCOMPONENTOPTRUPRLMT",
"I_MATLBASEDCOMPOSITIONTP",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_MATLBASEDCMPSTNCOMPONENT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/