I_ProjectMaterialCompBasicData
Basic Data for Proj Material Component
I_ProjectMaterialCompBasicData is a Basic CDS View (Fact) that provides data about "Basic Data for Proj Material Component" in SAP S/4HANA. It reads from 1 data source (resb) and exposes 98 fields with key fields Reservation, ReservationItem, RecordType. It has 10 associations to related views.
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| resb | resb | from |
Associations (10)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | I_ProjMatCompAdditionalData | _ProjMatCompAdditionalData | $projection.Reservation = _ProjMatCompAdditionalData.Reservation and $projection.ReservationItem = _ProjMatCompAdditionalData.ReservationItem and $projection.RecordType = _ProjMatCompAdditionalData.RecordType |
| [1..1] | I_ProjectNetworkBasicData | _ProjectNetworkBasicData | $projection.ProjectNetworkInternalID = _ProjectNetworkBasicData.ProjectNetworkInternalID and _ProjectNetworkBasicData.OrderCategory = '20' |
| [0..1] | I_ProjNtwkActyMatBOMAssembly | _ProjNtwkActyMatBOMAssembly | $projection.BillOfMaterialCategory = _ProjNtwkActyMatBOMAssembly.BillOfMaterialCategory and $projection.BillOfMaterialInternalID = _ProjNtwkActyMatBOMAssembly.BillOfMaterial and $projection.BillOfMaterialVariant = _ProjNtwkActyMatBOMAssembly.BillOfMaterialVariant |
| [0..1] | I_StorageLocation | _StorageLocation | $projection.Plant = _StorageLocation.Plant and $projection.StorageLocation = _StorageLocation.StorageLocation |
| [0..1] | I_MaterialText | _MaterialText | $projection.Material = _MaterialText.Material and _MaterialText.Language = $session.system_language |
| [0..1] | I_BomItemCategoryText | _BillOfMatItemCategoryText | $projection.BOMItemCategory = _BillOfMatItemCategoryText.BillOfMaterialItemCategory and _BillOfMatItemCategoryText.Language = $session.system_language |
| [0..1] | I_MRPQuantityDistrKeyText | _MRPQuantityDistrKeyText | $projection.Plant = _MRPQuantityDistrKeyText.Plant and $projection.QuantityDistributionKey = _MRPQuantityDistrKeyText.QuantityDistributionKey and _MRPQuantityDistrKeyText.Language = $session.system_language |
| [0..1] | I_PurchaseRequisitionItemBasic | _PurchaseRequisitionItemBasic | $projection.Reservation = _PurchaseRequisitionItemBasic.SettlementReservation and $projection.ReservationItem = _PurchaseRequisitionItemBasic.SettlementReservationItem and _PurchaseRequisitionItemBasic.IsDeleted = ' ' |
| [1..1] | E_ReservationDocumentItem | _ReservationExtension | $projection.Reservation = _ReservationExtension.Reservation and $projection.ReservationItem = _ReservationExtension.ReservationItem and $projection.RecordType = _ReservationExtension.RecordType |
| [1..1] | E_ProjectMaterialComponent | _MaterialExtension | $projection.Reservation = _MaterialExtension.Reservation and $projection.ReservationItem = _MaterialExtension.ReservationItem and $projection.RecordType = _MaterialExtension.RecordType |
Annotations (16)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IPRJMATCOMBASDAT | view | |
| VDM.viewType | #BASIC | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MASTER | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| EndUserText.label | Basic Data for Proj Material Component | view | |
| VDM.lifecycle.contract.type | #PUBLIC_LOCAL_API | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Analytics.dataCategory | #FACT | view | |
| Analytics.internalName | #LOCAL | view | |
| Analytics.dataExtraction.enabled | true | view |
Fields (98)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Reservation | resb | rsnum | |
| KEY | ReservationItem | |||
| KEY | RecordType | resb | rsart | |
| ProjectNetworkInternalID | resb | aufpl | ||
| NetworkActivityInternalID | resb | aplzl | ||
| ProjectNetwork | ||||
| NetworkActivity | ||||
| Material | resb | matnr | ||
| MatlCompRequirementDate | ||||
| DeliveryDurationInDays | ||||
| GoodsReceiptDurationInDays | resb | webaz | ||
| Currency | ||||
| Plant | resb | werks | ||
| BillOfMaterialItemNumber | ||||
| MaterialComponentObject | resb | objnr | ||
| GoodsMovementType | ||||
| MaterialComponentIsMissing | ||||
| OpenQuantity | Open Quantity | |||
| ReservationIsFinallyIssued | resb | kzear | ||
| SalesOrder | ||||
| SalesOrderItem | ||||
| GoodsRecipientName | ||||
| UnloadingPointName | ||||
| GoodsMovementIsAllowed | ||||
| MatlCompIsMarkedForDeletion | ||||
| StorageLocation | ||||
| PurchasingGroup | ||||
| ReceivedQuantity | ||||
| ShortfallQuantity | ||||
| MRPRequiredQuantityInBaseUnit | resb | lmeng | ||
| MaterialCompIsCostRelevant | ||||
| Creditor | resb | lifnr | ||
| MaterialComponentPrice | resb | gpreis | Price | |
| MaterialPriceUnitQty | resb | peinh | Price Per Unit | |
| MatlCompIsMarkedForBackflush | ||||
| GLAccount | ||||
| IsBulkMaterialComponent | ||||
| ConsumptionPosting | resb | kzvbr | ||
| ProjectObjectChangeNumber | resb | aennr | ||
| FormulaKey | ||||
| BOMItemCategory | ||||
| RqmtDateIsEnteredManually | ||||
| ProductionSeries | ||||
| OperationLeadTimeOffset | ||||
| OperationLeadTimeOffsetUnit | ||||
| BOMItemDescription | ||||
| NumberOfAssignedMaterials | 1 | |||
| BillOfMaterialCategory | resb | stlty | ||
| BillOfMaterialInternalID | ||||
| BillOfMaterialVariant | resb | stlal | ||
| MaterialCompIsProcuredDirectly | resb | dbskz | ||
| MatlCompIsProcuredExternally | resb | flgex | ||
| IsPreliminaryOrder | resb | vorab | ||
| AccountAssignmentCategory | resb | knttp | ||
| MaterialCompIsSpecialStock | resb | sobkz | ||
| RequirementPlan | resb | pbdnr | ||
| MatlCompIsTextItem | resb | txtps | ||
| DistributionFunction | resb | funct | ||
| QuantityDistributionKey | resb | verti | ||
| SortField | ||||
| MatlCompIsRelevantForMRP | resb | no_disp | ||
| Batch | resb | charg | ||
| BaseUnit | ||||
| EntryUnit | ||||
| ConfirmedAvailableQuantity | resb | vmeng | ||
| RequirementQuantityInBaseUnit | resb | bdmng | ||
| erfmgendasQuantityInEntryUnit | ||||
| MaterialQtyToBaseQtyDnmntr | resb | umren | ||
| QuantityNumerator | resb | umrez | ||
| PurchasingInfoRecord | resb | infnr | ||
| MaterialGroup | resb | matkl | ||
| VariableSizeDimension1 | resb | roms1 | ||
| VariableSizeDimension2 | resb | roms2 | ||
| VariableSizeDimension3 | resb | roms3 | ||
| VariableSizeDimensionUnit | resb | romei | ||
| VariableSizeCompFormulaKey | resb | rform | ||
| NumberOfVariableSizeItem | ||||
| QuantityInUnitOfEntry | resb | nomng | ||
| VariableSizeItemQuantity | resb | romen | ||
| VariableSizeComponentUnit | resb | rokme | ||
| ProductTypeGroupCode | resb | producttype | ||
| ServicePerformer | resb | serviceperformer | ||
| PerformancePeriodStartDate | resb | startdate | ||
| PerformancePeriodEndDate | resb | enddate | ||
| LeanServiceDuration | resb | serviceduration | ||
| LeanServiceDurationUnit | resb | servicedurationunit | ||
| WBSElementInternalID | ||||
| FldLogsDelivIsHeldOnShore | resb | fldlogsdelivisheldonshore | ||
| FldLogsSupplyProcess | resb | fldlogssupplyprocess | ||
| FldLogsSupProcVersion | resb | fldlogsversion | ||
| _ProjMatCompAdditionalData | _ProjMatCompAdditionalData | |||
| _ProjectNetworkBasicData | _ProjectNetworkBasicData | |||
| _ProjNtwkActyMatBOMAssembly | _ProjNtwkActyMatBOMAssembly | |||
| _StorageLocation | _StorageLocation | |||
| _MaterialText | _MaterialText | |||
| _BillOfMatItemCategoryText | _BillOfMatItemCategoryText | |||
| _MRPQuantityDistrKeyText | _MRPQuantityDistrKeyText | |||
| _PurchaseRequisitionItemBasic | _PurchaseRequisitionItemBasic |
@AbapCatalog.sqlViewName: 'IPRJMATCOMBASDAT'
@VDM.viewType: #BASIC
//@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MASTER
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Basic Data for Proj Material Component'
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@Metadata.ignorePropagatedAnnotations:true
@ObjectModel.supportedCapabilities: [ #EXTRACTION_DATA_SOURCE ]
@Analytics: {
dataCategory: #FACT,
internalName: #LOCAL,
dataExtraction.enabled: true
}
define view I_ProjectMaterialCompBasicData
as select from resb
left outer to one join aufk on resb.aufnr = aufk.aufnr
association [0..1] to I_ProjMatCompAdditionalData as _ProjMatCompAdditionalData on $projection.Reservation = _ProjMatCompAdditionalData.Reservation
and $projection.ReservationItem = _ProjMatCompAdditionalData.ReservationItem
and $projection.RecordType = _ProjMatCompAdditionalData.RecordType
association [1..1] to I_ProjectNetworkBasicData as _ProjectNetworkBasicData on $projection.ProjectNetworkInternalID = _ProjectNetworkBasicData.ProjectNetworkInternalID
and _ProjectNetworkBasicData.OrderCategory = '20'
association [0..1] to I_ProjNtwkActyMatBOMAssembly as _ProjNtwkActyMatBOMAssembly on $projection.BillOfMaterialCategory = _ProjNtwkActyMatBOMAssembly.BillOfMaterialCategory
and $projection.BillOfMaterialInternalID = _ProjNtwkActyMatBOMAssembly.BillOfMaterial
and $projection.BillOfMaterialVariant = _ProjNtwkActyMatBOMAssembly.BillOfMaterialVariant
association [0..1] to I_StorageLocation as _StorageLocation on $projection.Plant = _StorageLocation.Plant
and $projection.StorageLocation = _StorageLocation.StorageLocation
association [0..1] to I_MaterialText as _MaterialText on $projection.Material = _MaterialText.Material
and _MaterialText.Language = $session.system_language
association [0..1] to I_BomItemCategoryText as _BillOfMatItemCategoryText on $projection.BOMItemCategory = _BillOfMatItemCategoryText.BillOfMaterialItemCategory
and _BillOfMatItemCategoryText.Language = $session.system_language
association [0..1] to I_MRPQuantityDistrKeyText as _MRPQuantityDistrKeyText on $projection.Plant = _MRPQuantityDistrKeyText.Plant
and $projection.QuantityDistributionKey = _MRPQuantityDistrKeyText.QuantityDistributionKey
and _MRPQuantityDistrKeyText.Language = $session.system_language
association [0..1] to I_PurchaseRequisitionItemBasic as _PurchaseRequisitionItemBasic on $projection.Reservation = _PurchaseRequisitionItemBasic.SettlementReservation
and $projection.ReservationItem = _PurchaseRequisitionItemBasic.SettlementReservationItem
and _PurchaseRequisitionItemBasic.IsDeleted = ' '
association [1..1] to E_ReservationDocumentItem as _ReservationExtension on $projection.Reservation = _ReservationExtension.Reservation
and $projection.ReservationItem = _ReservationExtension.ReservationItem
and $projection.RecordType = _ReservationExtension.RecordType
association [1..1] to E_ProjectMaterialComponent as _MaterialExtension on $projection.Reservation = _MaterialExtension.Reservation
and $projection.ReservationItem = _MaterialExtension.ReservationItem
and $projection.RecordType = _MaterialExtension.RecordType
{
key resb.rsnum as Reservation,
key cast ( resb.rspos as ps_s4_rspos preserving type ) as ReservationItem,
key resb.rsart as RecordType,
resb.aufpl as ProjectNetworkInternalID,
resb.aplzl as NetworkActivityInternalID,
cast ( resb.aufnr as ps_s4_aufnr preserving type ) as ProjectNetwork,
cast ( resb.vornr as ps_vornr preserving type ) as NetworkActivity,
resb.matnr as Material,
cast ( resb.bdter as ps_s4_bdter preserving type ) as MatlCompRequirementDate,
@DefaultAggregation: #SUM
cast ( resb.lifzt as ps_s4_lifzt ) as DeliveryDurationInDays,
//@DefaultAggregation: #NONE
resb.webaz as GoodsReceiptDurationInDays,
@Semantics.currencyCode: true
cast ( resb.waers as waers ) as Currency,
resb.werks as Plant,
cast ( resb.posnr as char4 preserving type ) as BillOfMaterialItemNumber,
resb.objnr as MaterialComponentObject,
cast ( resb.bwart as bwartwa ) as GoodsMovementType,
cast ( resb.xfehl as xfehl ) as MaterialComponentIsMissing,
@EndUserText.label: 'Open Quantity'
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.bdmng - resb.enmng as OpenQuantity,
resb.kzear as ReservationIsFinallyIssued,
cast ( resb.kdauf as ps_s4_kdauf ) as SalesOrder,
cast ( resb.kdpos as ps_s4_kdpos ) as SalesOrderItem,
cast ( resb.wempf as ps_s4_wempf ) as GoodsRecipientName,
cast ( resb.ablad as ps_s4_ablad preserving type ) as UnloadingPointName,
cast ( resb.xwaok as xwaok ) as GoodsMovementIsAllowed,
cast ( resb.xloek as ps_s4_loevm ) as MatlCompIsMarkedForDeletion,
cast ( resb.lgort as ps_s4_lgort_d preserving type ) as StorageLocation,
cast ( resb.ekgrp as ekgrp ) as PurchasingGroup,
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
cast ( resb.enmng as mmiv_quantity_received ) as ReceivedQuantity,
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
cast ( resb.flmng as ps_s4_flmng ) as ShortfallQuantity,
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.lmeng as MRPRequiredQuantityInBaseUnit,
cast ( resb.sanka as ps_s4_ck_selkz ) as MaterialCompIsCostRelevant,
resb.lifnr as Creditor,
@EndUserText.label: 'Price'
@DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'Currency'
resb.gpreis as MaterialComponentPrice,
@EndUserText.label: 'Price Per Unit'
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.peinh as MaterialPriceUnitQty,
cast ( resb.rgekz as rgekz ) as MatlCompIsMarkedForBackflush,
cast ( resb.saknr as saknr ) as GLAccount,
cast ( resb.schgt as schgt ) as IsBulkMaterialComponent,
resb.kzvbr as ConsumptionPosting,
resb.aennr as ProjectObjectChangeNumber,
cast ( resb.rform as ps_s4_rform preserving type ) as FormulaKey,
cast ( resb.postp as ps_s4_postp preserving type ) as BOMItemCategory,
cast ( resb.kzmpf as ps_s4_kzmpf ) as RqmtDateIsEnteredManually,
cast ( resb.sernr as ps_s4_sernr ) as ProductionSeries,
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'OperationLeadTimeOffsetUnit'
cast ( resb.nlfzv as ps_s4_cs_nlfzv ) as OperationLeadTimeOffset,
@Semantics.unitOfMeasure: true
cast ( resb.nlfmv as ps_s4_cs_nlfmv ) as OperationLeadTimeOffsetUnit,
@Semantics.text: true
cast ( resb.potx1 as ps_s4_potx1 ) as BOMItemDescription,
1 as NumberOfAssignedMaterials,
resb.stlty as BillOfMaterialCategory,
cast( resb.stlnr as pph_stnum preserving type ) as BillOfMaterialInternalID,
resb.stlal as BillOfMaterialVariant,
resb.dbskz as MaterialCompIsProcuredDirectly,
resb.flgex as MatlCompIsProcuredExternally,
resb.vorab as IsPreliminaryOrder,
resb.knttp as AccountAssignmentCategory,
resb.sobkz as MaterialCompIsSpecialStock,
resb.pbdnr as RequirementPlan,
resb.txtps as MatlCompIsTextItem,
resb.funct as DistributionFunction,
resb.verti as QuantityDistributionKey,
cast ( resb.sortf as eqfnr ) as SortField,
resb.no_disp as MatlCompIsRelevantForMRP,
resb.charg as Batch,
@Semantics.unitOfMeasure: true
cast ( resb.meins as meins ) as BaseUnit,
@Semantics.unitOfMeasure: true
cast ( resb.erfme as meins ) as EntryUnit,
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.vmeng as ConfirmedAvailableQuantity,
//@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.bdmng as RequirementQuantityInBaseUnit,
@Semantics.quantity.unitOfMeasure: 'EntryUnit'
case
when resb.shkzg = 'S'
then resb.erfmg * -1
else resb.erfmg
end as QuantityInEntryUnit,
resb.umren as MaterialQtyToBaseQtyDnmntr,
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.umrez as QuantityNumerator,
resb.infnr as PurchasingInfoRecord,
resb.matkl as MaterialGroup,
@Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
resb.roms1 as VariableSizeDimension1,
@Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
resb.roms2 as VariableSizeDimension2,
@Semantics.quantity.unitOfMeasure: 'VariableSizeDimensionUnit'
resb.roms3 as VariableSizeDimension3,
@Semantics.unitOfMeasure:true
resb.romei as VariableSizeDimensionUnit,
resb.rform as VariableSizeCompFormulaKey,
cast(resb.roanz as vdm_roanz) as NumberOfVariableSizeItem,
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
resb.nomng as QuantityInUnitOfEntry,
@Semantics.quantity.unitOfMeasure: 'VariableSizeComponentUnit'
resb.romen as VariableSizeItemQuantity,
@Semantics.unitOfMeasure:true
resb.rokme as VariableSizeComponentUnit,
resb.producttype as ProductTypeGroupCode,
resb.serviceperformer as ServicePerformer,
resb.startdate as PerformancePeriodStartDate,
resb.enddate as PerformancePeriodEndDate,
resb.serviceduration as LeanServiceDuration,
resb.servicedurationunit as LeanServiceDurationUnit,
cast( resb.pspel as ps_s4_pspnr preserving type ) as WBSElementInternalID,
resb.fldlogsdelivisheldonshore as FldLogsDelivIsHeldOnShore,
resb.fldlogssupplyprocess as FldLogsSupplyProcess,
resb.fldlogsversion as FldLogsSupProcVersion,
_ProjMatCompAdditionalData,
_ProjectNetworkBasicData,
_ProjNtwkActyMatBOMAssembly,
_StorageLocation,
_MaterialText,
_BillOfMatItemCategoryText,
_MRPQuantityDistrKeyText,
_PurchaseRequisitionItemBasic
}
where
aufk.autyp = '20'
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA