I_ProjectDemandMaterial

DDL: I_PROJECTDEMANDMATERIAL Type: view BASIC

Project Demand for Material

I_ProjectDemandMaterial is a Basic CDS View that provides data about "Project Demand for Material" in SAP S/4HANA. It reads from 1 data source (R_ProjectDemandMaterial) and exposes 19 fields with key field ProjectDemandMaterialUUID. It has 5 associations to related views.

Data Sources (1)

SourceAliasJoin Type
R_ProjectDemandMaterial R_ProjectDemandMaterial from

Associations (5)

CardinalityTargetAliasCondition
[0..1] I_ProjectDemandMaterialSupply _MaterialSupply _MaterialSupply.ProjectDemandMaterialUUID = $projection.ProjectDemandMaterialUUID
[1..1] I_ProjectDemand _RootTP $projection.ProjectDemandUUID = _RootTP.ProjectDemandUUID
[0..1] I_Product _MaterialNumber $projection.Material = _MaterialNumber.Product
[0..1] I_ProductGroup_2 _MaterialGroup $projection.MaterialGroup = _MaterialGroup.ProductGroup
[0..1] I_Supplier _Supplier $projection.Supplier = _Supplier.Supplier

Annotations (16)

NameValueLevelField
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
AbapCatalog.sqlViewName IPROJDMNDMATL view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.representativeKey ProjectDemandMaterialUUID view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #XL view
Analytics.dataExtraction.enabled true view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Project Demand for Material view

Fields (19)

KeyFieldSource TableSource FieldDescription
KEY ProjectDemandMaterialUUID ProjectDemandMaterialUUID
ProjectDemandUUID ProjectDemandUUID
StorageLocation StorageLocation
Material Material
MaterialGroup MaterialGroup
Supplier Supplier
PurchasingInfoRecord PurchasingInfoRecord
PurchaseContract PurchaseContract
PurchaseContractItem PurchaseContractItem
MaterialPlannedDeliveryDurn MaterialPlannedDeliveryDurn
CreatedByUser CreatedByUser
CreationDateTime CreationDateTime
LastChangedByUser LastChangedByUser
LastChangeDateTime LastChangeDateTime
_RootTP _RootTP
_MaterialSupply _MaterialSupply
_MaterialNumber _MaterialNumber
_MaterialGroup _MaterialGroup
_Supplier _Supplier
@VDM.viewType: #BASIC
@VDM.lifecycle.contract.type:  #PUBLIC_LOCAL_API

@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@AbapCatalog: {
    sqlViewName: 'IPROJDMNDMATL',
    compiler.compareFilter: true,
    preserveKey:true
}

@ObjectModel: {
   modelingPattern: #ANALYTICAL_DIMENSION,
   supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #EXTRACTION_DATA_SOURCE ],
   semanticKey:       ['Material'],
   representativeKey: 'ProjectDemandMaterialUUID',
   usageType: {
     serviceQuality:  #A,
     dataClass:       #TRANSACTIONAL,
     sizeCategory:    #XL
   }
}
@Analytics.dataExtraction.enabled: true
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Project Demand for Material'
define view I_ProjectDemandMaterial
  as select from R_ProjectDemandMaterial

  association [0..1] to I_ProjectDemandMaterialSupply as _MaterialSupply       on  _MaterialSupply.ProjectDemandMaterialUUID = $projection.ProjectDemandMaterialUUID
  association [1..1] to I_ProjectDemand               as _RootTP               on  $projection.ProjectDemandUUID = _RootTP.ProjectDemandUUID

  association [0..1] to I_Product                     as _MaterialNumber       on  $projection.Material = _MaterialNumber.Product
  association [0..1] to I_ProductGroup_2              as _MaterialGroup        on  $projection.MaterialGroup = _MaterialGroup.ProductGroup
  association [0..1] to I_Supplier                    as _Supplier             on  $projection.Supplier = _Supplier.Supplier
{
  key ProjectDemandMaterialUUID   as ProjectDemandMaterialUUID,

      ProjectDemandUUID           as ProjectDemandUUID,

      StorageLocation             as StorageLocation,
      @Consumption.valueHelp: '_MaterialNumber'
      Material                    as Material,

      @Consumption.valueHelpDefinition: [{
             entity: {   name:    'I_ProductGroup_2',
                         element: 'ProductGroup' }
         }]
      @ObjectModel.foreignKey.association: '_MaterialGroup'
      MaterialGroup               as MaterialGroup,

      @ObjectModel.foreignKey.association: '_Supplier'
      Supplier                    as Supplier,

      PurchasingInfoRecord        as PurchasingInfoRecord,

      PurchaseContract            as PurchaseContract,

      PurchaseContractItem        as PurchaseContractItem,

      MaterialPlannedDeliveryDurn as MaterialPlannedDeliveryDurn,

      @Semantics.user.createdBy: true
      CreatedByUser               as CreatedByUser,
      @Semantics.systemDateTime.createdAt: true
      CreationDateTime            as CreationDateTime,
      @Semantics.user.lastChangedBy: true
      LastChangedByUser           as LastChangedByUser,
      @Semantics.systemDateTime.lastChangedAt: true
      LastChangeDateTime          as LastChangeDateTime,

      _RootTP,
      _MaterialSupply,
      
      _MaterialNumber,
      _MaterialGroup,
      _Supplier

}