I_PurchaseOrderScheduleLine

DDL: I_PURCHASEORDERSCHEDULELINE SQL: IMMPOSCHEDULELN Type: view BASIC

Purchase Order Schedule Line

I_PurchaseOrderScheduleLine is a Basic CDS View that provides data about "Purchase Order Schedule Line" in SAP S/4HANA. It reads from 1 data source (I_PurgDocScheduleLine) and exposes 35 fields with key fields PurchaseOrder, PurchaseOrderItem, ScheduleLine. It has 7 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_PurgDocScheduleLine I_PurgDocScheduleLine from

Associations (7)

CardinalityTargetAliasCondition
[1..1] I_PurchaseOrder _PurchaseOrder $projection.PurchaseOrder = _PurchaseOrder.PurchaseOrder
[1..1] I_PurchaseOrderItem _PurchaseOrderItem $projection.PurchaseOrder = _PurchaseOrderItem.PurchaseOrder and $projection.PurchaseOrderItem = _PurchaseOrderItem.PurchaseOrderItem
[0..1] I_UnitOfMeasure _PurchaseOrderQuantityUnit $projection.PurchaseOrderQuantityUnit = _PurchaseOrderQuantityUnit.UnitOfMeasure
[0..1] I_Currency _Currency $projection.Currency = _Currency.Currency
[0..1] I_Purchaserequisition _PurchaseRequisition $projection.PurchaseRequisition = _PurchaseRequisition.PurchaseRequisition
[0..1] I_Purchaserequisitionitem _PurchaseRequisitionItem $projection.PurchaseRequisition = _PurchaseRequisitionItem.PurchaseRequisition and $projection.PurchaseRequisitionItem = _PurchaseRequisitionItem.PurchaseRequisitionItem
[0..*] I_POSubcontractingCompAPI01 _SubcontractingComponent $projection.PurchaseOrder = _SubcontractingComponent.PurchaseOrder and $projection.PurchaseOrderItem = _SubcontractingComponent.PurchaseOrderItem and $projection.ScheduleLine = _SubcontractingComponent.PurchaseOrderScheduleLine

Annotations (12)

NameValueLevelField
AbapCatalog.preserveKey true view
AbapCatalog.compiler.compareFilter true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Purchase Order Schedule Line view
VDM.viewType #BASIC view
AbapCatalog.sqlViewName IMMPOSCHEDULELN view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey ScheduleLine view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view

Fields (35)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder PurchasingDocument
KEY PurchaseOrderItem PurchasingDocumentItem
KEY ScheduleLine ScheduleLine
ScheduleLineDeliveryDate ScheduleLineDeliveryDate
SchedLineStscDeliveryDate SchedLineStscDeliveryDate
PerformancePeriodStartDate PerformancePeriodStartDate
PerformancePeriodEndDate PerformancePeriodEndDate
ScheduleLineDeliveryTime ScheduleLineDeliveryTime
Batch Batch
ScheduleLineOrderQuantity ScheduleLineOrderQuantity
RoughGoodsReceiptQty RoughGoodsReceiptQty
OpenPurchaseOrderQuantity
PurchaseOrderQuantityUnit _PurchaseOrderItem PurchaseOrderQuantityUnit
Currency _PurchaseOrderItem DocumentCurrency
curr213endasOpenPurchaseOrderNetAmount
PurchaseRequisition I_PurgDocScheduleLine PurchaseRequisition
PurchaseRequisitionItem I_PurgDocScheduleLine PurchaseRequisitionItem
DelivDateCategory DelivDateCategory
ScheduleLineOrderDate ScheduleLineOrderDate
ProductAvailabilityDate ProductAvailabilityDate
LoadingDate LoadingDate
LoadingTime LoadingTime
TransportationPlanningDate TransportationPlanningDate
TransportationPlanningTime TransportationPlanningTime
GoodsIssueDate GoodsIssueDate
GoodsIssueTime GoodsIssueTime
RouteSchedule RouteSchedule
ProductAvailabilityTime ProductAvailabilityTime
_PurchaseRequisition _PurchaseRequisition
_PurchaseOrder _PurchaseOrder
_PurchaseOrderItem _PurchaseOrderItem
_PurchaseOrderQuantityUnit _PurchaseOrderQuantityUnit
_Currency _Currency
_PurchaseRequisitionItem _PurchaseRequisitionItem
_SubcontractingComponent _SubcontractingComponent
@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

@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
}                                                           
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
 /*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASEORDERITEM",
"I_PURGDOCSCHEDULELINE"
],
"ASSOCIATED":
[
"I_CURRENCY",
"I_POSUBCONTRACTINGCOMPAPI01",
"I_PURCHASEORDER",
"I_PURCHASEORDERITEM",
"I_PURCHASEREQUISITION",
"I_PURCHASEREQUISITIONITEM",
"I_UNITOFMEASURE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/