C_ContractConsumption
Contract Consumption
C_ContractConsumption is a Consumption CDS View that provides data about "Contract Consumption" in SAP S/4HANA. It reads from 5 data sources (I_CalendarDate, I_PurContractClassification, I_PurchaseContract, I_PurchaseContractHistory, I_PurchaseContractItem) and exposes 20 fields with key fields PurchaseContract, PurchaseContractItem, ReleaseOrder, ReleaseOrderItem. Part of development package ODATA_MM_PUR_CTRITEM_MNTR.
Data Sources (5)
| Source | Alias | Join Type |
|---|---|---|
| I_CalendarDate | CalendarDate | inner |
| I_PurContractClassification | ContractClassification | inner |
| I_PurchaseContract | PurchaseContract | inner |
| I_PurchaseContractHistory | PurchaseContractHistory | from |
| I_PurchaseContractItem | PurchaseContractItem | inner |
Parameters (1)
| Name | Type | Default |
|---|---|---|
| P_PurchaseContract | ebeln |
Annotations (10)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CMMCONTRCNSMPN | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #MANDATORY | view | |
| AccessControl.personalData.blocking | #NOT_REQUIRED | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| EndUserText.label | Contract Consumption | view |
Fields (20)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PurchaseContract | I_PurchaseContractHistory | PurchaseContract | |
| KEY | PurchaseContractItem | I_PurchaseContractHistory | PurchaseContractItem | |
| KEY | ReleaseOrder | ReleaseOrder | ||
| KEY | ReleaseOrderItem | ReleaseOrderItem | ||
| PurchaseContractClassification | I_PurContractClassification | PurchaseContractClassification | ||
| DocumentCurrency | I_PurchaseContract | DocumentCurrency | ||
| OrderQuantityUnit | OrderQuantityUnit | |||
| ReleaseOrderDate | ReleaseOrderDate | |||
| CalendarMonth | I_CalendarDate | CalendarMonth | ||
| CalendarQuarter | I_CalendarDate | CalendarQuarter | ||
| CalendarWeek | I_CalendarDate | CalendarWeek | ||
| CalendarYear | I_CalendarDate | CalendarYear | ||
| PurchaseContractTargetAmount | I_PurchaseContract | PurchaseContractTargetAmount | ||
| TargetQuantity | TargetQuantity | |||
| quan130asReleaseOrderItemOrderQuantity | ||||
| NumberOfReleasedOrders | ||||
| Plant | I_PurchaseContractHistory | Plant | ||
| PurchasingOrganization | I_PurchaseContractHistory | PurchasingOrganization | ||
| CompanyCode | I_PurchaseContractHistory | CompanyCode | ||
| PurchasingGroup | I_PurchaseContract | PurchasingGroup |
@AbapCatalog.sqlViewName: 'CMMCONTRCNSMPN'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #NOT_REQUIRED
@VDM.viewType: #CONSUMPTION
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@EndUserText.label: 'Contract Consumption'
define view C_ContractConsumption
with parameters
P_PurchaseContract : ebeln
as select from I_PurchaseContractHistory as PurchaseContractHistory
inner join I_PurchaseContract as PurchaseContract on PurchaseContract.ActivePurchasingDocument = PurchaseContractHistory.PurchaseContract
inner join I_PurContractClassification as ContractClassification on PurchaseContract.PurchaseContractType = ContractClassification.PurchasingDocumentType
inner join I_PurchaseContractItem as PurchaseContractItem on PurchaseContractItem.PurchaseContract = PurchaseContractHistory.PurchaseContract
and PurchaseContractItem.PurchaseContractItem = PurchaseContractHistory.PurchaseContractItem
inner join I_CalendarDate as CalendarDate on CalendarDate.CalendarDate = PurchaseContractHistory.ReleaseOrderDate
{
key PurchaseContractHistory.PurchaseContract,
key PurchaseContractHistory.PurchaseContractItem,
key ReleaseOrder,
key ReleaseOrderItem,
ContractClassification.PurchaseContractClassification,
PurchaseContract.DocumentCurrency,
OrderQuantityUnit,
ReleaseOrderDate,
// Added for Release Order History Facet
CalendarDate.CalendarMonth,
CalendarDate.CalendarQuarter,
CalendarDate.CalendarWeek,
CalendarDate.CalendarYear,
//
@Semantics.amount.currencyCode: 'DocumentCurrency'
PurchaseContract.PurchaseContractTargetAmount,
@Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
TargetQuantity,
@DefaultAggregation: #SUM
@Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
cast( unit_conversion
( quantity => ReleaseOrderItemOrderQuantity,
source_unit => ReleaseOrderItemQuantityUnit,
target_unit => PurchaseContractItem.OrderQuantityUnit,
error_handling => 'KEEP_UNCONVERTED'
) as abap.quan( 13, 0 ) ) as ReleaseOrderItemOrderQuantity,
@DefaultAggregation: #SUM
@Semantics.amount.currencyCode: 'DocumentCurrency'
cast( currency_conversion
( amount => ReleaseOrderItemNetAmount,
source_currency => ReleaseOrderCurrency,
target_currency => PurchaseContract.DocumentCurrency,
exchange_rate_date => ReleaseOrderDate )
as bwert ) as ReleaseOrderItemNetAmount,
@DefaultAggregation: #SUM
cast( 1 as mm_number_release_order) as NumberOfReleasedOrders,
//Added for DCL
PurchaseContractHistory.Plant,
PurchaseContractHistory.PurchasingOrganization,
PurchaseContractHistory.CompanyCode,
PurchaseContract.PurchasingGroup
}
where
PurchaseContractHistory.PurchaseContract = $parameters.P_PurchaseContract
and ReleaseOrderItemIsDeleted = '' //3020959
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