I_CHMLCOMPONENT
Chemical Component
I_CHMLCOMPONENT is a CDS View in S/4HANA. Chemical Component. It contains 22 fields. 21 CDS views read from this table.
CDS Views using this table (21)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| C_ChmlCompOfSubstBsdCmpstn | view | from | CONSUMPTION | Components of Substance Based Composition |
| C_ChmlCompositionComponentVH | view | from | CONSUMPTION | Composition Component |
| C_CmbndChmlAnlytlCmpstn | view | inner | CONSUMPTION | Substance based Analytical Composition |
| C_CmplRqRsltGHSLblHzdCompVH | view | from | CONSUMPTION | Substance indicated as Hazardous Inducing Component |
| C_CmplRqRsltHzdsIngrdntSubstVH | view | from | CONSUMPTION | Substance indicated as Hazardous Ingredient VH |
| C_CmplRqRsltTradeSecretSubstVH | view | from | CONSUMPTION | Substance Indicated as CBI Registration |
| C_GHSLblSensitizingCompVH | view | inner | CONSUMPTION | Substance indicated as Sensitizing Components |
| C_MatlBsdAfterProdCompSubVH | view | from | CONSUMPTION | Substances of Aft Prod Comp of MbC |
| C_MatlBsdRmngSubstVH | view | from | CONSUMPTION | Remaining Substance of MbC |
| C_MatlBsdSubstInRmngCompVH | view | from | CONSUMPTION | Substances in Aft Prod Comp of MbC |
| C_PCTrdScrtSubstVH | view | from | CONSUMPTION | Substance Indicated as CBI |
| C_RawChmlCompOfSuplrMatlCmpstn | view | from | CONSUMPTION | Component of Supplier Material Composition |
| C_US_AnlytlCmpstnRptblQtyCFR | view | inner | CONSUMPTION | Reportable Qunatity from Analytical Composition for 49 CFR |
| I_ChmlComponentOfReldCmpstn | view | from | COMPOSITE | Component of Chemical Composition in Status Released |
| I_ChmlComponentTP | view | from | TRANSACTIONAL | Components for composition |
| I_ChmlSuplrMatlComponentTP | view | from | TRANSACTIONAL | Supplier Material Component |
| P_ChmlSuplrMatlComponentCntr | view | from | CONSUMPTION | |
| P_CmbndChmlAnlytlCmpstnTotal | view | inner | COMPOSITE | |
| P_NmbrOfChmlCompInCmpst | view | inner | BASIC | |
| R_ProdMatlBsdProducedSubstTP | view_entity | from | TRANSACTIONAL | Produced Sub of Mat Bsd Composition - TP |
| R_SubstanceBasedComponentTP | view_entity | from | TRANSACTIONAL | Substance Bsd Composition Component - TP |
Fields (22)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | ChmlCompUUID | ChmlCompUUID | 4 |
| KEY | SubstanceUUID | CompanySubstanceNavgnLink,SubstanceUUID | 10 |
| _ChemicalComposition | _ChemicalComposition | 1 | |
| _ChmlCmplncInfo | _ChmlCmplncInfo | 2 | |
| _ComponentType | _ComponentType | 1 | |
| _OperatorLowerLimit | _OperatorLowerLimit | 1 | |
| _OperatorUpperLimit | _OperatorUpperLimit | 1 | |
| _Substance | _Substance | 2 | |
| _UnitOfMeasure | _UnitOfMeasure | 1 | |
| ChmlCmplncInfoUUID | ChmlCmplncInfoUUID | 4 | |
| ChmlCompIsRemoved | ChmlCompIsRemoved | 1 | |
| ChmlCompOperatorLowerLimit | ChmlCompOperatorLowerLimit | 3 | |
| ChmlCompOperatorUpperLimit | ChmlCompOperatorUpperLimit,ChmlCompReldUprLimitQtyOptr | 7 | |
| ChmlCompositionUUID | ChmlCompositionUUID | 4 | |
| ChmlCompQty | ChmlCompQty | 4 | |
| ChmlCompQtyAsText | ChmlCompQtyAsText | 4 | |
| ChmlCompQtyLowerLimit | ChmlCompQtyLowerLimit | 3 | |
| ChmlCompQtyLowerLimitAsText | ChmlCompQtyLowerLimitAsText,ChmlCompReldLowrLimitQtyAsText | 8 | |
| ChmlCompQtyUnit | ChmlCompQtyUnit | 5 | |
| ChmlCompQtyUpperLimit | ChmlCompQtyUpperLimit | 3 | |
| ChmlCompQtyUpperLimitAsText | ChmlCompQtyUpperLimitAsText,ChmlCompReldUprLimitQtyAsText | 8 | |
| ChmlCompType | ChmlCompType | 2 |
--Label of view
@EndUserText.label: 'Chemical Component'
@AbapCatalog:
{
-- SQL view name (16 characters)
sqlViewName: 'ICCOMPONENT',
--If it's true, the filter conditions are compared and, if they match, the associated join expression is evaluated only once
compiler.compareFilter: true,
preserveKey:true
}
--Access Control: Authorizations Checks
@AccessControl:
{
authorizationCheck: #CHECK
}
--Client Handling of the view
@ClientHandling.algorithm: #SESSION_VARIABLE
--VDM view type
@VDM.viewType: #BASIC
@ObjectModel:
{
--Performance Annotations
usageType:
{
dataClass: #MASTER,
sizeCategory: #XL,
serviceQuality: #C
}
}
/*+[hideWarning] { "IDS" : [ "CARDINALITY_CHECK" ] } */
define view I_ChmlComponent
--Select data from master table 'Chemical Component'
as select from ehfndv_ccmps_cmp as ChemicalComponent
--Link to parent 'Chemical Composition'
association [1..1] to I_ChmlComposition as _ChemicalComposition on $projection.ChmlCompositionUUID = _ChemicalComposition.ChmlCompositionUUID
--Link to 'Chemcial Compliance Info' as root
association [1..1] to I_ChmlCmplncInfo as _ChmlCmplncInfo on $projection.ChmlCmplncInfoUUID = _ChmlCmplncInfo.ChmlCmplncInfoUUID
association [0..1] to I_Substance as _HostSubstance on $projection.HostSubstanceUUID = _HostSubstance.SubstanceUUID
--Link to Substance
association [0..1] to I_SubstanceEnhanced as _Substance on $projection.SubstanceUUID = _Substance.SubstanceUUID
--Link to Role of Ingredient
association [0..1] to I_ChmlCompType as _ComponentType on $projection.ChmlCompType = _ComponentType.ChmlCompType
--Link to Unit of Measure
association [0..1] to I_UnitOfMeasure as _UnitOfMeasure on $projection.ChmlCompQtyUnit = _UnitOfMeasure.UnitOfMeasure
--Link Operator of Lower Limit
association [0..1] to I_ChmlComponentOptrLowrLmt as _OperatorLowerLimit on $projection.ChmlCompOperatorLowerLimit = _OperatorLowerLimit.ChmlCompOperatorLowerLimit
--Link Operator of Upper Limit
association [0..1] to I_ChmlComponentOptrUprLmt as _OperatorUpperLimit on $projection.ChmlCompOperatorUpperLimit = _OperatorUpperLimit.ChmlCompOperatorUpperLimit
association [0..1] to I_ChmlComposition as _PolymerComposition on $projection.SubstanceUUID = _PolymerComposition.SubstanceUUID
and $projection.PolymerCompositionIntIDRef = _PolymerComposition.PolymerCompositionIntID
and _PolymerComposition.ChmlCompositionStatus = 'RE'
and _PolymerComposition.ChmlCompositionType = 'POLYMER'
{
--UUID of component
key ChemicalComponent.chmlcompuuid as ChmlCompUUID,
--UUID of chemical compliance information
@ObjectModel.foreignKey.association: '_ChmlCmplncInfo'
ChemicalComponent.chmlcmplncinfouuid as ChmlCmplncInfoUUID,
--UUID of referenced supplier material
ChemicalComponent.chmlsuplrmatluuid as ChmlSuplrMatlUUID,
--UUID of referenced substance (host substance)
ChemicalComponent.hostsubstanceuuid as HostSubstanceUUID,
--UUID of chemical composition
ChemicalComponent.chmlcompositionuuid as ChmlCompositionUUID,
--Date/Time of creation
@Semantics.systemDateTime.createdAt: true
ChemicalComponent.creationutcdatetime as CreationUTCDateTime,
--Created by
@Semantics.user.createdBy: true
ChemicalComponent.createdbyuser as CreatedByUser,
--Date/Time of change
@Semantics.systemDateTime.lastChangedAt: true
ChemicalComponent.lastchangeutcdatetime as LastChangeUTCDateTime,
--Changed by
@Semantics.user.lastChangedBy: true
ChemicalComponent.lastchangedbyuser as LastChangedByUser,
--UUID of Substance (component)
@ObjectModel.foreignKey.association: '_Substance'
ChemicalComponent.substanceuuid as SubstanceUUID,
--Indicator: Is a component removed - Neccessary for Calculation of Component Status
ChemicalComponent.chmlcompisremoved as ChmlCompIsRemoved,
--Role of Ingredient
@ObjectModel.foreignKey.association: '_ComponentType'
cast( ChemicalComponent.chmlcomptype as ehfnd_cci_ccomp_type_nce preserving type ) as ChmlCompType,
--Concentration of component
@Semantics.quantity.unitOfMeasure: 'ChmlCompQtyUnit'
/*=> if you specify "@Semantics.quantity.unitOfMeasure", you have to expose the unit of measure in the consumption view*/
ChemicalComponent.chmlcompqty as ChmlCompQty,
--Concentration as text (for correct formatting with decimals exactly as entered by user)
ChemicalComponent.chmlcompqtyastext as ChmlCompQtyAsText,
--Unit of measurment of concentration
@Semantics.unitOfMeasure: true
@ObjectModel.foreignKey.association: '_UnitOfMeasure'
ChemicalComponent.chmlcompqtyunit as ChmlCompQtyUnit,
--Operator Lower limit of concentration
@ObjectModel.foreignKey.association: '_OperatorLowerLimit'
ChemicalComponent.chmlcompoperatorlowerlimit as ChmlCompOperatorLowerLimit,
--Lower limit of concentration
@Semantics.quantity.unitOfMeasure: 'ChmlCompQtyUnit'
ChemicalComponent.chmlcompqtylowerlimit as ChmlCompQtyLowerLimit,
--Lower limit as text (for correct formatting with decimals exactly as entered by user)
ChemicalComponent.chmlcompqtylowerlimitastext as ChmlCompQtyLowerLimitAsText,
--Operator Upper limit of concentration
@ObjectModel.foreignKey.association: '_OperatorUpperLimit'
ChemicalComponent.chmlcompoperatorupperlimit as ChmlCompOperatorUpperLimit,
--Upper limit of concentration
@Semantics.quantity.unitOfMeasure: 'ChmlCompQtyUnit'
ChemicalComponent.chmlcompqtyupperlimit as ChmlCompQtyUpperLimit,
--Upper limit as text (for correct formatting with decimals exactly as entered by user)
ChemicalComponent.chmlcompqtyupperlimitastext as ChmlCompQtyUpperLimitAsText,
--Refrence of polymer composition integrate with Anlytical composition
ChemicalComponent.polymercompositionintidref as PolymerCompositionIntIDRef,
--Trade Secret: Identity is Masked
ChemicalComponent.pctrdscrtidentityismasked as PCTrdScrtIdentityIsMasked,
--Trade Secret: Range is marked
ChemicalComponent.pctrdscrtrangeismasked as PCTrdScrtRangeIsMasked,
/*Association*/
_ChemicalComposition,
_ChmlCmplncInfo,
_HostSubstance,
_Substance,
_PolymerComposition,
_ComponentType,
_UnitOfMeasure,
_OperatorLowerLimit,
_OperatorUpperLimit
}