Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.
-- Derived SQL interpretation of CDS view P_ContractItemMonitoring.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- Parameters: P_DisplayCurrency : displaycurrency
CREATE VIEW P_ContractItemMonitoring AS
SELECT
PurchaseContractItem.PurchaseContract AS PurchaseContract,
PurchaseContractItem.PurchaseContractItem AS PurchaseContractItem,
AccountAssignmentCategory,
_AccountAssignmentCategory._Text [1: Language = $session.system_language ].AcctAssignmentCategoryName AS AcctAssignmentCategoryName,
PurchasingDocumentItemCategory,
_PurgDocumentItemCategory._Text[1: Language = $session.system_language ].PurgDocExternalItemCategory AS PurgDocExternalItemCategory,
cast(_PurgDocumentItemCategory._Text[1: Language = $session.system_language ].PurgDocItemCategoryName as vdm_purdocitencategoryname) AS PurgDocItemCategoryName,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).Supplier AS Supplier,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).PurchasingGroup AS PurchasingGroup,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).PurchasingOrganization AS PurchasingOrganization,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).CompanyCode AS CompanyCode,
_PurchaseContract.PurchaseContractType AS PurchaseContractType,
Material,
IsStatisticalItem,
PurchaseContractItem.PurchaseContractItemText AS PurchaseContractItemText,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).MaterialGroup AS MaterialGroup,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).Plant AS Plant,
_PurchaseContract.ReleaseCode AS ReleaseCode,
_PurchaseContract.CreationDate AS CreationDate,
_PurchaseContract.CreatedByUser AS CreatedByUser,
_PurchaseContract._CreatedByUser.UserDescription AS UserDescription,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).ValidityStartDate AS ValidityStartDate,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).ValidityEndDate AS ValidityEndDate,
TargetQuantity,
cast(currency_conversion( amount => _CONTRACTAMOUNT.TargetAmount, source_currency => DocumentCurrency, round => 'X', target_currency => $parameters.P_DisplayCurrency, exchange_rate_date => _PurchaseContract.CreationDate, error_handling => 'SET_TO_NULL' ) as abap.curr(21,5) ) as TargetAmount AS curr215asTargetAmount,
_ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency , P_Date: $session.system_date ).ReleaseOrderDate AS ReleaseOrderDate,
OrdPriceUnitToOrderUnitDnmntr,
OrderPriceUnitToOrderUnitNmrtr,
cast(currency_conversion( amount => _CONTRACTAMOUNT.ContractNetPriceAmount, source_currency => DocumentCurrency, round => 'X', target_currency => $parameters.P_DisplayCurrency, exchange_rate_date => _PurchaseContract.CreationDate, error_handling => 'SET_TO_NULL' ) as abap.curr(21,5) ) as ContractNetPriceAmount AS curr215asContractNetPriceAmount,
NetPriceQuantity,
cast(currency_conversion( amount => _CONTRACTAMOUNT.PurchaseContractTargetAmount, source_currency => DocumentCurrency, round => 'X', target_currency => $parameters.P_DisplayCurrency, exchange_rate_date => _PurchaseContract.CreationDate, error_handling => 'SET_TO_NULL' ) as abap.curr(21,5) ) as PurchaseContractTargetAmount AS curr215asPurchaseContractTargetAmount,
StorageLocation,
_StorageLocation.StorageLocationName AS StorageLocationName,
TaxCode,
OrderPriceUnit,
OrderQuantityUnit,
cast( $parameters.P_DisplayCurrency as displaycurrency ) AS DisplayCurrency,
DocumentCurrency,
RequirementTracking,
PurchasingInfoRecord,
case when _ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).QuantityReleasedTillDate > TargetQuantity then cast ('0' as abap.quan(13,3)) when _ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).QuantityReleasedTillDate is null or _ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).QuantityReleasedTillDate < 0 then TargetQuantity else cast (TargetQuantity - _ItmCalcdFields( P_DisplayCurrency: $parameters.P_DisplayCurrency, P_Date: $session.system_date ).QuantityReleasedTillDate as abap.quan(13,3)) end as OpenTargetQuantity AS quan133endasOpenTargetQuantity
FROM I_PurchaseContractItem AS PurchaseContractItem
LEFT OUTER JOIN P_PurContrItmCalcdFields AS _ItmCalcdFields ON PurchaseContract = _ItmCalcdFields.PurchaseContract AND PurchaseContractItem = _ItmCalcdFields.PurchaseContractItem -- association [0..1]
LEFT OUTER JOIN P_CONTRACTAMOUNT AS _CONTRACTAMOUNT ON _CONTRACTAMOUNT.PurchaseContract = PurchaseContract AND _CONTRACTAMOUNT.PurchaseContractItem = PurchaseContractItem -- association [0..1]
LEFT OUTER JOIN I_AccountAssignmentCategory AS _AccountAssignmentCategory ON AccountAssignmentCategory = _AccountAssignmentCategory.AccountAssignmentCategory -- association [0..1]
LEFT OUTER JOIN I_PurgDocumentItemCategory AS _PurgDocumentItemCategory ON PurchasingDocumentItemCategory = _PurgDocumentItemCategory.PurchasingDocumentItemCategory -- association [0..1]
LEFT OUTER JOIN I_ProcmtBlockedSupplierTxt AS _DomainText ON _DomainText.PurchasingIsBlockedForSupplier = 'X' AND _DomainText.Language = $session.system_language AND _DomainText.DomainValue = 'X' -- association [0..1]
;