I_PrepaymentProposedLinkages
Prepayment Agreement Proposed Linkages
I_PrepaymentProposedLinkages is a Composite CDS View that provides data about "Prepayment Agreement Proposed Linkages" in SAP S/4HANA. It reads from 5 data sources (I_PrepayWrkCtrAllowedDocTypes, I_PrepaymentMaterial, P_PrepaymentRefDocAmtDetails, I_PreAgrmtTradingContract, I_PreAgrmtTradingContractItem) and exposes 23 fields with key fields DocNumber, DocumentItemNumber. It has 2 associations to related views.
Data Sources (5)
| Source | Alias | Join Type |
|---|---|---|
| I_PrepayWrkCtrAllowedDocTypes | DocTypes | inner |
| I_PrepaymentMaterial | Material | inner |
| P_PrepaymentRefDocAmtDetails | P_PrepaymentRefDocAmtDetails | inner |
| I_PreAgrmtTradingContract | TradingContract | from |
| I_PreAgrmtTradingContractItem | TradingContractItem | inner |
Parameters (2)
| Name | Type | Default |
|---|---|---|
| P_Currency | waers | |
| P_Date | dats |
Associations (2)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [1..1] | E_TradingContract | TradingContractExtension | $projection.DocNumber = TradingContractExtension.TradingContract |
| [0..*] | E_TradingContractItem | TrdgContractItemExtension | $projection.DocNumber = TrdgContractItemExtension.TradingContract and $projection.DocumentItemNumber = TrdgContractItemExtension.TradingContractItem |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | IPPMGLINK | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| VDM.viewType | #COMPOSITE | view | |
| ObjectModel.usageType.sizeCategory | #XL | view | |
| ObjectModel.usageType.serviceQuality | #D | view | |
| ObjectModel.usageType.dataClass | #MIXED | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| AccessControl.personalData.blocking | #REQUIRED | view | |
| EndUserText.label | Prepayment Agreement Proposed Linkages | view |
Fields (23)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | DocNumber | I_PreAgrmtTradingContract | TradingContract | |
| KEY | DocumentItemNumber | I_PreAgrmtTradingContractItem | TradingContractItem | |
| PrepaymentAgrmtRefBusObject | ||||
| DocumentType | I_PreAgrmtTradingContract | TradingContractType | ||
| Counterparty | I_PreAgrmtTradingContract | Counterparty | ||
| CompanyCode | I_PreAgrmtTradingContract | CompanyCode | ||
| TrdgContrApplicationStatus | I_PreAgrmtTradingContract | TrdgContrApplicationStatus | ||
| PrepaymentRefDocItmValdFromDte | I_PreAgrmtTradingContractItem | PrepaymentRefDocItmValdFromDte | ||
| PrepaymentRefDocItmValdToDte | I_PreAgrmtTradingContractItem | PrepaymentRefDocItmValdToDte | ||
| Material | I_PreAgrmtTradingContractItem | Material | ||
| Commodity | I_PrepaymentMaterial | Commodity | ||
| OrderQuantity | I_PreAgrmtTradingContractItem | TradingContractItemQuantity | ||
| OrderQuantityUnit | I_PreAgrmtTradingContractItem | TrdgContractItemUnitOfMeasure | ||
| PrepaymentTotalAmt | DocumentAmount | PrepaymentTotalAmt | ||
| PrepaymentTotalAmtCrcy | DocumentAmount | PrepaymentTotalAmtCrcy | ||
| PrepaymentDocThresholdPercent | DocumentAmount | PrepaymentDocThresholdPercent | ||
| PrepaymentUnassignedAmtCrcy | DocumentAmount | PrepaymentTotalAmtCrcy | ||
| PrepaymentTotalAmtIsFixedPrice | DocumentAmount | PrepaymentTotalAmtIsFixedPrice | ||
| ExchangeRateType | DocumentAmount | ExchangeRateType | ||
| ExchangeRateDate | DocumentAmount | ExchangeRateDate | ||
| ExchangeRate | DocumentAmount | ExchangeRate | ||
| AlternativeExchangeRateType | DocumentAmount | AlternativeExchangeRateType | ||
| PrepaymentDeliveryExists |
@AbapCatalog.sqlViewName : 'IPPMGLINK'
@AbapCatalog.compiler.compareFilter : true
@AbapCatalog.preserveKey : true
@AccessControl.authorizationCheck : #CHECK
@ClientHandling.algorithm : #SESSION_VARIABLE
@VDM.viewType : #COMPOSITE
@ObjectModel.usageType.sizeCategory : #XL
@ObjectModel.usageType.serviceQuality : #D
@ObjectModel.usageType.dataClass : #MIXED
@Metadata.ignorePropagatedAnnotations : true
@AccessControl.personalData.blocking : #REQUIRED
@EndUserText.label : 'Prepayment Agreement Proposed Linkages'
define view I_PrepaymentProposedLinkages
with parameters
P_Currency : waers,
P_Date : dats
as select from I_PreAgrmtTradingContract as TradingContract
-- Allowed Contract Types from Configuration
inner join I_PrepayWrkCtrAllowedDocTypes as DocTypes on DocTypes.PrepaymentAgrmtWorkCenterType = '1'
and DocTypes.PrepaymentAgrmtRefDocumentCat = 'TC'
and DocTypes.PrepaymentAgrmtRefDocumentType = TradingContract.TradingContractType
-- Trading Contract Items
inner join I_PreAgrmtTradingContractItem as TradingContractItem on TradingContractItem.TradingContract = TradingContract.TradingContract
-- Material and Commodity
inner join I_PrepaymentMaterial as Material on TradingContractItem.Material = Material.Material
-- Amount details
inner join P_PrepaymentRefDocAmtDetails(P_DocCat : 'TC',
P_BusObj : 'BUS2124',
P_Currency : :P_Currency,
P_Date : :P_Date) as DocumentAmount on DocumentAmount.PrepaymentAgrmtWorkCenterType = DocTypes.PrepaymentAgrmtWorkCenterType
and DocumentAmount.PrepaymentAgrmtRefDocumentCat = DocTypes.PrepaymentAgrmtRefDocumentCat
and DocumentAmount.DocNumber = TradingContractItem.TradingContract
and DocumentAmount.DocumentItemNumber = TradingContractItem.TradingContractItem
--Extension Associations
association [1..1] to E_TradingContract as TradingContractExtension on $projection.DocNumber = TradingContractExtension.TradingContract
association [0..*] to E_TradingContractItem as TrdgContractItemExtension on $projection.DocNumber = TrdgContractItemExtension.TradingContract
and $projection.DocumentItemNumber = TrdgContractItemExtension.TradingContractItem
{
key TradingContract.TradingContract as DocNumber,
key TradingContractItem.TradingContractItem as DocumentItemNumber,
cast( 'BUS2124' as abap.char( 10 ) ) as PrepaymentAgrmtRefBusObject,
TradingContract.TradingContractType as DocumentType,
TradingContract.Counterparty as Counterparty,
TradingContract.CompanyCode as CompanyCode,
TradingContract.TrdgContrApplicationStatus as TrdgContrApplicationStatus,
TradingContractItem.PrepaymentRefDocItmValdFromDte as PrepaymentRefDocItmValdFromDte,
TradingContractItem.PrepaymentRefDocItmValdToDte as PrepaymentRefDocItmValdToDte,
TradingContractItem.Material as Material,
Material.Commodity as Commodity,
@Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
TradingContractItem.TradingContractItemQuantity as OrderQuantity,
@Semantics.unitOfMeasure: true
TradingContractItem.TrdgContractItemUnitOfMeasure as OrderQuantityUnit,
@Semantics.amount.currencyCode: 'PrepaymentTotalAmtCrcy'
DocumentAmount.PrepaymentTotalAmt as PrepaymentTotalAmt,
DocumentAmount.PrepaymentTotalAmtCrcy as PrepaymentTotalAmtCrcy,
DocumentAmount.PrepaymentDocThresholdPercent as PrepaymentDocThresholdPercent,
-- Unassigned Amount = ( Item Net Amount * Threshold % ) - Item Linked Amount
@Semantics.amount.currencyCode: 'PrepaymentUnassignedAmtCrcy'
( DocumentAmount.PrepaymentTotalAmt
* cast( division( DocumentAmount.PrepaymentDocThresholdPercent, 100, 2 ) as abap.quan(3,2) ) )
- DocumentAmount.PrepaymentAgrmtLinkAmount as PrepaymentUnassignedAmt,
DocumentAmount.PrepaymentTotalAmtCrcy as PrepaymentUnassignedAmtCrcy,
@Semantics.booleanIndicator: true
DocumentAmount.PrepaymentTotalAmtIsFixedPrice as PrepaymentTotalAmtIsFixedPrice,
DocumentAmount.ExchangeRateType as ExchangeRateType,
DocumentAmount.ExchangeRateDate as ExchangeRateDate,
DocumentAmount.ExchangeRate as ExchangeRate,
DocumentAmount.AlternativeExchangeRateType as AlternativeExchangeRateType,
cast( '' as abap.char( 1 ) ) as PrepaymentDeliveryExists
}
where
DocumentAmount.PrepaymentRequestDocNumber is initial
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PREAGRMTTRADINGCONTRACT",
"I_PREAGRMTTRADINGCONTRACTITEM",
"I_PREPAYMENTMATERIAL",
"I_PREPAYWRKCTRALLOWEDDOCTYPES",
"P_PREPAYMENTREFDOCAMTDETAILS"
],
"ASSOCIATED":
[
"E_TRADINGCONTRACT",
"E_TRADINGCONTRACTITEM"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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