C_PurchaseOrderCommitment
Commitments of Purchase Order
C_PurchaseOrderCommitment is a Consumption CDS View that provides data about "Commitments of Purchase Order" in SAP S/4HANA. It reads from 2 data sources (I_PurchaseOrderItemTP, P_PurchaseOrderCommitment) and exposes 40 fields with key fields PurchaseOrder, PurchaseOrderItem, AccountAssignmentNumber, SourceReferenceDocSubitem, Segment. It has 5 associations to related views.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_PurchaseOrderItemTP | _PurchaseOrderItem | inner |
| P_PurchaseOrderCommitment | PurchaseOrderCommitment | from |
Associations (5)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | C_PurchaseOrderTP | _PurchaseOrderTP | _PurchaseOrderTP.PurchaseOrder = $projection.PurchaseOrder |
| [0..1] | I_MM_GLAccountVH | _GLAccount | $projection.GLAccount = _GLAccount.GLAccount and $projection.CompanyCode = _GLAccount.CompanyCode |
| [0..1] | I_MM_ControllingAreaVH | _ControllingAreaValueHelp | $projection.ControllingArea = _ControllingAreaValueHelp.ControllingArea |
| [0..1] | I_PubSecBudgetAccountStdVH | _PubSecBudgetAccountStd | _PubSecBudgetAccountStd.PubSecBudgetAccount = $projection.PubSecBudgetAccount and _PubSecBudgetAccountStd.PubSecBudgetAccountCoCode = $projection.PubSecBudgetAccountCoCode |
| [0..1] | I_PubSecBdgtCnsmpnType | _PubSecBdgtCnsmpnType | _PubSecBdgtCnsmpnType.PubSecBudgetCnsmpnType = $projection.PubSecBudgetCnsmpnType |
Annotations (19)
| Name | Value | Level | Field |
|---|---|---|---|
| VDM.viewType | #CONSUMPTION | view | |
| AbapCatalog.sqlViewName | CPURORDCOMMIT | view | |
| EndUserText.label | Commitments of Purchase Order | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| AbapCatalog.preserveKey | true | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| ObjectModel.transactionalProcessingDelegated | false | view | |
| ObjectModel.createEnabled | false | view | |
| ObjectModel.updateEnabled | false | view | |
| ObjectModel.deleteEnabled | false | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #L | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| Search.searchable | false | view | |
| UI.headerInfo.typeName | Commitment | view | |
| UI.headerInfo.typeNamePlural | Commitments | view | |
| UI.headerInfo.title.value | Purchase Order Commitments | view |
Fields (40)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PurchaseOrder | |||
| KEY | PurchaseOrderItem | PurchasingDocumentItem | ||
| KEY | AccountAssignmentNumber | |||
| KEY | SourceReferenceDocSubitem | SourceReferenceDocSubitem | ||
| KEY | Segment | Segment | ||
| KEY | GLAccount | P_PurchaseOrderCommitment | GLAccount | |
| KEY | ControllingArea | ControllingArea | ||
| KEY | FunctionalArea | P_PurchaseOrderCommitment | FunctionalArea | |
| KEY | CompanyCode | P_PurchaseOrderCommitment | CompanyCode | |
| KEY | CashLedgerAccount | P_PurchaseOrderCommitment | CashLedgerAccount | |
| KEY | Fund | P_PurchaseOrderCommitment | Fund | |
| KEY | GrantID | P_PurchaseOrderCommitment | GrantID | |
| KEY | BudgetPeriod | P_PurchaseOrderCommitment | BudgetPeriod | |
| KEY | FiscalYearPeriod | P_PurchaseOrderCommitment | FiscalYearPeriod | |
| KEY | PubSecBudgetAccount | P_PurchaseOrderCommitment | PubSecBudgetAccount | |
| KEY | PubSecBudgetAccountCoCode | P_PurchaseOrderCommitment | PubSecBudgetAccountCoCode | |
| KEY | PubSecBudgetIsRelevant | P_PurchaseOrderCommitment | PubSecBudgetIsRelevant | |
| KEY | PubSecBudgetCnsmpnType | P_PurchaseOrderCommitment | PubSecBudgetCnsmpnType | |
| KEY | CostCenter | P_PurchaseOrderCommitment | CostCenter | |
| KEY | ProfitCenter | P_PurchaseOrderCommitment | ProfitCenter | |
| KEY | WBSElementInternalID | P_PurchaseOrderCommitment | WBSElementInternalID | |
| KEY | WBSElement | P_PurchaseOrderCommitment | WBSElement | |
| KEY | AccountAssignmentType | P_PurchaseOrderCommitment | AccountAssignmentType | |
| KEY | AccountAssignment | P_PurchaseOrderCommitment | AccountAssignment | |
| KEY | SponsoredProgram | P_PurchaseOrderCommitment | SponsoredProgram | |
| KEY | SponsoredClass | P_PurchaseOrderCommitment | SponsoredClass | |
| DocumentItemText | PurchaseOrderItemText | |||
| AmountInTransactionCurrency | ||||
| AmountInCompanyCodeCurrency | ||||
| TransactionCurrency | TransactionCurrency | |||
| CompanyCodeCurrency | CompanyCodeCurrency | |||
| AmountInGlobalCurrency | ||||
| GlobalCurrency | GlobalCurrency | |||
| IsCommitment | IsCommitment | |||
| _PurchaseOrderTP | _PurchaseOrderTP | |||
| _ControllingAreaValueHelp | _ControllingAreaValueHelp | |||
| _FunctionalArea | P_PurchaseOrderCommitment | _FunctionalArea | ||
| _PubSecBudgetAccountStd | _PubSecBudgetAccountStd | |||
| _PubSecBdgtCnsmpnType | _PubSecBdgtCnsmpnType | |||
| _GLAccount | _GLAccount |
@VDM.viewType: #CONSUMPTION
@AbapCatalog.sqlViewName: 'CPURORDCOMMIT'
@EndUserText.label: 'Commitments of Purchase Order'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey: true
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ObjectModel: {
transactionalProcessingDelegated: false,
semanticKey: ['PurchaseOrder', 'PurchaseOrderItem', 'AccountAssignmentNumber' ],
createEnabled: false,
updateEnabled: false,
deleteEnabled: false
}
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@Search.searchable: false
@UI.headerInfo:{
typeName: 'Commitment',
typeNamePlural: 'Commitments',
title: {value: 'Purchase Order Commitments'}
}
define view C_PurchaseOrderCommitment
as select from P_PurchaseOrderCommitment as PurchaseOrderCommitment
inner join I_PurchaseOrderItemTP as _PurchaseOrderItem on _PurchaseOrderItem.PurchaseOrder = PurchaseOrderCommitment.PurchasingDocument
and _PurchaseOrderItem.PurchaseOrderItem = PurchaseOrderCommitment.PurchasingDocumentItem
//Having an association due to DCL! DO NOT REMOVE!
association [1..1] to C_PurchaseOrderTP as _PurchaseOrderTP on _PurchaseOrderTP.PurchaseOrder = $projection.PurchaseOrder
association [0..1] to I_MM_GLAccountVH as _GLAccount on $projection.GLAccount = _GLAccount.GLAccount
and $projection.CompanyCode = _GLAccount.CompanyCode
association [0..1] to I_MM_ControllingAreaVH as _ControllingAreaValueHelp on $projection.ControllingArea = _ControllingAreaValueHelp.ControllingArea
association [0..1] to I_PubSecBudgetAccountStdVH as _PubSecBudgetAccountStd on _PubSecBudgetAccountStd.PubSecBudgetAccount = $projection.PubSecBudgetAccount
and _PubSecBudgetAccountStd.PubSecBudgetAccountCoCode = $projection.PubSecBudgetAccountCoCode
association [0..1] to I_PubSecBdgtCnsmpnType as _PubSecBdgtCnsmpnType on _PubSecBdgtCnsmpnType.PubSecBudgetCnsmpnType = $projection.PubSecBudgetCnsmpnType
{
@UI.hidden: true
@ObjectModel.foreignKey.association: '_PurchaseOrderTP'
key cast (PurchasingDocument as vdm_purchaseorder preserving type) as PurchaseOrder,
@UI.lineItem: [{position: 20 }]
key PurchasingDocumentItem as PurchaseOrderItem,
@UI.lineItem: [{position: 30 }]
key cast(AccountAssignmentNumber as dzekkn_ll preserving type ) as AccountAssignmentNumber,
key SourceReferenceDocSubitem,
key Segment,
@UI.lineItem: [{position: 60 }]
@ObjectModel.foreignKey.association: '_GLAccount'
@Consumption.valueHelpDefinition: [{ entity:{ name : 'I_MM_GLAccountVH', element: 'GLAccount'},
additionalBinding: [{ localElement: 'CompanyCode',
element: 'CompanyCode' }]
}]
key PurchaseOrderCommitment.GLAccount,
@UI.lineItem: [{position: 70 }]
@Consumption.valueHelp: '_ControllingAreaValueHelp'
@ObjectModel.foreignKey.association: '_ControllingAreaValueHelp'
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
key ControllingArea,
@UI.lineItem: [{position: 80}]
@ObjectModel.foreignKey.association: '_FunctionalArea'
@Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
@Consumption.valueHelpDefinition: [{ entity: { name : 'I_FNDSMGMTFUNCNLAREASTDVH', element: 'FunctionalArea' } }]
key PurchaseOrderCommitment.FunctionalArea,
@UI.lineItem: [{position: 90,importance: #HIGH}]
key PurchaseOrderCommitment.CompanyCode,
@Consumption.valueHelpDefinition: [
{ entity: { name: 'I_MM_GLAccountVH',
element: 'GLAccount' },
additionalBinding: [{ localElement: 'CompanyCode',
element: 'CompanyCode' }]
}]
key PurchaseOrderCommitment.CashLedgerAccount,
@Consumption.valueHelpDefinition: [{ entity: { name : 'I_FundStdVH', element: 'Fund' } }]
key PurchaseOrderCommitment.Fund,
@Consumption.valueHelpDefinition: [{ entity: { name : 'I_GrantStdVH', element: 'GrantID' } }]
key PurchaseOrderCommitment.GrantID,
@Consumption.valueHelpDefinition: [{ entity: { name : 'I_BudgetPeriodStdVH', element: 'BudgetPeriod' } }]
key PurchaseOrderCommitment.BudgetPeriod,
key PurchaseOrderCommitment.FiscalYearPeriod,
@Consumption.valueHelpDefinition: [
{ entity: { name: 'I_PubSecBudgetAccountStdVH',
element: 'PubSecBudgetAccount' },
additionalBinding: [{ localElement: 'PubSecBudgetAccountCoCode',
element: 'PubSecBudgetAccountCoCode' }]
}]
key PurchaseOrderCommitment.PubSecBudgetAccount,
key PurchaseOrderCommitment.PubSecBudgetAccountCoCode,
key PurchaseOrderCommitment.PubSecBudgetIsRelevant,
@Consumption.valueHelpDefinition: [
{ entity: { name: 'I_PubSecBdgtCnsmpnType',
element: 'PubSecBudgetCnsmpnType' }
}]
key PurchaseOrderCommitment.PubSecBudgetCnsmpnType,
key PurchaseOrderCommitment.CostCenter,
key PurchaseOrderCommitment.ProfitCenter,
@UI.hidden
key PurchaseOrderCommitment.WBSElementInternalID,
key PurchaseOrderCommitment.WBSElement,
key PurchaseOrderCommitment.AccountAssignmentType,
key PurchaseOrderCommitment.AccountAssignment,
key PurchaseOrderCommitment.SponsoredProgram,
key PurchaseOrderCommitment.SponsoredClass,
@UI.lineItem: [{position: 40 }]
PurchaseOrderItemText as DocumentItemText,
@UI.lineItem: [{position: 50 }]
@Semantics.amount.currencyCode: 'TransactionCurrency'
cast (AmountInTransactionCurrency as fis_wsl_ll preserving type ) as AmountInTransactionCurrency,
@Semantics.amount.currencyCode: 'CompanyCodeCurrency'
cast(AmountInCompanyCodeCurrency as fis_hsl_ll preserving type ) as AmountInCompanyCodeCurrency,
@Semantics.currencyCode: true
TransactionCurrency,
@Semantics.currencyCode: true
CompanyCodeCurrency,
// @Semantics: { unitOfMeasure: true }
// BaseUnit,
// @UI.lineItem: [{position: 60 }]
// @Semantics: { quantity.unitOfMeasure: 'BaseUnit' }
// @ObjectModel.readOnly: true
// @ObjectModel.mandatory: true
// cast (PlannedQuantity as poacctassgmtplannedquantity preserving type ) as PlannedQuantity,
@Semantics.amount.currencyCode: 'GlobalCurrency'
cast(AmountInGlobalCurrency as fis_ksl_ll preserving type ) as AmountInGlobalCurrency,
@Semantics.currencyCode: true
GlobalCurrency,
@UI.hidden: true
IsCommitment,
_PurchaseOrderTP,
_ControllingAreaValueHelp,
PurchaseOrderCommitment._FunctionalArea,
_PubSecBudgetAccountStd,
_PubSecBdgtCnsmpnType,
_GLAccount
}
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