--Label of view
-- e.g. display as filter name in the consumption
@EndUserText.label: 'Chemical Compliance Supplier Material Assignment'
@AbapCatalog:
{
-- SQL view name (16 characters)
sqlViewName: 'ICCSMASS',
--If it's true, the filter conditions are compared and, if they match, the associated join expression is evaluated only once
compiler.compareFilter: true
}
--Access Control: Authorizations Checks
@AccessControl:
{
authorizationCheck: #CHECK,
// blocking of personal data required because of link to business partner / supplier
personalData.blocking: #REQUIRED
}
--Client Handling of the view
@ClientHandling.algorithm: #SESSION_VARIABLE
--VDM view type
@VDM.viewType: #BASIC
@ObjectModel:
{
--Performance Annotations
usageType:
{
dataClass: #MASTER,
sizeCategory: #M,
serviceQuality: #B
}
}
/*+[hideWarning] { "IDS" : [ "CALCULATED_FIELD_CHECK" ] } */
define view I_ChmlCmplncSuplrMatlAssgmt
--Select data from Supplier Material Assignment
as select from ehfndv_cci_csm
--Chemical Compliance information
association [1..1] to I_ChmlCmplncInfo as _ChmlCmplncInfo on $projection.ChmlCmplncInfoUUID = _ChmlCmplncInfo.ChmlCmplncInfoUUID
--Chemical Supplier Material
association [1..1] to I_ChmlSuplrMatl as _SupplierMaterial on $projection.ChmlSuplrMatlUUID = _SupplierMaterial.ChmlSuplrMatlUUID
--Link to domain values
association [0..1] to I_ChmlSuplrMatlSuplrSts as _SupplierStatus on $projection.ChmlSuplrMatlSuplrSts = _SupplierStatus.ChmlSuplrMatlSuplrSts
{
--UUID of assignment
key chmlcmplncsuplrmatlassgmtuuid as ChmlCmplncSuplrMatlAssgmtUUID,
--UUID of chemical compliance info
chmlcmplncinfouuid as ChmlCmplncInfoUUID,
--UUID of Supplier Material
@ObjectModel.foreignKey.association: '_SupplierMaterial'
chmlsuplrmatluuid as ChmlSuplrMatlUUID,
@Semantics.systemDateTime.createdAt: true
cast(creationutcdatetime as ehfnd_bo_crea_date_time preserving type ) as CreationUTCDateTime,
@Semantics.user.createdBy: true
cast(createdbyuser as ehfnd_bo_crea_uname preserving type ) as CreatedByUser,
@Semantics.systemDateTime.lastChangedAt: true
cast(lastchangeutcdatetime as ehfnd_bo_lchg_date_time preserving type ) as LastChangeUTCDateTime,
@Semantics.user.lastChangedBy: true
cast(lastchangedbyuser as ehfnd_bo_lchg_uname preserving type ) as LastChangedByUser,
--Supplier Status per chemical compliance information
@ObjectModel.foreignKey.association: '_SupplierStatus'
chmlsuplrmatlsuplrsts as ChmlSuplrMatlSuplrSts,
_SupplierMaterial.ChmlSuplrMatlIsOutdated as ChmlSuplrMatlIsOutdated,
/* Associations */
_ChmlCmplncInfo,
_SupplierMaterial,
_SupplierStatus
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHMLSUPLRMATL",
"EHFNDV_CCI_CSM"
],
"ASSOCIATED":
[
"I_CHMLCMPLNCINFO",
"I_CHMLSUPLRMATL",
"I_CHMLSUPLRMATLSUPLRSTS"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/