P_SuplrInvcItmOverview

DDL: P_SUPLRINVCITMOVERVIEW SQL: PSUPLRINVITMOVW Type: view CONSUMPTION

Supplier Invoice Item Overview

P_SuplrInvcItmOverview is a Consumption CDS View that provides data about "Supplier Invoice Item Overview" in SAP S/4HANA. It reads from 2 data sources (P_ITEM_ONLINE, I_SupplierInvoice) and exposes 29 fields with key fields SupplierInvoice, SupplierInvoiceItem, FiscalYear, OrdinalNumber. It has 3 associations to related views.

Data Sources (2)

SourceAliasJoin Type
P_ITEM_ONLINE Item from
I_SupplierInvoice SupplierInvoice inner

Associations (3)

CardinalityTargetAliasCondition
[0..*] P_SuplrInvcItmAcctAssgmt _SuppInvcAcctAssgmt $projection.SupplierInvoice = _SuppInvcAcctAssgmt.SupplierInvoice and $projection.FiscalYear = _SuppInvcAcctAssgmt.FiscalYear and $projection.SupplierInvoiceItem = _SuppInvcAcctAssgmt.SupplierInvoiceItem
[0..1] I_PurchaseOrderItem _PurOrdItem $projection.PurchaseOrder = _PurOrdItem.PurchaseOrder and $projection.PurchaseOrderItem = _PurOrdItem.PurchaseOrderItem
[1..1] I_SupplierInvoiceStsAndOrign _SupplierInvoiceStsAndOrign $projection.SupplierInvoice = _SupplierInvoiceStsAndOrign.SupplierInvoice and $projection.FiscalYear = _SupplierInvoiceStsAndOrign.FiscalYear

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName PSUPLRINVITMOVW view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #PRIVILEGED_ONLY view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #CONSUMPTION view
VDM.private true view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Supplier Invoice Item Overview view

Fields (29)

KeyFieldSource TableSource FieldDescription
KEY SupplierInvoice P_ITEM_ONLINE SupplierInvoice
KEY SupplierInvoiceItem SupplierInvoiceItem
KEY FiscalYear P_ITEM_ONLINE FiscalYear
KEY OrdinalNumber _SuppInvcAcctAssgmt OrdinalNumber
MaterialDocumentItemText SupplierInvoiceItemText
Material PurchaseOrderItemMaterial
PurchaseOrder PurchaseOrder
Status _SupplierInvoiceStsAndOrign InvoiceStatusAndOrigin
ObjectType
CostCenter _SuppInvcAcctAssgmt CostCenter
SalesOrder _SuppInvcAcctAssgmt SalesOrder
CompanyCode I_SupplierInvoice CompanyCode
SupplierendasSupplier
Plant _PurOrdItem Plant
WBSElementExternalID _SuppInvcAcctAssgmt WBSElementExternalID
MaterialGroup _PurOrdItem MaterialGroup
PurchasingOrganization
PurchasingGroup
ServicePerformer
WorkItem
SupplyingPlant
AccountAssignmentCategory
PurchasingDocumentItemCategory
DeliveryDate
PurchasingDocument P_ITEM_ONLINE SupplierInvoice Purchasing Document
PurchasingDocumentType Purchasing Document Type
PurchaseOrderItem PurchaseOrderItem
_PurOrdItem _PurOrdItem
IsEndOfPurposeBlocked I_SupplierInvoice IsEndOfPurposeBlocked
@AbapCatalog.sqlViewName: 'PSUPLRINVITMOVW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #PRIVILEGED_ONLY
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #CONSUMPTION
@VDM.private: true
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Supplier Invoice Item Overview'
define view P_SuplrInvcItmOverview as select from P_ITEM_ONLINE as Item

  // Inner join against header required as selection needs to be restricted to invoices

  // (i.e. data from account maintenance documents, revalulation documents must not be retrieved with this view)

    inner join   I_SupplierInvoice as SupplierInvoice on  Item.SupplierInvoice = SupplierInvoice.SupplierInvoice
                                                      and Item.FiscalYear      = SupplierInvoice.FiscalYear

  association [0..*] to P_SuplrInvcItmAcctAssgmt     as _SuppInvcAcctAssgmt         on  $projection.SupplierInvoice     = _SuppInvcAcctAssgmt.SupplierInvoice
                                                                                    and $projection.FiscalYear          = _SuppInvcAcctAssgmt.FiscalYear
                                                                                    and $projection.SupplierInvoiceItem = _SuppInvcAcctAssgmt.SupplierInvoiceItem

  association [0..1] to I_PurchaseOrderItem          as _PurOrdItem                 on  $projection.PurchaseOrder     = _PurOrdItem.PurchaseOrder
                                                                                    and $projection.PurchaseOrderItem = _PurOrdItem.PurchaseOrderItem

  //association [0..1] to I_CustomerProjectWorkPackage as _CustProjectWorkPackagerbco on  $projection.WBSElementExternalID = _CustProjectWorkPackagerbco.WBSElementObject


  association [1..1] to I_SupplierInvoiceStsAndOrign as _SupplierInvoiceStsAndOrign on  $projection.SupplierInvoice = _SupplierInvoiceStsAndOrign.SupplierInvoice
                                                                                    and $projection.FiscalYear      = _SupplierInvoiceStsAndOrign.FiscalYear
{
  key Item.SupplierInvoice,
  key SupplierInvoiceItem,
  key Item.FiscalYear,
  key _SuppInvcAcctAssgmt.OrdinalNumber,

//      cast (concat(concat(concat(concat(Item.SupplierInvoice, '/'), SupplierInvoiceItem),'/'), Item.FiscalYear) as abap.char(22) ) as SupplierInvoiceWithItem,

      SupplierInvoiceItemText                                                                                                      as MaterialDocumentItemText,
      PurchaseOrderItemMaterial                                                                                                    as Material,
      PurchaseOrder,
//

//      cast (concat(concat(PurchaseOrder, '/'), PurchaseOrderItem) as vdm_formattedpurchaseorditm)                                  as FormattedPurchaseOrderItem,

//

//      // Purchase Order History

//      ''                                                                                                                           as PurchaseOrderHistIsDisplayed,

//

//      // Quantity (Item Level)

//      case

//      when DebitCreditCode is not null and DebitCreditCode = 'H'

//        then -QuantityInPurchaseOrderUnit

//      else QuantityInPurchaseOrderUnit end                                                                                         as PurgDocItemInvoicedQuantity,

//

//      // Amount (Item Level)

//      case

//      when DebitCreditCode is not null and DebitCreditCode = 'H'

//        then -SupplierInvoiceItemAmount

//      else SupplierInvoiceItemAmount  end                                                                                          as SupplierInvoiceItemAmount,

//

//      // Quantity (Account Assignment Level)

//      case

//      when DebitCreditCode is not null and DebitCreditCode = 'H'

//        then -_SuppInvcAcctAssgmt.Quantity

//      else _SuppInvcAcctAssgmt.Quantity      end                                                                                   as Quantity,

//

//      // Amount (Account Assignment Level)

//      case

//      when DebitCreditCode is not null and DebitCreditCode = 'H'

//        then -_SuppInvcAcctAssgmt.SupplierInvoiceItemAmount

//      else _SuppInvcAcctAssgmt.SupplierInvoiceItemAmount

//      end                                                                                                                          as InvoicedAmount,

//

//      // Supplier Invoice Status

      _SupplierInvoiceStsAndOrign.InvoiceStatusAndOrigin                                                                           as Status,
      cast('3' as numc1)                                                                                                           as ObjectType,
//

      _SuppInvcAcctAssgmt.CostCenter,
//      _SuppInvcAcctAssgmt.ControllingArea,

//

      _SuppInvcAcctAssgmt.SalesOrder,
//

//      case when _SuppInvcAcctAssgmt.SalesOrderItem is null or _SuppInvcAcctAssgmt.SalesOrderItem = '000000'

//      then ''

//      else concat(concat(_SuppInvcAcctAssgmt.SalesOrder, '/'),_SuppInvcAcctAssgmt.SalesOrderItem)

//      end                                                                                                                          as SalesOrderItem,

//

      SupplierInvoice.CompanyCode,
//

//      DebitCreditCode,

//

      // Freight Supplier

      case
         when _PurOrdItem._PurchaseOrder.Supplier is null or _PurOrdItem._PurchaseOrder.Supplier = ''
           then SupplierInvoice.InvoicingParty
         else _PurOrdItem._PurchaseOrder.Supplier      end                                                                         as Supplier,
//

//      _PurOrdItem.IncotermsClassification,

//

//      _PurOrdItem.OverallLimitAmount,


      _PurOrdItem.Plant,

//      _PurOrdItem.IsReturnsItem,

//

//      TaxCode,

//

//      TaxJurisdiction,

//

      //Work Package

      _SuppInvcAcctAssgmt.WBSElementExternalID                                                                                     as WBSElementExternalID,
//

//      _CustProjectWorkPackagerbco,

//

//

//      // -----------------------------------------------------------------------------------

//      // Units and Currencies

//      // -----------------------------------------------------------------------------------

//

//      PurchaseOrderQuantityUnit,

//

//      SupplierInvoice.DocumentCurrency,

//

//      @Semantics.currencyCode: true

//      SupplierInvoice._CompanyCode.Currency                                                                                        as CompanyCodeCurrency,

//

      // -----------------------------------------------------------------------------------

      // Required as Filters

      // -----------------------------------------------------------------------------------


      _PurOrdItem.MaterialGroup,
//

      _PurOrdItem._PurchaseOrder.PurchasingOrganization,

      _PurOrdItem._PurchaseOrder.PurchasingGroup,
      // in old application they are not supporting in this tab

      ''                                                                                                                           as ServicePerformer,
//

     ''                                                                                                                           as WorkItem,
//

      ''                                                                                                                           as SupplyingPlant,
     ''                                                                                                                           as AccountAssignmentCategory,
      @UI.hidden: true
      '_'                                                                                                                          as PurchasingDocumentItemCategory,
      @Consumption.filter : {selectionType:#INTERVAL,multipleSelections: false}
      cast ('00000000' as mm_a_delivery_date)                                                                                      as DeliveryDate,
      @EndUserText.label: 'Purchasing Document'
      Item.SupplierInvoice                                                                                                         as PurchasingDocument,

      @EndUserText.label: 'Purchasing Document Type'
      _PurOrdItem._PurchaseOrder.PurchaseOrderType                                                                                 as PurchasingDocumentType,
//

//      _PurOrdItem._PurchaseOrder._PurchaseOrderType._Text[1:Language = $session.system_language].PurchasingDocumentTypeName        as PurchasingDocumentTypeName,

//

//

//      // -----------------------------------------------------------------------------------

//      // Required for Associations

//      // -----------------------------------------------------------------------------------

//

      PurchaseOrderItem,
      _PurOrdItem, 
//      _SupplierInvoiceStsAndOrign,

//      _PurOrdItem._IncotermsClassification,

//      _PurOrdItem._Plant

//      SupplierInvoice._CompanyCode,

//

      // -----------------------------------------------------------------------------------

      // Required for DCL

      // -----------------------------------------------------------------------------------


      SupplierInvoice.IsEndOfPurposeBlocked
}
where
  PurchaseContract = '' //do not selected items with reference to a contract

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASEORDER",
"I_PURCHASEORDERITEM",
"I_SUPPLIERINVOICE",
"I_SUPPLIERINVOICESTSANDORIGN",
"P_ITEM_ONLINE",
"P_SUPLRINVCITMACCTASSGMT"
],
"ASSOCIATED":
[
"I_PURCHASEORDERITEM",
"I_SUPPLIERINVOICESTSANDORIGN",
"P_SUPLRINVCITMACCTASSGMT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/