P_PDOCITEMWITHOUTACCTASSGMT

DDL: P_PDOCITEMWITHOUTACCTASSGMT SQL: PPOIWITHOUTASGMT Type: view CONSUMPTION

P_PDOCITEMWITHOUTACCTASSGMT is a Consumption CDS View in SAP S/4HANA. It reads from 3 data sources (P_PURORDSCHDLNWITHOUTACCTASSMT, I_PurchaseOrder, I_PurchaseOrderItem) and exposes 77 fields with key fields PurchaseOrder, PurchaseOrderItem, PurchaseOrderItem. It has 1 association to related views.

Data Sources (3)

SourceAliasJoin Type
P_PURORDSCHDLNWITHOUTACCTASSMT P_PURORDSCHDLNWITHOUTACCTASSMT from
I_PurchaseOrder PurchaseOrder union_all
I_PurchaseOrderItem PurchaseOrderItem inner

Parameters (3)

NameTypeDefault
P_DisplayCurrency displaycurrency
P_StartDate bedat
P_EndDate bedat

Associations (1)

CardinalityTargetAliasCondition
[0..1] I_PurchasingDocumentType _PurchaseOrderType _PurchaseOrderType.PurchasingDocumentCategory = 'F' and _PurchaseOrderType.PurchasingDocumentType = $projection.PurchaseOrderType

Annotations (8)

NameValueLevelField
AbapCatalog.sqlViewName PPOIWITHOUTASGMT view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.preserveKey true view
VDM.viewType #CONSUMPTION view
VDM.private true view
AccessControl.personalData.blocking #NOT_REQUIRED view

Fields (77)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder PurchaseOrder
KEY PurchaseOrderItem I_PurchaseOrderItem PurchaseOrderItem
PurgDocMigrtnIsCmpltdForAnlyts
PurchaseRequisition I_PurchaseOrderItem PurchaseRequisition
PurchaseRequisitionItem I_PurchaseOrderItem PurchaseRequisitionItem
Supplier I_PurchaseOrderItem Supplier
PurchasingOrganization I_PurchaseOrderItem PurchasingOrganization
PurchasingGroup I_PurchaseOrderItem PurchasingGroup
CompanyCode I_PurchaseOrderItem CompanyCode
PurgDocHdrCompanyCode I_PurchaseOrderItem PurgDocHdrCompanyCode
PurchaseOrderType I_PurchaseOrderItem PurchaseOrderType
IsCompletelyDelivered IsCompletelyDelivered
PurchaseOrderDate I_PurchaseOrderItem PurchaseOrderDate
CreatedByUser I_PurchaseOrderItem CreatedByUser
Currency I_PurchaseOrderItem DocumentCurrency
MaterialGroup I_PurchaseOrderItem MaterialGroup
Material I_PurchaseOrderItem Material
Plant I_PurchaseOrderItem Plant
PurchaseOrderItemCategory I_PurchaseOrderItem PurchaseOrderItemCategory
PurchaseOrderCategory I_PurchaseOrderItem PurchaseOrderCategory
PurchaseContract I_PurchaseOrderItem PurchaseContract
PurchaseContractItem I_PurchaseOrderItem PurchaseContractItem
ProductType I_PurchaseOrderItem ProductType
ServicePerformer I_PurchaseOrderItem ServicePerformer
MultipleAcctAssgmtDistribution I_PurchaseOrderItem MultipleAcctAssgmtDistribution
AccountAssignmentCategory I_PurchaseOrderItem AccountAssignmentCategory
OrderQuantity I_PurchaseOrderItem OrderQuantity
NetPriceQuantity I_PurchaseOrderItem NetPriceQuantity
NetAmountInReportingCurrency NetAmountInReportingCurrency
NetAmountInReportingCurrency2 NetAmountInReportingCurrency2
NetAmount
IsReturnsItem
NetPriceAmount
PurchasingDocumentDeletionCode PurchasingDocumentDeletionCode
ReleaseIsNotCompleted ReleaseIsNotCompleted
PurchasingCompletenessStatus PurchasingCompletenessStatus
PurchaseOrderQuantityUnit I_PurchaseOrderItem PurchaseOrderQuantityUnit
AnalyticalReportingCurrency AnalyticalReportingCurrency
PurchaseOrder
KEY PurchaseOrderItem PurchaseOrderItem
PurgDocMigrtnIsCmpltdForAnlyts
PurchaseRequisition PurchaseRequisition
PurchaseRequisitionItem PurchaseRequisitionItem
Supplier Supplier
PurchasingOrganization PurchasingOrganization
PurchasingGroup PurchasingGroup
CompanyCode I_PurchaseOrderItem CompanyCode
PurgDocHdrCompanyCode I_PurchaseOrder CompanyCode
PurchaseOrderType PurchaseOrderType
IsCompletelyDelivered IsCompletelyDelivered
PurchaseOrderDate PurchaseOrderDate
CreatedByUser CreatedByUser
Currency I_PurchaseOrder DocumentCurrency
MaterialGroup MaterialGroup
Material Material
Plant Plant
PurchaseOrderItemCategory PurchaseOrderItemCategory
PurchaseOrderCategory PurchaseOrderCategory
PurchaseContract I_PurchaseOrder PurchaseContract
PurchaseContractItem PurchaseContractItem
ProductType ProductType
ServicePerformer ServicePerformer
MultipleAcctAssgmtDistribution MultipleAcctAssgmtDistribution
AccountAssignmentCategory AccountAssignmentCategory
OrderQuantity OrderQuantity
NetPriceQuantity NetPriceQuantity
NetAmountInReportingCurrency
NetAmountInReportingCurrency2
NetAmount NetAmount
IsReturnsItem
NetPriceAmount NetPriceAmount
PurchasingDocumentDeletionCode I_PurchaseOrder PurchasingDocumentDeletionCode
ReleaseIsNotCompleted ReleaseIsNotCompleted
PurchasingCompletenessStatus PurchasingCompletenessStatus
PurchaseOrderQuantityUnit PurchaseOrderQuantityUnit
AnalyticalReportingCurrency
AnalyticalReportingCurrency2
@AbapCatalog.sqlViewName: 'PPOIWITHOUTASGMT'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey:true
//@EndUserText.label: 'Purchase Order Item Account Assignment'

@VDM.viewType : #CONSUMPTION
@VDM.private: true
@AccessControl.personalData.blocking: #NOT_REQUIRED

define view P_PDOCITEMWITHOUTACCTASSGMT

  with parameters
    P_DisplayCurrency : displaycurrency,
    P_StartDate       : bedat,
    P_EndDate         : bedat

  as select from P_PURORDSCHDLNWITHOUTACCTASSMT ( P_StartDate  : $parameters.P_StartDate,
                                P_EndDate   : $parameters.P_EndDate ) as PurchaseOrderItem


{
  key PurchaseOrder,
  key PurchaseOrderItem.PurchaseOrderItem                                                as PurchaseOrderItem,
      cast ('X' as migration_completed)                                                  as PurgDocMigrtnIsCmpltdForAnlyts,
      PurchaseOrderItem.PurchaseRequisition,
      PurchaseOrderItem.PurchaseRequisitionItem,
      PurchaseOrderItem.Supplier,
      PurchaseOrderItem.PurchasingOrganization,
      PurchaseOrderItem.PurchasingGroup,
      PurchaseOrderItem.CompanyCode,
      PurchaseOrderItem.PurgDocHdrCompanyCode,
      PurchaseOrderItem.PurchaseOrderType,
      IsCompletelyDelivered,

      PurchaseOrderItem.PurchaseOrderDate,
      PurchaseOrderItem.CreatedByUser,
      PurchaseOrderItem.DocumentCurrency                                                 as Currency,

      PurchaseOrderItem.MaterialGroup,
      PurchaseOrderItem.Material,
      PurchaseOrderItem.Plant,
      PurchaseOrderItem.PurchaseOrderItemCategory,
      PurchaseOrderItem.PurchaseOrderCategory,

      PurchaseOrderItem.PurchaseContract,
      PurchaseOrderItem.PurchaseContractItem,

      PurchaseOrderItem.ProductType,
      PurchaseOrderItem.ServicePerformer,

      PurchaseOrderItem.MultipleAcctAssgmtDistribution,
      PurchaseOrderItem.AccountAssignmentCategory,
      PurchaseOrderItem.OrderQuantity,
      PurchaseOrderItem.NetPriceQuantity,
      NetAmountInReportingCurrency,
      NetAmountInReportingCurrency2,
      cast(NetAmount as abap.curr( 21, 5 ) )                                             as NetAmount,
      cast( case when PurchaseOrderItem.IsReturnsItem = 'X' then -1 else 1 end as int2 ) as IsReturnsItem,
      cast(NetPriceAmount as abap.curr( 21, 5 ) )                                        as NetPriceAmount,
      PurchasingDocumentDeletionCode,
      ReleaseIsNotCompleted,
      PurchasingCompletenessStatus,

      @Semantics.unitOfMeasure: true
      PurchaseOrderItem.PurchaseOrderQuantityUnit,
      AnalyticalReportingCurrency,
      AnalyticalReportingCurrency2

}


// if display currency is not same as the either of the two reporting currency


union all select from I_PurchaseOrder     as PurchaseOrder

  inner join          I_PurchaseOrderItem as PurchaseOrderItem on PurchaseOrder.PurchaseOrder = PurchaseOrderItem.PurchaseOrder

association [0..1] to I_PurchasingDocumentType as _PurchaseOrderType on  _PurchaseOrderType.PurchasingDocumentCategory = 'F'
                                                                     and _PurchaseOrderType.PurchasingDocumentType     = $projection.PurchaseOrderType
{

  key PurchaseOrder.PurchaseOrder,
  key PurchaseOrderItem                                                as PurchaseOrderItem,
      cast ('' as migration_completed)                                 as PurgDocMigrtnIsCmpltdForAnlyts,

      PurchaseRequisition,
      PurchaseRequisitionItem,

      Supplier,
      PurchasingOrganization,
      PurchasingGroup,
      PurchaseOrderItem.CompanyCode,
      PurchaseOrder.CompanyCode                                        as PurgDocHdrCompanyCode,
      @ObjectModel.foreignKey.association: '_PurchaseOrderType'
      PurchaseOrderType,
      IsCompletelyDelivered,

      PurchaseOrderDate,
      CreatedByUser,


      PurchaseOrder.DocumentCurrency                                   as Currency,

      MaterialGroup,
      Material,
      Plant,
      PurchaseOrderItemCategory,
      PurchaseOrderCategory,

      PurchaseOrder.PurchaseContract,
      PurchaseContractItem,

      ProductType,
      ServicePerformer,

      MultipleAcctAssgmtDistribution,
      AccountAssignmentCategory,
      OrderQuantity,
      NetPriceQuantity,
      cast ( 0 as purchase_order_net_amount )                          as NetAmountInReportingCurrency,
      cast ( 0 as purchase_order_net_amount )                          as NetAmountInReportingCurrency2,


      NetAmount,

      cast( case when IsReturnsItem = 'X' then -1 else 1 end as int2 ) as IsReturnsItem,


      NetPriceAmount,
      PurchaseOrder.PurchasingDocumentDeletionCode,
      ReleaseIsNotCompleted,
      PurchasingCompletenessStatus,

      @Semantics.unitOfMeasure: true
      PurchaseOrderQuantityUnit,
      cast ('' as waers_repcurr1)                                      as AnalyticalReportingCurrency,
      cast ('' as waers_repcurr1)                                      as AnalyticalReportingCurrency2

}
where
        PurchaseOrder.PurchasingDocumentDeletionCode     = ''
  and   PurchaseOrder.ReleaseIsNotCompleted              = ''
  and   PurchaseOrder.PurchasingCompletenessStatus       = ''
  and   PurchaseOrderItem.PurchasingDocumentDeletionCode = ''
  and   PurchaseOrder.DocumentCurrency != ''
  and   PurchaseOrder.PurchaseOrderDate                  <= $parameters.P_EndDate
  and   PurchaseOrder.PurchaseOrderDate                  >= $parameters.P_StartDate
  and   not(
      IsStatisticalItem                                  = 'X'
      and Material                                       = ''
    )
  and   SupplyingPlant                                   is initial
  and   MultipleAcctAssgmtDistribution                   = ''
//  and ( AccountAssignmentCategory is initial or AccountAssignmentCategory = 'U' ) // This CDS return Purchase Orders without account assignments

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