I_PPS_AccountingDocument is a Basic CDS View that provides data about "Accounting Doc For Extended PO History" in SAP S/4HANA. It reads from 2 data sources (bkpf, bseg) and exposes 26 fields. It has 1 association to related views.
@AbapCatalog.sqlViewName: 'IPPSEXPOBSAC'
@AbapCatalog.compiler.compareFilter: true@AbapCatalog.preserveKey: true@ClientHandling.algorithm: #SESSION_VARIABLE@AccessControl.authorizationCheck: #MANDATORY@EndUserText.label: 'Accounting Doc For Extended PO History'
@ObjectModel.usageType:{
serviceQuality: #X,
sizeCategory: #XXL,
dataClass: #TRANSACTIONAL
}@VDM.viewType: #BASICdefineview I_PPS_AccountingDocument
asselectfrom bseg as AccDocumentItem
innerjoin bkpf as AccDocument on AccDocumentItem.bukrs = AccDocument.bukrs
and AccDocumentItem.belnr = AccDocument.belnr
and AccDocumentItem.gjahr = AccDocument.gjahr
association [1..1] to I_CompanyCode as _CompanyCode on AccDocument.bukrs = _CompanyCode.CompanyCode
{
AccDocumentItem.ebeln as PurchasingDocument,
AccDocumentItem.ebelp as PurchasingDocumentItem,
cast ( ' ' as ekorg ) as PurchasingOrganization,
cast ( ' ' as ekgrp ) as PurchasingGroup,
cast ( 'Z' as char01 preserving type ) as PPSPurgHistDocumentCategory,
AccDocument.bukrs as CompanyCode,
AccDocument.gjahr as FiscalYear,
AccDocument.belnr as PurchasingHistoryDocument,
cast( concat('0',AccDocumentItem.buzei) as mblpo ) as PurchasingHistoryDocumentItem,
AccDocument.blart as PPSPurgHistDocumentType,
AccDocument.budat as PostingDate,
cast( left(AccDocument.awkey,10 ) as xblnr ) as PPSReferenceDocument,
cast( concat('0',AccDocumentItem.buzei) as numc05 ) as PPSReferenceDocumentItem,
cast( right(AccDocument.awkey,4) as lfgja ) as ReferenceDocumentFiscalYear,
cast (AccDocumentItem.h_blart as char04 ) as PPSReferenceDocumentType,
cast ( ' ' as vgabe preserving type ) as ReferenceDocumentCategory,
cast ( 'SupplierInvoice' as pps_e_semantic_object ) as ReferenceSemanticObject,
cast ( 'AccountingDocument' as pps_e_semantic_object ) as SemanticObject,
@Semantics.quantity.unitOfMeasure: 'UnitOfMeasure'
case AccDocumentItem.shkzg
when 'H' then sum ( AccDocumentItem.menge ) * -1
else sum ( AccDocumentItem.menge )
endas Quantity,
@Semantics.unitOfMeasure: true
AccDocumentItem.meins as UnitOfMeasure,
@Semantics.quantity.unitOfMeasure: 'POUnitOfMeasure'
case AccDocumentItem.shkzg
when 'H' then sum ( AccDocumentItem.bpmng ) * -1
else sum ( AccDocumentItem.bpmng )
endas PurchaseOrderQty,
@Semantics.unitOfMeasure: true
AccDocumentItem.bprme as POUnitOfMeasure,
@Semantics.amount.currencyCode: 'LocalCurrency'
case AccDocumentItem.shkzg
when 'H' then sum( AccDocumentItem.dmbtr ) * -1
else sum( AccDocumentItem.dmbtr )
endas AmountInLocalCurrency,
@Semantics.currencyCode:true
_CompanyCode.Currency as LocalCurrency,
@Semantics.amount.currencyCode: 'DocumentCurrency'
case AccDocumentItem.shkzg
when 'H' then sum( AccDocumentItem.wrbtr ) * -1
else sum( AccDocumentItem.wrbtr )
endas NetValueAmountInDocCurrency,
@Semantics.currencyCode:true
AccDocument.waers as DocumentCurrency
}
where
AccDocumentItem.awtyp = 'RMRP'
groupby
AccDocumentItem.ebeln,
AccDocumentItem.ebelp,
AccDocument.blart,
AccDocument.bukrs,
AccDocument.gjahr,
AccDocument.belnr,
AccDocument.xblnr,
AccDocument.awkey,
AccDocumentItem.h_blart,
AccDocumentItem.buzei,
AccDocument.budat,
AccDocumentItem.shkzg,
AccDocumentItem.meins,
AccDocumentItem.bprme,
_CompanyCode.Currency,
AccDocument.waers
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_COMPANYCODE",
"BKPF",
"BSEG"
],
"ASSOCIATED":
[
"I_COMPANYCODE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/