C_PurOrdScheduleLineTP

DDL: C_PURORDSCHEDULELINETP SQL: CPOSCHEDLINETP Type: view CONSUMPTION

Purchase Order Schedule Line

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

Data Sources (1)

SourceAliasJoin Type
I_PurOrdScheduleLineTP Document from

Associations (4)

CardinalityTargetAliasCondition
[1..1] C_PurchaseOrderTP _PurchaseOrderTP _PurchaseOrderTP.PurchaseOrder = $projection.PurchaseOrder
[1..1] C_PurchaseOrderItemTP _PurchaseOrderItemTP _PurchaseOrderItemTP.PurchaseOrder = $projection.PurchaseOrder and _PurchaseOrderItemTP.PurchaseOrderItem = $projection.PurchaseOrderItem
[1..*] C_POSubcontractingComponentTP _SubcontractingComponent _SubcontractingComponent.PurchaseOrder = $projection.PurchaseOrder and _SubcontractingComponent.PurchaseOrderItem = $projection.PurchaseOrderItem and _SubcontractingComponent.ScheduleLine = $projection.ScheduleLine
[0..1] C_PurchaseRequisitionValueHelp _PurchaseRequisitionItem _PurchaseRequisitionItem.PurchaseRequisition = $projection.PurchaseRequisition and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem

Annotations (18)

NameValueLevelField
VDM.viewType #CONSUMPTION view
AbapCatalog.sqlViewName CPOSCHEDLINETP view
EndUserText.label Purchase Order Schedule Line view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
ObjectModel.transactionalProcessingDelegated true view
ObjectModel.createEnabled EXTERNAL_CALCULATION view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled EXTERNAL_CALCULATION view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MIXED view
Search.searchable true view
UI.headerInfo.typeName Schedule Line Item view
UI.headerInfo.typeNamePlural Schedule Line Items view
UI.headerInfo.title.value ScheduleLine view

Fields (24)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrderItem I_PurOrdScheduleLineTP PurchaseOrderItem
KEY PurchaseOrder I_PurOrdScheduleLineTP PurchaseOrder
KEY ScheduleLine I_PurOrdScheduleLineTP ScheduleLine
ScheduleLineDeliveryDate
PerformancePeriodStartDate
PerformancePeriodEndDate
ScheduleLineOrderQuantity I_PurOrdScheduleLineTP ScheduleLineOrderQuantity
SchedLineStscDeliveryDate I_PurOrdScheduleLineTP SchedLineStscDeliveryDate
RoughGoodsReceiptQty I_PurOrdScheduleLineTP RoughGoodsReceiptQty
PurchaseRequisition I_PurOrdScheduleLineTP PurchaseRequisition
PurchaseRequisitionItem I_PurOrdScheduleLineTP PurchaseRequisitionItem
PurchaseOrderQuantityUnit I_PurOrdScheduleLineTP PurchaseOrderQuantityUnit
Batch I_PurOrdScheduleLineTP Batch
BatchBySupplier I_PurOrdScheduleLineTP BatchBySupplier
HighestMessageSeverityLevel I_PurOrdScheduleLineTP HighestMessageSeverityLevel
ManufacturerMaterial _PurchaseOrderItemTP ManufacturerMaterial
Plant _PurchaseOrderItemTP Plant
PurchaseOrderItemCategory _PurchaseOrderItemTP PurchaseOrderItemCategory
PurchasingOrganization _PurchaseOrderItemTP PurchasingOrganization
CompanyCode _PurchaseOrderItemTP CompanyCode
_PurchaseOrderTP _PurchaseOrderTP
_PurchaseOrderItemTP _PurchaseOrderItemTP
_SubcontractingComponent _SubcontractingComponent
_PurchaseRequisitionItem _PurchaseRequisitionItem
@VDM.viewType: #CONSUMPTION
@AbapCatalog.sqlViewName: 'CPOSCHEDLINETP'
@EndUserText.label: 'Purchase Order Schedule Line'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@ObjectModel: {
   transactionalProcessingDelegated: true,
   semanticKey: ['PurchaseOrder', 'PurchaseOrderItem', 'ScheduleLine'], 
   createEnabled: 'EXTERNAL_CALCULATION',
   updateEnabled: true,
   deleteEnabled: 'EXTERNAL_CALCULATION'
}

@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED

@Search.searchable: true

@UI.headerInfo:{
  typeName:       'Schedule Line Item',
  typeNamePlural: 'Schedule Line Items',

  title:          {value: 'ScheduleLine'}
}

define view C_PurOrdScheduleLineTP
  as select from I_PurOrdScheduleLineTP as Document
  association [1..1] to C_PurchaseOrderTP               as _PurchaseOrderTP         on  _PurchaseOrderTP.PurchaseOrder = $projection.PurchaseOrder
  association [1..1] to C_PurchaseOrderItemTP           as _PurchaseOrderItemTP     on  _PurchaseOrderItemTP.PurchaseOrder     = $projection.PurchaseOrder
                                                                                    and _PurchaseOrderItemTP.PurchaseOrderItem = $projection.PurchaseOrderItem
  association [1..*] to C_POSubcontractingComponentTP   as _SubcontractingComponent on  _SubcontractingComponent.PurchaseOrder     = $projection.PurchaseOrder
                                                                                    and _SubcontractingComponent.PurchaseOrderItem = $projection.PurchaseOrderItem    
                                                                                    and _SubcontractingComponent.ScheduleLine      = $projection.ScheduleLine                                                                                
                                                                              
  association [0..1] to C_PurchaseRequisitionValueHelp  as _PurchaseRequisitionItem on  _PurchaseRequisitionItem.PurchaseRequisition     = $projection.PurchaseRequisition
                                                                                    and _PurchaseRequisitionItem.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem

{
  @UI.hidden: true
  key Document.PurchaseOrderItem,
  @UI.hidden: true
  key Document.PurchaseOrder,
      @ObjectModel: { readOnly: true }
      @UI: {
        identification: { position: 10 },
        lineItem: [ { position: 10, importance: #HIGH }]
      }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
  key Document.ScheduleLine,
      @UI: { lineItem: { position: 20, importance: #HIGH }}
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      cast (Document.ScheduleLineDeliveryDate as eindt_ll preserving type) as ScheduleLineDeliveryDate,
      @UI: { lineItem: { position: 30, importance: #HIGH }}
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      cast (Document.PerformancePeriodStartDate as startdate_ll preserving type) as PerformancePeriodStartDate,
      @UI: { lineItem: { position: 40, importance: #HIGH }}
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      cast (Document.PerformancePeriodEndDate as enddate_ll preserving type) as PerformancePeriodEndDate,
      @UI.identification.position: 20
      @UI: { lineItem: { position: 50, importance: #HIGH }}
      @Semantics.quantity.unitOfMeasure: 'PurchaseOrderQuantityUnit'
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      Document.ScheduleLineOrderQuantity,
      @UI.identification.position: 30
      Document.SchedLineStscDeliveryDate,
      @UI.hidden: true
      @Semantics.quantity.unitOfMeasure: 'PurchaseOrderQuantityUnit'
      Document.RoughGoodsReceiptQty,
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.hidden: true
      Document.PurchaseRequisition,
      @UI.hidden: true
      Document.PurchaseRequisitionItem,
      @Semantics.unitOfMeasure: true
      @ObjectModel: { readOnly: true }
      Document.PurchaseOrderQuantityUnit,     
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.hidden: true
      Document.Batch,
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.hidden: true
      Document.BatchBySupplier,
      @ObjectModel: { readOnly: true }
      @UI.hidden: true
      Document.HighestMessageSeverityLevel,
      @ObjectModel: { readOnly: true }
      _PurchaseOrderItemTP.ManufacturerMaterial,
      @ObjectModel: { readOnly: true }
      _PurchaseOrderItemTP.Plant,
      @ObjectModel: { readOnly: true }
      @UI.hidden: true
      _PurchaseOrderItemTP.PurchaseOrderItemCategory, 
      @ObjectModel: { readOnly: true }
      @UI.hidden: true
      _PurchaseOrderItemTP.PurchasingOrganization,  
      @ObjectModel: { readOnly: true }
      @UI.hidden: true
      _PurchaseOrderItemTP.CompanyCode,                
      
      ----------------------------------------------------------------------------------------
      -- Transient fields                                                                   --
      ----------------------------------------------------------------------------------------

      @ObjectModel: {
        readOnly: true,
        virtualElement,
        virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_TRA_EXIT'
      }
      @UI.hidden: true
      cast ('' as boolean)  as  SubcontractingCompIsAddable,
      
      @ObjectModel.association.type: #TO_COMPOSITION_ROOT
      _PurchaseOrderTP,

      @ObjectModel.association.type: #TO_COMPOSITION_PARENT
      _PurchaseOrderItemTP,

      @ObjectModel.association.type: #TO_COMPOSITION_CHILD       
      _SubcontractingComponent,

      _PurchaseRequisitionItem
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"C_PURCHASEORDERITEMTP",
"I_PURORDSCHEDULELINETP"
],
"ASSOCIATED":
[
"C_POSUBCONTRACTINGCOMPONENTTP",
"C_PURCHASEORDERITEMTP",
"C_PURCHASEORDERTP",
"C_PURCHASEREQUISITIONVALUEHELP"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/