P_PurchaseOrderScheduleLine

DDL: P_PURCHASEORDERSCHEDULELINE SQL: PMMPOSCHELINE Type: view CONSUMPTION

P_PurchaseOrderScheduleLine is a Consumption CDS View in SAP S/4HANA. It reads from 1 data source (I_PurchaseOrderScheduleLine) and exposes 18 fields with key fields PurchaseOrder, PurchaseOrderItem, ScheduleLine. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_PurchaseOrderScheduleLine ScheduleLine from

Parameters (2)

NameTypeDefault
P_StartDate bedat
P_EndDate bedat

Associations (1)

CardinalityTargetAliasCondition
[1..1] I_PurchaseOrderItem _PurOrdItem $projection.PurchaseOrder = _PurOrdItem.PurchaseOrder and $projection.PurchaseOrderItem = _PurOrdItem.PurchaseOrderItem

Annotations (7)

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

Fields (18)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder PurchaseOrder
KEY PurchaseOrderItem PurchaseOrderItem
KEY ScheduleLine ScheduleLine
ScheduleLineOrderQuantity I_PurchaseOrderScheduleLine ScheduleLineOrderQuantity
PurchaseOrderQuantityUnit I_PurchaseOrderScheduleLine PurchaseOrderQuantityUnit
PurchaseOrderDate _PurOrd PurchaseOrderDate
NetAmount _PurOrdItem NetAmount
DocumentCurrency _PurOrdItem DocumentCurrency
ScheduleLineDeliveryDate ScheduleLineDeliveryDate
SchedLineStscDeliveryDate SchedLineStscDeliveryDate
PurchasingOrganization _PurOrd PurchasingOrganization
PurchasingGroup _PurOrd PurchasingGroup
Supplier _PurOrd Supplier
CompanyCode _PurOrd CompanyCode
Material _PurOrdItem Material
MaterialGroup _PurOrdItem MaterialGroup
Plant _PurOrdItem Plant
OrderQuantity _PurOrdItem OrderQuantity
@ClientHandling.algorithm: #SESSION_VARIABLE //Inserted by VDM CDS Suite Plugin

@AbapCatalog.sqlViewName: 'PMMPOSCHELINE'
//Commented by VDM CDS Suite Plugin:@ClientDependent: true


@AbapCatalog.compiler.compareFilter: true
@VDM.viewType : #CONSUMPTION
@AccessControl.authorizationCheck: #NOT_REQUIRED
@VDM.private : true
@AccessControl.personalData.blocking: #NOT_REQUIRED
//@EndUserText.label: 'Purchase Order Schedule Line Details'

define view P_PurchaseOrderScheduleLine 

with parameters 
    P_StartDate : bedat,
    P_EndDate   : bedat
as select from I_PurchaseOrderScheduleLine as ScheduleLine

association[1..1] to I_PurchaseOrder as _PurOrd on $projection.PurchaseOrder = _PurOrd.PurchaseOrder
association [1..1] to I_PurchaseOrderItem as _PurOrdItem on $projection.PurchaseOrder = _PurOrdItem.PurchaseOrder
                                                        and $projection.PurchaseOrderItem = _PurOrdItem.PurchaseOrderItem
{
 key PurchaseOrder,
    key PurchaseOrderItem,
    key ScheduleLine,
    
//    case  when ScheduleLine.SchedLineStscDeliveryDate is null or ScheduleLine.SchedLineStscDeliveryDate = '00000000'

//            then ScheduleLine.ScheduleLineDeliveryDate

//            else ScheduleLine.SchedLineStscDeliveryDate

//    end as SchedLineStscDeliveryDate,


    ScheduleLine.ScheduleLineOrderQuantity,
    ScheduleLine.PurchaseOrderQuantityUnit,
    _PurOrd.PurchaseOrderDate,
    _PurOrdItem.NetAmount,
    _PurOrdItem.DocumentCurrency,
    ScheduleLineDeliveryDate,
    SchedLineStscDeliveryDate,
        
    _PurOrd.PurchasingOrganization,
    _PurOrd.PurchasingGroup,
    _PurOrd.Supplier,
    _PurOrd.CompanyCode,
    
    _PurOrdItem.Material, 
    _PurOrdItem.MaterialGroup, 
    _PurOrdItem.Plant ,
    _PurOrdItem.OrderQuantity
}
where _PurOrd.PurchasingCompletenessStatus = '' 
  and _PurOrdItem.PurchasingDocumentDeletionCode = '' 
  and _PurOrd.Supplier <> ''
  and _PurOrd.PurchaseOrderDate >= $parameters.P_StartDate
  and _PurOrd.PurchaseOrderDate <= $parameters.P_EndDate  
  and ( _PurOrdItem.IsStatisticalItem = '' or _PurOrdItem.Material <> '')
  and not (
         _PurOrdItem.ProductType                    = '2'
    or(
         _PurOrdItem.PurchaseOrderItemCategory      = '9'
      or _PurOrdItem.PurchaseOrderItemCategory      = '1'
      or _PurOrdItem.PurchaseOrderItemCategory      = 'A'
    )
  )  
//association[1..1] to I_PurchaseOrder as _PurOrd on $projection.PurchaseOrder = _PurOrd.PurchaseOrder and _PurOrd.PurchasingCompletenessStatus = '' and _PurOrd.Supplier <> ''

//                                                        and _PurOrd.PurchaseOrderDate >= $parameters.P_StartDate and _PurOrd.PurchaseOrderDate <= $parameters.P_EndDate

//association [1..1] to I_PurchaseOrderItem as _PurOrdItem on $projection.PurchaseOrder = _PurOrdItem.PurchaseOrder

//                                                        and $projection.PurchaseOrderItem = _PurOrdItem.PurchaseOrderItem

//                                                        and _PurOrdItem.PurchasingDocumentDeletionCode = '' 


//inner join I_PurchaseOrder as _PurOrd on ScheduleLine.PurchaseOrder = _PurOrd.PurchaseOrder and _PurOrd.PurchasingCompletenessStatus = '' and _PurOrd.Supplier <> ''

//                                                        and _PurOrd.PurchaseOrderDate >= $parameters.P_StartDate and _PurOrd.PurchaseOrderDate <= $parameters.P_EndDate

//inner join I_PurchaseOrderItem as _PurOrdItem on ScheduleLine.PurchaseOrder = _PurOrdItem.PurchaseOrder

//                                                        and ScheduleLine.PurchaseOrderItem = _PurOrdItem.PurchaseOrderItem

//                                                        and _PurOrdItem.PurchasingDocumentDeletionCode = ''                                                    

//  

//{

//    key ScheduleLine.PurchaseOrder,

//    key ScheduleLine.PurchaseOrderItem,

//    key ScheduleLine, 

//    

////    case  when ScheduleLine.SchedLineStscDeliveryDate is null or ScheduleLine.SchedLineStscDeliveryDate = '00000000'

////            then ScheduleLine.ScheduleLineDeliveryDate

////            else ScheduleLine.SchedLineStscDeliveryDate

////    end as SchedLineStscDeliveryDate,

//

//    ScheduleLine.ScheduleLineOrderQuantity,

//    ScheduleLine.PurchaseOrderQuantityUnit,

//    _PurOrd.PurchaseOrderDate,

//    ScheduleLineDeliveryDate,

//    SchedLineStscDeliveryDate,

//        

//    _PurOrd.PurchasingOrganization,

//    _PurOrd.PurchasingGroup,

//    _PurOrd.Supplier,

//    _PurOrd.CompanyCode,

//    

//    _PurOrdItem.Material, 

//    _PurOrdItem.MaterialGroup, 

//    _PurOrdItem.Plant ,

//    _PurOrdItem.OrderQuantity

//}

////where _PurOrd.PurchasingCompletenessStatus = '' 

////  and _PurOrdItem.PurchasingDocumentDeletionCode = '' 

////  and _PurOrd.Supplier <> ''

////  and _PurOrd.PurchaseOrderDate >= $parameters.P_StartDate

////  and _PurOrd.PurchaseOrderDate <= $parameters.P_EndDate

//

//union select from I_PurchaseOrderScheduleLine as ScheduleLine

//inner join I_Schedgagrmthdr as _SchHdr on  ScheduleLine.PurchaseOrder = _SchHdr.SchedulingAgreement and _SchHdr.PurchasingCompletenessStatus = '' and _SchHdr.Supplier <> ''

//                                                        and _SchHdr.PurchasingDocumentOrderDate >= $parameters.P_StartDate and _SchHdr.PurchasingDocumentOrderDate <= $parameters.P_EndDate 

//                                                        and _SchHdr.PurchasingDocumentDeletionCode = ''  

//inner join   I_SchedgAgrmtItm as _SchItem on ScheduleLine.PurchaseOrder = _SchItem.SchedulingAgreement

//                                                        and ScheduleLine.PurchaseOrderItem = _SchItem.SchedulingAgreementItem

//                                                        and _SchItem.PurchasingDocumentDeletionCode = ''   

//                                                        

//{

//    key ScheduleLine.PurchaseOrder,

//    key ScheduleLine.PurchaseOrderItem,

//    key ScheduleLine,

//    

////    case  when ScheduleLine.SchedLineStscDeliveryDate is null or ScheduleLine.SchedLineStscDeliveryDate = '00000000'

////            then ScheduleLine.ScheduleLineDeliveryDate

////            else ScheduleLine.SchedLineStscDeliveryDate

////    end as SchedLineStscDeliveryDate,

//

//    ScheduleLine.ScheduleLineOrderQuantity,

//    ScheduleLine.PurchaseOrderQuantityUnit,

//    _SchHdr.PurchasingDocumentOrderDate as PurchaseOrderDate,

//    ScheduleLineDeliveryDate,

//    SchedLineStscDeliveryDate,

//        

//    _SchHdr.PurchasingOrganization,

//    _SchHdr.PurchasingGroup,

//    _SchHdr.Supplier,

//    _SchHdr.CompanyCode,

//    

//    _SchHdr._SchedgAgrmtItm.Material, 

//    _SchHdr._SchedgAgrmtItm.MaterialGroup, 

//    _SchHdr._SchedgAgrmtItm.Plant ,

//    _SchHdr._SchedgAgrmtItm.TargetQuantity  as OrderQuantity                                             

//}


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