I_PURCHASEORDERSCHEDULELINE

CDS View

Purchase Order Schedule Line

I_PURCHASEORDERSCHEDULELINE is a CDS View in S/4HANA. Purchase Order Schedule Line. It contains 9 fields. 42 CDS views read from this table.

CDS Views using this table (42)

ViewTypeJoinVDMDescription
C_POScheduleLineFactSheet view from CONSUMPTION Purchase Order Schedule Line
C_PurdocItemOpenQty view from CONSUMPTION Open Quantity on Next Schedule Delivery
C_PurOrdSchedLineSolution view from CONSUMPTION Purchase Order Schedule Line Solution
C_SlsDocFlfmtPurOrdSchedLine view from CONSUMPTION Purchase Order Schedule Line
I_MRPPurchaseOrderScheduleLine view from COMPOSITE Purchase Order Schedule Line
I_SlsOrdFlfmtPurOrdSchedLine view from COMPOSITE SOFM Purchase Order Scheduleline
P_MaintOrdCompExpectedDelivs view left_outer COMPOSITE Maintenance Order Component Purchasing Issues
P_MaintOrdCompScheduleLine view from COMPOSITE Schedule Lines for directly procured components
P_MngProjDmndPOItemGRQty view from COMPOSITE PO Item GR quantity
P_OverduePO3 view inner CONSUMPTION Overdue PO with Return Items
P_OverduePurDocItems view from CONSUMPTION Purchasing Document Overdue Items
P_OverduePurOrdItems view from CONSUMPTION Overdue Purchase order Items
P_OvrdPurOrdItems view from COMPOSITE P_OvrdPurOrdItems
P_POItemClsdSchdLnCumltvQty view from CONSUMPTION PO Item Closed Sched Line Cummulative Qty
P_POItemClsdSchdLnCumltvQty1 view inner CONSUMPTION a
P_POItemDeliveryDuration view from CONSUMPTION Delivery Duration for Next Delivery Date
P_POItemDeliveryScheduleCount view from COMPOSITE PO Items Delivery Schedules Count
P_POItemErlstDeliveryDate view_entity from COMPOSITE Po Item Earliest Delivery Date
P_POItemGoodsReceiptCalc view from COMPOSITE PO Item GR Calculated fields
P_POItemGRQty view from CONSUMPTION PO Item Goods Receipt Quantity
P_POItemGRQuantity view inner CONSUMPTION PO Item GR Quantity
P_POItemNextDeliveryCalc1 view inner COMPOSITE PO Item Next Delivery Calculation
P_POItemNextOpenSchedLine view_entity from COMPOSITE PO Item Next Open Schedule Line
P_POItemOpenSchedLine view inner CONSUMPTION PO Item Next Open Schedule Line
P_POItemOpenSchedLineCalc1 view from CONSUMPTION PO Item Next Open Schedule Line Calc1
P_PONxtOpenSchdLnGrp view inner CONSUMPTION PO Item Next Open Schedule Line
P_PONxtOpenScheduleLine view inner CONSUMPTION PO Item Next Open Schedule Line
P_PONxtOpnSchdLine view from CONSUMPTION Purchase Order Next Open Schedule Line
P_PONxtOpnSchdLineOld view inner CONSUMPTION PO Item Next Open Schedule Line
P_POSchedLineReqFields view_entity from COMPOSITE PO Schedule Line Required Fields
P_POScheduleLineforReturnDel view from CONSUMPTION PO Schedule Line for Ret. Delivery
P_PurchaseOrderScheduleLine view from CONSUMPTION P_PurchaseOrderScheduleLine
P_PurchOrderSchedLineReqFields view_entity from COMPOSITE Purchase Order Schedule Line Required Fields
P_PurFutureSpend view inner CONSUMPTION Purchasing Future Spend
P_PurOrdExpectedQty view from CONSUMPTION Purchase Order Expected Quantity
P_PurOrdItemErlstDeliveryDate view_entity from CONSUMPTION Purchase Order Item Earliest Delivery Date
P_PurOrdItemNextOpenSchedLine view_entity from CONSUMPTION Purchase Order Item Next Open Sched Line
P_PurOrdNextSchdLn view inner CONSUMPTION Next Delivery Calculations
P_PurOrdNextSchdLnCal view inner CONSUMPTION Next Delivery Calculations
P_PurOrdNextSchdLnCal1 view from CONSUMPTION Next Delivery Calculations
P_PurOrdSchedAcct1 view inner CONSUMPTION Scheduled Purchase Orders
P_ThirdPartyAvaily view inner CONSUMPTION Third Party Availability

Fields (9)

KeyField CDS FieldsUsed in Views
KEY PurchaseOrder PurchaseOrder 7
KEY PurchaseOrderItem PurchaseOrderItem 7
KEY ScheduleLine ScheduleLine 7
OpenPurchaseOrderQuantity OpenPurchaseOrderQuantity 1
PurchaseOrderQuantityUnit PurchaseOrderQuantityUnit 4
RoughGoodsReceiptQty RoughGoodsReceiptQty 1
SchedLineStscDeliveryDate SchedLineStscDeliveryDate 1
ScheduleLineDeliveryDate ScheduleLineDeliveryDate 3
ScheduleLineOrderQuantity ScheduleLineOrderQuantity 3
@AbapCatalog.preserveKey: true
@AbapCatalog.compiler.compareFilter: true
@ClientHandling.algorithm: #SESSION_VARIABLE //Inserted by VDM CDS Suite Plugin

@EndUserText.label: 'Purchase Order Schedule Line'
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IMMPOSCHEDULELN'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@ObjectModel.representativeKey: 'ScheduleLine'

@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API

define view I_PurchaseOrderScheduleLine
  as select from I_PurgDocScheduleLine
  association [1..1] to I_PurchaseOrder           as _PurchaseOrder             on  $projection.PurchaseOrder = _PurchaseOrder.PurchaseOrder
  association [1..1] to I_PurchaseOrderItem       as _PurchaseOrderItem         on  $projection.PurchaseOrder     = _PurchaseOrderItem.PurchaseOrder
                                                                                and $projection.PurchaseOrderItem = _PurchaseOrderItem.PurchaseOrderItem
  association [0..1] to I_UnitOfMeasure           as _PurchaseOrderQuantityUnit on  $projection.PurchaseOrderQuantityUnit = _PurchaseOrderQuantityUnit.UnitOfMeasure
  association [0..1] to I_Currency                as _Currency                  on  $projection.Currency = _Currency.Currency
  association [0..1] to I_Purchaserequisition     as _PurchaseRequisition       on  $projection.PurchaseRequisition = _PurchaseRequisition.PurchaseRequisition
  association [0..1] to I_Purchaserequisitionitem as _PurchaseRequisitionItem   on  $projection.PurchaseRequisition     = _PurchaseRequisitionItem.PurchaseRequisition
                                                                                and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem.PurchaseRequisitionItem
  association [0..*] to I_POSubcontractingCompAPI01 as _SubcontractingComponent on  $projection.PurchaseOrder     = _SubcontractingComponent.PurchaseOrder
                                                                                    and $projection.PurchaseOrderItem = _SubcontractingComponent.PurchaseOrderItem
                                                                                    and $projection.ScheduleLine = _SubcontractingComponent.PurchaseOrderScheduleLine
                                                                                    
                                                                               

{
      @ObjectModel.foreignKey.association: '_PurchaseOrder'
  key PurchasingDocument                                 as PurchaseOrder,
      @ObjectModel.foreignKey.association: '_PurchaseOrderItem'
  key PurchasingDocumentItem                             as PurchaseOrderItem,

  key ScheduleLine                                       as ScheduleLine,

      ScheduleLineDeliveryDate,

      SchedLineStscDeliveryDate,

      PerformancePeriodStartDate,

      PerformancePeriodEndDate,

      ScheduleLineDeliveryTime,
      
      Batch,

      @Semantics.quantity.unitOfMeasure: 'PurchaseOrderQuantityUnit'
      @DefaultAggregation: #SUM
      ScheduleLineOrderQuantity,

      @Semantics.quantity.unitOfMeasure: 'PurchaseOrderQuantityUnit'
      @DefaultAggregation: #SUM
      RoughGoodsReceiptQty,

      @Semantics.quantity.unitOfMeasure: 'PurchaseOrderQuantityUnit'
      @DefaultAggregation: #SUM
      (ScheduleLineOrderQuantity - RoughGoodsReceiptQty) as OpenPurchaseOrderQuantity,

      @Semantics.unitOfMeasure: true
      @ObjectModel.foreignKey.association: '_PurchaseOrderQuantityUnit'
      _PurchaseOrderItem.PurchaseOrderQuantityUnit       as PurchaseOrderQuantityUnit,

      @Semantics.currencyCode: true
      @ObjectModel.foreignKey.association: '_Currency'
      _PurchaseOrderItem.DocumentCurrency                as Currency,

      @Semantics.amount.currencyCode: 'Currency'
      @DefaultAggregation: #SUM
      case
          when (  _PurchaseOrderItem.OrderQuantity = 0 ) // prevent division by 0

              then
                  0
              else
      cast((  ScheduleLineOrderQuantity - RoughGoodsReceiptQty) *
              division( _PurchaseOrderItem.NetAmount , _PurchaseOrderItem.OrderQuantity, 3 )
      as abap.curr( 21, 3 ))    
      end as OpenPurchaseOrderNetAmount,

      @ObjectModel.foreignKey.association: '_PurchaseRequisition'
      I_PurgDocScheduleLine.PurchaseRequisition,
      @ObjectModel.foreignKey.association: '_PurchaseRequisitionItem'
      I_PurgDocScheduleLine.PurchaseRequisitionItem,
      
      // Fields added for R_*TP development

      DelivDateCategory,
      ScheduleLineOrderDate,
      ProductAvailabilityDate,
      LoadingDate,
      LoadingTime,
      TransportationPlanningDate,
      TransportationPlanningTime,
      GoodsIssueDate,
      GoodsIssueTime,
      RouteSchedule,
      ProductAvailabilityTime,
     // GoodsReceiptEndDate,

     // GoodsReceiptEndTime,

     // CommittedDate,

     // HandoverDte,

     // HandoverTme,

     // GeographicalRoute,      

      
      // Associations

      _PurchaseRequisition,
      _PurchaseOrder,
      _PurchaseOrderItem,
      _PurchaseOrderQuantityUnit,
      _Currency,
      _PurchaseRequisitionItem,
      _SubcontractingComponent
}