I_MatlBsdBeforeProdnCompTP

DDL: I_MATLBSDBEFOREPRODNCOMPTP Type: view TRANSACTIONAL Package: EHFND_BO_CMPS_MATLBASED

After Production Cmpnt in Mat.Bsd Cmpstn

I_MatlBsdBeforeProdnCompTP is a Transactional CDS View that provides data about "After Production Cmpnt in Mat.Bsd Cmpstn" in SAP S/4HANA. It reads from 1 data source (I_MatlBasedCmpstnComponent) and exposes 27 fields. It has 1 association to related views. Part of development package EHFND_BO_CMPS_MATLBASED.

Data Sources (1)

SourceAliasJoin Type
I_MatlBasedCmpstnComponent MatlBsdComponentBeforeProdn from

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_MatlBasedCompositionTP _MatlBasedComposition $projection.ChmlCompositionUUID = _MatlBasedComposition.ChmlCompositionUUID

Annotations (17)

NameValueLevelField
EndUserText.label After Production Cmpnt in Mat.Bsd Cmpstn view
AbapCatalog.sqlViewName IMCOMPONENTBPTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.modelCategory #BUSINESS_OBJECT view
ObjectModel.transactionalProcessingEnabled true view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled true view
ObjectModel.writeDraftPersistence EHFNDW_MCMPS_BPC view
ObjectModel.writeActivePersistence EHFNDV_MCMPS_CMP view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.serviceQuality #C view

Fields (27)

KeyFieldSource TableSource FieldDescription
MatlBsdCompUUID
MatlBsdCompUUIDasActiveMatlBsdCompUUID
ChmlCmplncInfoUUID
ChmlCompositionUUID
CreationUTCDateTime
CreatedByUser
LastChangeUTCDateTime
LastChangedByUser
MatlBsdCompProductionType
CompChmlCmplncInfoUUID
ChmlCompQty
ChmlCompQtyAsText
ChmlCompQtyUnit
ChmlCompOperatorLowerLimit
ChmlCompQtyLowerLimit
ChmlCompQtyLowerLimitAsText
ChmlCompOperatorUpperLimit
ChmlCompQtyUpperLimit
ChmlCompQtyUpperLimitAsText
ChmlCompIsRemoved
MlticmpProdCompUUID
_MatlBasedComposition _MatlBasedComposition
_ChmlCmplncInfo _ChmlCmplncInfo
_CompChmlCmplncInfo _CompChmlCmplncInfo
_UnitOfMeasure _UnitOfMeasure
_OperatorLowerLimit _OperatorLowerLimit
_OperatorUpperLimit _OperatorUpperLimit
@EndUserText.label: 'After Production Cmpnt in Mat.Bsd Cmpstn'

@AbapCatalog:
{
  sqlViewName: 'IMCOMPONENTBPTP',
  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_BPC',
  writeActivePersistence: 'EHFNDV_MCMPS_CMP',
  semanticKey:  [ 'MatlBsdCompUUID' , 'MlticmpProdCompUUID' ],
  usageType:
  {
    dataClass: #TRANSACTIONAL,
    sizeCategory: #XL,
    serviceQuality: #C
  }
}



define view I_MatlBsdBeforeProdnCompTP
  -- Select data from basic view 'Material Based Component'
  as select from I_MatlBasedCmpstnComponent as MatlBsdComponentBeforeProdn

  -- Nodes/Detaildata;
  association [1..1] to I_MatlBasedCompositionTP as _MatlBasedComposition on $projection.ChmlCompositionUUID = _MatlBasedComposition.ChmlCompositionUUID

{
     -- UUID of component
      @ObjectModel.mandatory: true
  key MatlBsdComponentBeforeProdn.MatlBsdCompUUID,


      -- Active UUID of material based component
      MatlBsdComponentBeforeProdn.MatlBsdCompUUID              as ActiveMatlBsdCompUUID,

      -- UUID of chemical compliance information (UP containing the CompChmlCmplncInfoUUID)
      MatlBsdComponentBeforeProdn.ChmlCmplncInfoUUID,

      -- UUID of chemical composition
      @ObjectModel.foreignKey.association: '_MatlBasedComposition'
      @ObjectModel.mandatory: true
      MatlBsdComponentBeforeProdn.ChmlCompositionUUID,

      -- Date/Time of creation
      @ObjectModel.readOnly: true
      @Semantics.systemDateTime.createdAt: true
      MatlBsdComponentBeforeProdn.CreationUTCDateTime,

      -- Created by
      @ObjectModel.readOnly: true
      @Semantics.user.createdBy: true
      MatlBsdComponentBeforeProdn.CreatedByUser,

      -- Date/Time of change
      @ObjectModel.readOnly: true
      @Semantics.systemDateTime.lastChangedAt: true
      MatlBsdComponentBeforeProdn.LastChangeUTCDateTime,

      -- Changed by
      @ObjectModel.readOnly: true
      @Semantics.user.lastChangedBy: true
      MatlBsdComponentBeforeProdn.LastChangedByUser,

      -- Component that available before production
      @ObjectModel.mandatory: true
      MatlBsdComponentBeforeProdn.MatlBsdCompProductionType,

      -- UUID of component contained in material based composition
      @ObjectModel.mandatory: true
      MatlBsdComponentBeforeProdn.CompChmlCmplncInfoUUID,

      -- Concentration of component
      @Semantics.quantity.unitOfMeasure: 'ChmlCompQtyUnit'
      MatlBsdComponentBeforeProdn.ChmlCompQty,

      -- Concentration as text (for correct formatting with decimals exactly as entered by user)
      MatlBsdComponentBeforeProdn.ChmlCompQtyAsText,

      -- Unit of measurement of concentration
      @ObjectModel.mandatory: true
      MatlBsdComponentBeforeProdn.ChmlCompQtyUnit,

      -- Operator for Lower limit of concentration
      MatlBsdComponentBeforeProdn.ChmlCompOperatorLowerLimit,

      -- Lower limit of concentration
      @Semantics.quantity.unitOfMeasure: 'ChmlCompQtyUnit'
      MatlBsdComponentBeforeProdn.ChmlCompQtyLowerLimit,

      -- Lower limit as text (for correct formatting with decimals exactly as entered by user)
      MatlBsdComponentBeforeProdn.ChmlCompQtyLowerLimitAsText,

      -- Operator for Upper limit of concentration
      MatlBsdComponentBeforeProdn.ChmlCompOperatorUpperLimit,

      -- Upper limit of concentration
      @Semantics.quantity.unitOfMeasure: 'ChmlCompQtyUnit'
      MatlBsdComponentBeforeProdn.ChmlCompQtyUpperLimit,

      -- Upper limit as text (for correct formatting with decimals exactly as entered by user)
      MatlBsdComponentBeforeProdn.ChmlCompQtyUpperLimitAsText,

      -- Is a component removed
      MatlBsdComponentBeforeProdn.ChmlCompIsRemoved,
      
       -- UUID of MCP Component
      MatlBsdComponentBeforeProdn.MlticmpProdCompUUID,
      
      /* Associations */
      @ObjectModel.association.type: [ #TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT ]
      _MatlBasedComposition,

      _ChmlCmplncInfo,

      _CompChmlCmplncInfo,

      _UnitOfMeasure,
      _OperatorLowerLimit,
      _OperatorUpperLimit
}

where MatlBsdComponentBeforeProdn.MatlBsdCompProductionType = 'I'