P_SuplrInvcItmQtyVariancePred

DDL: P_SUPLRINVCITMQTYVARIANCEPRED SQL: PSIQTYVARPRED Type: view BASIC

P_SuplrInvcItmQtyVariancePred is a Basic CDS View in SAP S/4HANA. It reads from 4 data sources (P_SUPINV_CASH_DISCOUNT_DATE, ekko, ekpo, rseg) and exposes 74 fields with key fields SupplierInvoice, FiscalYear, SupplierInvoiceItem.

Data Sources (4)

SourceAliasJoin Type
P_SUPINV_CASH_DISCOUNT_DATE _SI_CASH_DISC_DATE inner
ekko ekko inner
ekpo ekpo inner
rseg rseg from

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName PSIQTYVARPRED view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
ClientHandling.type #CLIENT_DEPENDENT view
VDM.viewType #BASIC view
VDM.private true view
VDM.lifecycle.contract.type #NONE view
VDM.lifecycle.status #DEPRECATED view

Fields (74)

KeyFieldSource TableSource FieldDescription
KEY SupplierInvoice rseg belnr
KEY FiscalYear rseg gjahr
KEY SupplierInvoiceItem rseg buzei
PurchaseOrder rseg ebeln
PurchaseOrderItem rseg ebelp
Material rseg matnr
ValuationArea rseg bwkey
InventoryValuationType rseg bwtar
CompanyCode rseg bukrs
ReceivingPlant rseg werks
SupplierInvoiceItemAmount rseg wrbtr
DebitCreditCode rseg shkzg
TaxCode rseg mwskz
TaxJurisdiction rseg txjcd
Quantity rseg menge
PurchaseOrderQuantityUnit rseg bstme
QtyInPurchaseOrderPriceUnit rseg bpmng
PurchaseOrderPriceUnit rseg bprme
PurchasingDocumentItemCategory rseg pstyp
AccountAssignmentCategory rseg knttp
MaterialValuationClass rseg bklas
IsSubsequentDebitCredit rseg tbtkz
SuplrInvcItemHasPriceVariance rseg spgrp
SuplrInvcItemHasDateVariance rseg spgrt
SuplrInvcItemHasOrdPrcQtyVarc rseg spgrg
SuplrInvcItemHasProjBdgtVarc rseg spgrv
SuplrInvcItemHasOtherVariance rseg spgrq
SuplrInvcItemHasAmountOutsdTol rseg spgrs
SuplrInvcItmHasQualityVariance rseg spgrc
IsLIFOAndFIFORelevant rseg xlifo
StockIdentifyingMaterial rseg matbf
QuantityAsPerInvoicingParty rseg rbmng
AmountAsPerInvoicingParty rseg rbwwr
SuplrInvcVerificatSuplrErrType rseg lfehl
SupplierPostingLineItemText rseg sgtxt
SuplrInvcItemCorrectionInd rseg kzmek
SupplierInvoiceComplaintReason rseg complaint_reason
RetentionAmountInDocCurrency rseg retamt_fc
RetentionPercentage rseg retpc
RetentionDueDate rseg retduedt
ProductType rseg producttype
StockSegment rseg sgt_scat
CreationDate P_SUPINV_CASH_DISCOUNT_DATE cpudt
CreationTime P_SUPINV_CASH_DISCOUNT_DATE cputm
PaymentTerms P_SUPINV_CASH_DISCOUNT_DATE zterm
DueCalculationBaseDate P_SUPINV_CASH_DISCOUNT_DATE zfbdt
CashDiscount1Days P_SUPINV_CASH_DISCOUNT_DATE zbd1t
CashDiscount1Percent P_SUPINV_CASH_DISCOUNT_DATE zbd1p
CashDiscount2Days P_SUPINV_CASH_DISCOUNT_DATE zbd2t
CashDiscount2Percent P_SUPINV_CASH_DISCOUNT_DATE zbd2p
NetPaymentDays P_SUPINV_CASH_DISCOUNT_DATE zbd3t
InvoicingParty P_SUPINV_CASH_DISCOUNT_DATE LIFNR_RBKP
PurchaseOrderCreationDate ekko aedat
PurchasingOrganization ekko ekorg
PurchasingGroup ekko ekgrp
PurchaseOrderDate ekko bedat
ValidityStartDate ekko kdatb
ValidityEndDate ekko kdate
SupplyingSupplier ekko llief
Customer ekko kunnr
IncotermsPart1 ekko inco1
IncotermsPart2 ekko inco2
IncotermsLocation1 ekko inco2_l
IncotermsLocation2 ekko inco3_l
Supplier ekko lifre
DownPaymentType ekko dptyp
DownPaymentPercentageOfTotAmt ekko dppct
DownPaymentAmount ekko dpamt
DownPaymentDueDate ekko dpdat
ShippingType ekko vsart
ShippingCondition ekko shipcond
SuplrInvcItemHasQtyVariance rseg spgrm
EarliestCashDiscountDate P_SUPINV_CASH_DISCOUNT_DATE EarliestCashDiscountDate
SuplrInvcIsGROnTimeForCashDisc
//@EndUserText.label: 'Supplier Invoice Items with Quantity Variance ML Prediction'

@AbapCatalog.sqlViewName: 'PSIQTYVARPRED'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey:true 
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@AccessControl.personalData.blocking: #REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE
@ClientHandling.type: #CLIENT_DEPENDENT
@VDM.viewType: #BASIC
@VDM.private: true
@VDM.lifecycle.contract.type: #NONE
@VDM.lifecycle.status: #DEPRECATED
define view P_SuplrInvcItmQtyVariancePred as select from rseg
  inner join P_SUPINV_CASH_DISCOUNT_DATE as _SI_CASH_DISC_DATE
  on rseg.belnr = _SI_CASH_DISC_DATE.belnr and
     rseg.gjahr = _SI_CASH_DISC_DATE.gjahr
  inner join ekpo
  on rseg.ebeln = ekpo.ebeln and
     rseg.ebelp = ekpo.ebelp
  inner join ekko
  on rseg.ebeln = ekko.ebeln
{
  key rseg.belnr as SupplierInvoice,
  key rseg.gjahr as FiscalYear,
  key rseg.buzei as SupplierInvoiceItem,
      rseg.ebeln as PurchaseOrder,
      rseg.ebelp as PurchaseOrderItem,

      rseg.matnr as Material,
      rseg.bwkey as ValuationArea,
      rseg.bwtar as InventoryValuationType,
      rseg.bukrs as CompanyCode,
      rseg.werks as ReceivingPlant,
      rseg.wrbtr as SupplierInvoiceItemAmount,
      rseg.shkzg as DebitCreditCode,
      rseg.mwskz as TaxCode,
      rseg.txjcd as TaxJurisdiction,
      rseg.menge as Quantity,
      rseg.bstme as PurchaseOrderQuantityUnit,
      rseg.bpmng as QtyInPurchaseOrderPriceUnit,
      rseg.bprme as PurchaseOrderPriceUnit,
      rseg.pstyp as PurchasingDocumentItemCategory,
      rseg.knttp as AccountAssignmentCategory,
      rseg.bklas as MaterialValuationClass,
      rseg.tbtkz as IsSubsequentDebitCredit,
      rseg.spgrp as SuplrInvcItemHasPriceVariance,
      rseg.spgrt as SuplrInvcItemHasDateVariance,
      rseg.spgrg as SuplrInvcItemHasOrdPrcQtyVarc,
      rseg.spgrv as SuplrInvcItemHasProjBdgtVarc,
      rseg.spgrq as SuplrInvcItemHasOtherVariance,
      rseg.spgrs as SuplrInvcItemHasAmountOutsdTol,
      rseg.spgrc as SuplrInvcItmHasQualityVariance,
      rseg.xlifo as IsLIFOAndFIFORelevant,
      rseg.matbf as StockIdentifyingMaterial,
      rseg.rbmng as QuantityAsPerInvoicingParty,
      rseg.rbwwr as AmountAsPerInvoicingParty,
      rseg.lfehl as SuplrInvcVerificatSuplrErrType,
      rseg.sgtxt as SupplierPostingLineItemText,
      rseg.kzmek as SuplrInvcItemCorrectionInd,
      rseg.complaint_reason as SupplierInvoiceComplaintReason,
      rseg.retamt_fc as RetentionAmountInDocCurrency,
      rseg.retpc as RetentionPercentage,
      rseg.retduedt as RetentionDueDate,
      rseg.producttype as ProductType,
      rseg.sgt_scat as StockSegment,
      _SI_CASH_DISC_DATE.cpudt as CreationDate,
      _SI_CASH_DISC_DATE.cputm as CreationTime,
      _SI_CASH_DISC_DATE.zterm as PaymentTerms,
      _SI_CASH_DISC_DATE.zfbdt as DueCalculationBaseDate,
      _SI_CASH_DISC_DATE.zbd1t as CashDiscount1Days,
      _SI_CASH_DISC_DATE.zbd1p as CashDiscount1Percent,
      _SI_CASH_DISC_DATE.zbd2t as CashDiscount2Days,
      _SI_CASH_DISC_DATE.zbd2p as CashDiscount2Percent,
      _SI_CASH_DISC_DATE.zbd3t as NetPaymentDays,
      _SI_CASH_DISC_DATE.LIFNR_RBKP as InvoicingParty,
      ekko.aedat as PurchaseOrderCreationDate, //<<------------

      ekko.ekorg as PurchasingOrganization,
      ekko.ekgrp as PurchasingGroup,
      ekko.bedat as PurchaseOrderDate,
      ekko.kdatb as ValidityStartDate,
      ekko.kdate as ValidityEndDate,
      ekko.llief as SupplyingSupplier,
      ekko.kunnr as Customer,
      ekko.inco1 as IncotermsPart1,
      ekko.inco2 as IncotermsPart2,
      ekko.inco2_l as IncotermsLocation1,
      ekko.inco3_l as IncotermsLocation2,
      ekko.lifre as Supplier,
      ekko.dptyp as DownPaymentType,
      ekko.dppct as DownPaymentPercentageOfTotAmt,
      ekko.dpamt as DownPaymentAmount,
      ekko.dpdat as DownPaymentDueDate,
      ekko.vsart as ShippingType,
      ekko.shipcond as ShippingCondition,
      rseg.spgrm as SuplrInvcItemHasQtyVariance,
      _SI_CASH_DISC_DATE.EarliestCashDiscountDate,
      cast( case when ( _SI_CASH_DISC_DATE.EarliestCashDiscountDate is not null and _SI_CASH_DISC_DATE.EarliestCashDiscountDate <> '00000000' )
               then dats_days_between( _SI_CASH_DISC_DATE.cpudt, _SI_CASH_DISC_DATE.EarliestCashDiscountDate )
               else cast( 0 as integer )
      end as mmiv_si_days_crtn_to_csh_disc preserving type ) as DaysSuplrInvcCrtnToCshDiscDte,
      cast('' as char1 ) as SuplrInvcIsGROnTimeForCashDisc
} where rseg.spgrm = 'X'
  and   ( ekpo.wepos <> '' and ekpo.wepos is not null )
  and   ( rseg.stunr = '000' or rseg.stunr is null )
  and   rseg.shkzg = 'S'
  and   ( rseg.packno = '0000000000' or rseg.packno is null )
  and   ( ekpo.pstyp = '0' or ekpo.pstyp = '5'  or ekpo.pstyp = '6' )
  and   ekko.bstyp = 'F'
  and   ( rseg.xskrl = '' or rseg.xskrl is null )
  // Check if payment terms exist

  and   ( _SI_CASH_DISC_DATE.zbd1p > 0 or _SI_CASH_DISC_DATE.zbd2p > 0 )
  
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"P_SUPINV_CASH_DISCOUNT_DATE",
"EKKO",
"EKPO",
"RSEG"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/