I_CHMLCOMPOSITION

CDS View

Chemical Composition

I_CHMLCOMPOSITION is a CDS View in S/4HANA. Chemical Composition. It contains 22 fields. 44 CDS views read from this table.

CDS Views using this table (44)

ViewTypeJoinVDMDescription
C_CmbndChmlAnlytlCmpstn view inner CONSUMPTION Substance based Analytical Composition
C_CmplRqRsltGHSLblHzdCompVH view inner CONSUMPTION Substance indicated as Hazardous Inducing Component
C_CmplRqRsltHzdsIngrdntSubstVH view inner CONSUMPTION Substance indicated as Hazardous Ingredient VH
C_CmplRqRsltTradeSecretSubstVH view inner CONSUMPTION Substance Indicated as CBI Registration
C_CmpstnHistory view from CONSUMPTION History of Composition
C_GHSLblSensitizingCompVH view inner CONSUMPTION Substance indicated as Sensitizing Components
C_MatlBsdRmngSubstVH view inner CONSUMPTION Remaining Substance of MbC
C_MatlBsdSubstInRmngCompVH view inner CONSUMPTION Substances in Aft Prod Comp of MbC
C_PCTrdScrtSubstVH view inner CONSUMPTION Substance Indicated as CBI
C_PlmrCompositionVH view inner CONSUMPTION Polymer Composition
C_RawChmlCompOfSuplrMatlCmpstn view inner CONSUMPTION Component of Supplier Material Composition
C_US_AnlytlCmpstnRptblQtyCFR view inner CONSUMPTION Reportable Qunatity from Analytical Composition for 49 CFR
I_ChmlCmplncAnlyts1 view inner COMPOSITE Chemical Compliance Info for Analytics
I_ChmlCmplncAnlyts2 view inner COMPOSITE Dimension Product Assignment
I_ChmlCmplncSuplrMatlAnlyts1 view inner COMPOSITE Dimension Raw Material Composition
I_ChmlCompositionActiveDraft view from COMPOSITE Chemical Composition with active and draft data
I_ChmlCompositionStdVH view from COMPOSITE Chemical Composition
I_ChmlCompositionTP view from TRANSACTIONAL Chemical Composition
I_MatlBasedCompositionActvDrft view from BASIC Chemical Composition with active and draft data
I_MatlBasedCompositionTP view from TRANSACTIONAL Material Based Composition
P_AssociatedAnlytlInProcCmpstn view from CONSUMPTION Associated Analytical Compositon with Status In Process
P_AssociatedAnlytlReldCmpstn view from CONSUMPTION Associated Analytical Compositon with Status Released
P_AssociatedMatlInProcCmpstn view from CONSUMPTION Associated Material-based Compositon with Status In Process
P_AssociatedMatlReldCmpstn view from CONSUMPTION Associated Material-based Compositon with Status Released
P_AssociatedProductComposition view from CONSUMPTION Associated Composition of Product
P_AssociatedSubstLglCmpstn view from CONSUMPTION Assoc. Legal Compositon In Process and Released
P_AssociatedSubstLglProcCmpstn view from CONSUMPTION Associated legal Compositon with Status In Process
P_AssociatedSubstLglReldCmpstn view from CONSUMPTION Associated Legal Compositon with Status Released
P_AssociatedTrdSecret view_entity from CONSUMPTION
P_AssociatedTrdSecretProc view_entity from CONSUMPTION
P_AssociatedTrdSecretReld view_entity from CONSUMPTION
P_ChmlCmplncInfoCmpstnLastDate view from CONSUMPTION CCI Composition Last Date
P_ChmlCmpstnStatusCriticality view inner COMPOSITE
P_ChmlCompositionCriticality view from CONSUMPTION
P_ChmlCompositionMigrationCast view from COMPOSITE
P_ChmlCompsCompSumCT view from CONSUMPTION
P_CmpstnCompNoReldCmpstn view from COMPOSITE
P_NmbrOfChmlCompInCmpst view from BASIC
P_PlmrCompositionName view from CONSUMPTION
P_SubstanceAssgdCmpstn view from CONSUMPTION
P_SubstPlmrCmpstnUnique view from COMPOSITE
P_UpaDaGdsClfnTechName view from CONSUMPTION
R_ProdMatlBasedCompositionTP view_entity from TRANSACTIONAL Product Material Based Composition - TP
R_SubstanceBasedCompositionTP view_entity from TRANSACTIONAL Substance Based Composition - TP

Fields (22)

KeyField CDS FieldsUsed in Views
KEY ChmlCmplncInfoUUID ChmlCmplncInfoUUID 8
KEY ChmlCompositionType ChmlCompositionType 5
KEY ChmlCompositionUUID ChmlCompositionUUID 4
KEY ProdCmplncLegalArea ProdCmplncLegalArea 8
_ChmlCmplncInfo _ChmlCmplncInfo 1
_CompositionStatus _CompositionStatus 1
_CompositionType _CompositionType 1
_Substance _Substance 1
ChmlCompositionStatus ChmlCompositionStatus 4
ChmlSuplrMatlUUID ChmlSuplrMatlUUID 2
CreatedByUser CreatedByUser 1
CreationUTCDateTime CreationUTCDateTime 2
LastChangedByUser LastChangedByUser 1
LastChangeUTCDateTime LastChangeDateTime,LastChangeUTCDateTime 2
PolymerCompositionIntID PolymerCompositionIntID 3
PolymerCompositionName PolymerCompositionName 1
ProdCmplncLegalAreaRef ProdCmplncLegalAreaRef 1
ReleaseDateTime ReleaseDateTime 2
ReleasedByUser ReleasedByUser 1
SubstanceUUID SubstanceUUID 3
ValidityEndDateTime ValidityEndDateTime 2
ValidityStartDateTime ValidityStartDateTime 2
--Label of view
@EndUserText.label: 'Chemical Composition'

@AbapCatalog:
{
  -- SQL view name (16 characters)
  sqlViewName: 'ICCOMPOSITION',

  --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,
  privilegedAssociations:  [ '_CreatedByUser', '_LastChangedByUser', '_ReleasedByUser' ]
}

--Client Handling of the view
@ClientHandling.algorithm: #SESSION_VARIABLE

--VDM view type
@VDM.viewType: #BASIC

@ObjectModel:
{
  --Performance Annotations
  usageType:
  {
    dataClass: #MASTER,
    sizeCategory: #L,
    serviceQuality: #B
  },

  representativeKey: 'ChmlCompositionUUID'
}

define view I_ChmlComposition
  --Select data from master table of 'Chemical composition'
  as select from ehfndv_ccmps as ChemicalComposition

  --Link to detail data 'Components/substances'
  association [0..*] to I_ChmlComponent         as _ChmlComponent            on $projection.ChmlCompositionUUID = _ChmlComponent.ChmlCompositionUUID

  --Link to chemical compliance information
  association [0..1] to I_ChmlCmplncInfo        as _ChmlCmplncInfo           on $projection.ChmlCmplncInfoUUID = _ChmlCmplncInfo.ChmlCmplncInfoUUID
  association [0..1] to I_Substance             as _Substance                on $projection.SubstanceUUID = _Substance.SubstanceUUID

  --Link to user data
  association [0..1] to I_User                  as _CreatedByUser            on $projection.CreatedByUser = _CreatedByUser.UserID
  association [0..1] to I_User                  as _LastChangedByUser        on $projection.LastChangedByUser = _LastChangedByUser.UserID
  association [0..1] to I_User                  as _ReleasedByUser           on $projection.ReleasedByUser = _ReleasedByUser.UserID

  --Link to customizing data
  association [0..1] to I_ChmlCompositionType   as _CompositionType          on $projection.ChmlCompositionType = _CompositionType.ChmlCompositionType

  association [0..1] to I_ProdCmplncLegalArea   as _LegalArea                on $projection.ProdCmplncLegalArea = _LegalArea.ProdCmplncLegalArea

  association [0..1] to I_ChmlCompositionType   as _LegalAreaRef             on $projection.ProdCmplncLegalAreaRef = _LegalAreaRef.ChmlCompositionType

  --Link to domain values
  association [0..1] to I_ChmlCompositionStatus as _CompositionStatus        on $projection.ChmlCompositionStatus = _CompositionStatus.ChmlCompositionStatus

  association [0..1] to I_ProdCmplncPhrs        as _ChmlCmplncProdCatztnPhrs on $projection.ChmlCmplncProdCatztnPhrsUUID = _ChmlCmplncProdCatztnPhrs.ProdCmplncPhrsUUID

{
      --UUID of composition
  key ChemicalComposition.chmlcompositionuuid                                 as ChmlCompositionUUID,

      @Semantics.systemDateTime.createdAt: true
      cast(creationutcdatetime as ehfnd_bo_crea_date_time preserving type )   as CreationUTCDateTime,
      @ObjectModel.readOnly: true
      @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,
      @ObjectModel.readOnly: true
      @Semantics.user.lastChangedBy: true
      cast(lastchangedbyuser as ehfnd_bo_lchg_uname preserving type )         as LastChangedByUser,

      --UUID of chemical compliance info
      @ObjectModel.foreignKey.association: '_ChmlCmplncInfo'
      ChemicalComposition.chmlcmplncinfouuid                                  as ChmlCmplncInfoUUID,

      --UUID of referenced supplier material
      ChemicalComposition.chmlsuplrmatluuid                                   as ChmlSuplrMatlUUID,

      --UUID of referenced substance
      ChemicalComposition.substanceuuid                                       as SubstanceUUID,

      --Composition Type
      @ObjectModel.foreignKey.association: '_CompositionType'
      ChemicalComposition.chmlcompositiontype                                 as ChmlCompositionType,

      -- Legal Area
      prodcmplnclegalarea                                                     as ProdCmplncLegalArea,

      --Release Status
      @ObjectModel.foreignKey.association: '_CompositionStatus'
      ChemicalComposition.chmlcompositionstatus                               as ChmlCompositionStatus,

      --Release date/time
      ChemicalComposition.releasedatetime                                     as ReleaseDateTime,

      --Released by user
      @Semantics.user.responsible: true
      ChemicalComposition.releasedbyuser                                      as ReleasedByUser,

      ChemicalComposition.validitystartdatetime                               as ValidityStartDateTime,

      ChemicalComposition.validityenddatetime                                 as ValidityEndDateTime,

      --Common: ProdCmplncLegalAreaRef
      ChemicalComposition.prodcmplnclegalarearef                              as ProdCmplncLegalAreaRef,

      --Analytical+Legal Composition: Product Categorization (substance or mixture)
      ChemicalComposition.chmlcmplncprodcatztnphrsuuid                        as ChmlCmplncProdCatztnPhrsUUID,

      --Trade Secret: PCTrdScrtCalculationSetting
      ChemicalComposition.pctrdscrtcalculationsetting                         as PCTrdScrtCalculationSetting,

      --Polymer Composition: PolymerCompositionIntIDRef
      ChemicalComposition.polymercompositionintid                             as PolymerCompositionIntID,

      --Polymer Composition: PolymerCompositionName
      ChemicalComposition.polymercompositionname                              as PolymerCompositionName,

      /*Association*/
      _ChmlComponent,

      _ChmlCmplncInfo,
      _Substance,

      _CreatedByUser,
      _LastChangedByUser,
      _ReleasedByUser,

      _CompositionType,
      _CompositionStatus,
      _LegalArea,
      _LegalAreaRef,
      _ChmlCmplncProdCatztnPhrs
}