I_PRODUCTPROCUREMENT

CDS View

Product Procurement

I_PRODUCTPROCUREMENT is a CDS View in S/4HANA. Product Procurement. It contains 7 fields. 4 CDS views read from this table.

CDS Views using this table (4)

ViewTypeJoinVDMDescription
A_ProductProcurement view from COMPOSITE Basic Procurement Data
I_Productprocurementwd view from TRANSACTIONAL Composite view-Product Procurement
P_Productprocurementwd view from COMPOSITE
R_ProductProcurementTP view_entity from TRANSACTIONAL Product Procurement - TP

Fields (7)

KeyField CDS FieldsUsed in Views
KEY Product ActiveProduct,Product 1
AuthorizationGroup AuthorizationGroup 1
ProcurementRule ProcurementRule 1
PurchaseOrderQuantityUnit PurchaseOrderQuantityUnit 2
PurchasingAcknProfile PurchasingAcknProfile 2
SourceOfSupplyCategory SourceOfSupplyCategory 2
VarblPurOrdUnitStatus VarblPurOrdUnitStatus 2
@AbapCatalog.sqlViewName: 'IPRDPROC'
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Product Procurement'

@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory : #L
@ObjectModel.usageType.dataClass: #MASTER
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations: true
@Analytics.dataCategory: #DIMENSION
@Analytics.dataExtraction: {
enabled: true,
delta.changeDataCapture:{
mapping: [{
        viewElement: ['PRODUCT'],
        role: #MAIN,
        table: 'MARA',
        tableElement: ['MATNR']
        },
        {
        viewElement: ['PRODUCT'],
        role: #LEFT_OUTER_TO_ONE_JOIN,
        table: 'MAW1',
        tableElement: ['MATNR']
        }]
}
}
@ObjectModel.representativeKey: 'Product'
@Metadata.allowExtensions:true
@ObjectModel.supportedCapabilities: [ #SQL_DATA_SOURCE,
                                      #CDS_MODELING_DATA_SOURCE,
                                      #CDS_MODELING_ASSOCIATION_TARGET,
                                      #ANALYTICAL_DIMENSION,
                                      #EXTRACTION_DATA_SOURCE
]

define view I_Productprocurement
  as select from mara
  //    left outer join maw1 on mara.matnr = maw1.matnr

  association [1..1] to I_Product                      as _Product                       on $projection.Product = _Product.Product
  association [0..1] to I_ProductRetail                as _ProductRetail                 on $projection.Product = _ProductRetail.Product //added for VH "PSTAT Changes

  association [0..1] to E_Product                      as _ProdProcExt                   on $projection.Product = _ProdProcExt.Product
  association [0..1] to I_UnitOfMeasure                as _PurchaseOrderQuantityUnit     on $projection.PurchaseOrderQuantityUnit = _PurchaseOrderQuantityUnit.UnitOfMeasure
  association [0..*] to I_UnitOfMeasureText            as _PurchaseOrderUnitText         on $projection.PurchaseOrderQuantityUnit = _PurchaseOrderUnitText.UnitOfMeasure
  association [0..1] to I_SourceOfSupplyCategory       as _SourceOfSupplyCategory        on $projection.SourceOfSupplyCategory = _SourceOfSupplyCategory.SourceOfSupplyCategory
  association [0..*] to I_SourceOfSupplyCategoryT      as _SourceOfSupplyCategoryText    on $projection.SourceOfSupplyCategory = _SourceOfSupplyCategoryText.SourceOfSupplyCategory
  // The association is present in the I_ProductRetail and is directly added to I_ProductProcurementWD

  //    association [0..1] to I_PurchasingGroup   as _PurchasingGroup           on $projection.PurchasingGroup = _PurchasingGroup.PurchasingGroup

  association [0..1] to I_VarblPurOrdUnitActvStatus    as _VarblPurOrdUnitActvStatus     on $projection.VarblPurOrdUnitStatus = _VarblPurOrdUnitActvStatus.VarblPurOrdUnitIsActive
  association [0..*] to I_VarblPurOrdUnitActvStatusTxt as _VarblPurOrdUnitActvStatusText on $projection.VarblPurOrdUnitStatus = _VarblPurOrdUnitActvStatusText.VarblPurOrdUnitIsActive

{
  key mara.matnr                                      as Product,
      @Semantics.unitOfMeasure: true
      @ObjectModel.foreignKey.association:'_PurchaseOrderQuantityUnit'
      @ObjectModel.text.association: '_PurchaseOrderUnitText'
      mara.bstme                                      as PurchaseOrderQuantityUnit,
      _PurchaseOrderUnitText,
      _PurchaseOrderQuantityUnit,
      @ObjectModel.foreignKey.association:'_VarblPurOrdUnitActvStatus'
      @ObjectModel.text.association: '_VarblPurOrdUnitActvStatusText'
      mara.vabme                                      as VarblPurOrdUnitStatus,
      mara.ekwsl                                      as PurchasingAcknProfile,
      //      mara.mfrnr  as ManufacturerNumber,  Moved to I_ProductWD

      mara.bwvor                                      as ProcurementRule, //pstat changes


      //        Retail Fields

      @ObjectModel.foreignKey.association:'_SourceOfSupplyCategory'
      @ObjectModel.text.association: '_SourceOfSupplyCategoryText'
      mara.bwscl                                      as SourceOfSupplyCategory, // Ref Handling fields  for MARC

      _SourceOfSupplyCategory,
      _SourceOfSupplyCategoryText,
      //********************************************************************************//

      // The association is present in the I_ProductRetail and is directly added to I_ProductProcurementWD

      //            @ObjectModel.foreignKey.association:'_PurchasingGroup'

      _ProductRetail.PurchasingGroup                  as PurchasingGroup, // ref. handling for MARC


      _ProductRetail._PurchasingGroup,
      //********************************************************************************//

      cast( 'X' as sdraft_is_active preserving type ) as IsActiveEntity, // to enbale extensibility in Draft 2.0

      mara.begru                                      as AuthorizationGroup,

      _ProductRetail, //PSTAT Changes,

      _VarblPurOrdUnitActvStatus,
      _VarblPurOrdUnitActvStatusText,
      _Product



}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PRODUCTRETAIL",
"MARA"
],
"ASSOCIATED":
[
"E_PRODUCT",
"I_PRODUCT",
"I_PRODUCTRETAIL",
"I_PURCHASINGGROUP",
"I_SOURCEOFSUPPLYCATEGORY",
"I_SOURCEOFSUPPLYCATEGORYT",
"I_UNITOFMEASURE",
"I_UNITOFMEASURETEXT",
"I_VARBLPURORDUNITACTVSTATUS",
"I_VARBLPURORDUNITACTVSTATUSTXT"
],
"BASE":
[
"I_PRODUCTRETAIL"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/