C_PurchaseOrderLimitItemTP

DDL: C_PURCHASEORDERLIMITITEMTP Type: view CONSUMPTION

Purchase Order Limit Item

C_PurchaseOrderLimitItemTP is a Consumption CDS View that provides data about "Purchase Order Limit Item" in SAP S/4HANA. It reads from 1 data source (I_PurchaseOrderItemTP) and exposes 67 fields with key fields PurchaseOrder, PurchaseOrderItem. It has 14 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_PurchaseOrderItemTP PurchaseOrderItemTP from

Associations (14)

CardinalityTargetAliasCondition
[1..1] C_PurchaseOrderTP _PurchaseOrderTP _PurchaseOrderTP.PurchaseOrder = $projection.PurchaseOrder
[1..*] C_PurOrdScheduleLineTP _PurOrdScheduleLineTP _PurOrdScheduleLineTP.PurchaseOrder = $projection.PurchaseOrder and _PurOrdScheduleLineTP.PurchaseOrderItem = $projection.PurchaseOrderItem -- :*
[1..*] C_PurOrdAcctAssignmentTP _PurOrdAcctAssignmentTP _PurOrdAcctAssignmentTP.PurchaseOrder = $projection.PurchaseOrder and _PurOrdAcctAssignmentTP.PurchaseOrderItem = $projection.PurchaseOrderItem -- :*
[1..*] C_PurOrdPricingElementTP _PurOrdPricingElementTP _PurOrdPricingElementTP.PurchaseOrder = $projection.PurchaseOrder and _PurOrdPricingElementTP.PurchaseOrderItem = $projection.PurchaseOrderItem -- :*
[1..1] C_PurOrdDeliveryAddressTP _PurOrdDeliveryAddressTP _PurOrdDeliveryAddressTP.PurchaseOrder = $projection.PurchaseOrder and _PurOrdDeliveryAddressTP.PurchaseOrderItem = $projection.PurchaseOrderItem -- :0..1
[0..1] C_MM_TaxCodeValueHelp _TaxCode _TaxCode.TaxCode = $projection.TaxCode and _TaxCode.TaxCalculationProcedure = $projection.TaxCalculationProcedure -- :0..1
[0..1] C_MM_TaxJurisdictionVH _TaxJurisdiction _TaxJurisdiction.TaxJurisdiction = $projection.TaxJurisdiction
[0..1] I_TaxCalculationProcedure _TaxCalculationProcedure _TaxCalculationProcedure.TaxCalculationProcedure = $projection.TaxCalculationProcedure
[0..1] C_MM_ProductTypeValueHelp _ProductTypeValueHelp _ProductTypeValueHelp.ProductType = $projection.ProductType
[0..1] C_PurOrdActACatValHelp _PurOrdActACatValHelp _PurOrdActACatValHelp.AccountAssignmentCategory = $projection.AccountAssignmentCategory
[0..1] C_MM_MaterialGroupValueHelp _MaterialGroupValueHelp _MaterialGroupValueHelp.MaterialGroup = $projection.MaterialGroup
[0..1] C_MM_PlantValueHelp _PlantValueHelp _PlantValueHelp.Plant = $projection.Plant and _PlantValueHelp.PurchasingOrganization = $projection.purchasingorganization
[0..*] C_PurOrdTaxJurisdictionValHelp _PurOrdTaxJurisdictionValHelp _PurOrdTaxJurisdictionValHelp.TaxJurisdiction = $projection.TaxJurisdiction and _PurOrdTaxJurisdictionValHelp.CompanyCode = $projection.CompanyCode
[1..1] C_PurchaseContractValHelp _PurContractValHelp _PurContractValHelp.PurchaseContract = $projection.PurContractForOverallLimit

Annotations (11)

NameValueLevelField
VDM.lifecycle.status #DEPRECATED view
VDM.viewType #CONSUMPTION view
AbapCatalog.sqlViewName CPURORDLIMITMTP view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Purchase Order Limit Item view
AccessControl.authorizationCheck #CHECK view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
Search.searchable true view

Fields (67)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder I_PurchaseOrderItemTP PurchaseOrder
KEY PurchaseOrderItem
PurchaseOrderItemCategory I_PurchaseOrderItemTP PurchaseOrderItemCategory
PurOrdItemCategoryName I_PurchaseOrderItemTP PurOrdItemCategoryName
PurchaseOrderItemText I_PurchaseOrderItemTP PurchaseOrderItemText
ExpectedOverallLimitAmount I_PurchaseOrderItemTP ExpectedOverallLimitAmount
OverallLimitAmount I_PurchaseOrderItemTP OverallLimitAmount
PurchasingDocumentDeletionCode I_PurchaseOrderItemTP PurchasingDocumentDeletionCode
PurchaseOrderItemStatus_H I_PurchaseOrderItemTP PurchaseOrderItemStatus
PurchaseOrderItemStatus Status
PurchaseOrderItemStatusName
DocumentCurrency I_PurchaseOrderItemTP DocumentCurrency
MaterialGroup I_PurchaseOrderItemTP MaterialGroup
Plant I_PurchaseOrderItemTP Plant
ProductType I_PurchaseOrderItemTP ProductType
ProductTypeName I_PurchaseOrderItemTP ProductTypeName
GoodsReceiptIsExpected
GoodsReceiptIsNonValuated I_PurchaseOrderItemTP GoodsReceiptIsNonValuated
InvoiceIsExpected I_PurchaseOrderItemTP InvoiceIsExpected
InvoiceIsGoodsReceiptBased I_PurchaseOrderItemTP InvoiceIsGoodsReceiptBased
IsCompletelyDelivered I_PurchaseOrderItemTP IsCompletelyDelivered
IsFinallyInvoiced I_PurchaseOrderItemTP IsFinallyInvoiced
AccountAssignmentCategory
PurgSchdLnIsAddableInLimitItem
HighestMessageSeverityLevel I_PurchaseOrderItemTP HighestMessageSeverityLevel
FieldGroupTaxTaxCode
TaxJurisdiction TaxJurisdiction
PurContractForOverallLimit
PurchasingOrganization
Supplier _PurchaseOrderTP Supplier
TaxCalculationProcedure
SupplierMaterialNumber
ManufacturerPartNmbr I_PurchaseOrderItemTP ManufacturerPartNmbr
ManufacturerMaterial I_PurchaseOrderItemTP ManufacturerMaterial
CompanyCode I_PurchaseOrderItemTP CompanyCode
OrderItemQtyToBaseQtyNmrtr I_PurchaseOrderItemTP OrderItemQtyToBaseQtyNmrtr
OrderItemQtyToBaseQtyDnmntr I_PurchaseOrderItemTP OrderItemQtyToBaseQtyDnmntr
EvaldRcptSettlmtIsAllowed I_PurchaseOrderItemTP EvaldRcptSettlmtIsAllowed
ItemVolumeUnit I_PurchaseOrderItemTP ItemVolumeUnit
ItemWeightUnit I_PurchaseOrderItemTP ItemWeightUnit
MultipleAcctAssgmtDistribution I_PurchaseOrderItemTP MultipleAcctAssgmtDistribution
PartialInvoiceDistribution I_PurchaseOrderItemTP PartialInvoiceDistribution
PricingDateControl I_PurchaseOrderItemTP PricingDateControl
IsStatisticalItem I_PurchaseOrderItemTP IsStatisticalItem
IsReturnsItem I_PurchaseOrderItemTP IsReturnsItem
InternationalArticleNumber I_PurchaseOrderItemTP InternationalArticleNumber
SupplierConfirmationControlKey I_PurchaseOrderItemTP SupplierConfirmationControlKey
PriceIsToBePrinted I_PurchaseOrderItemTP PriceIsToBePrinted
EffectiveAmount I_PurchaseOrderItemTP EffectiveAmount
OrderPriceUnitToOrderUnitNmrtr I_PurchaseOrderItemTP OrderPriceUnitToOrderUnitNmrtr
OrdPriceUnitToOrderUnitDnmntr I_PurchaseOrderItemTP OrdPriceUnitToOrderUnitDnmntr
BaseUnit I_PurchaseOrderItemTP BaseUnit
RequisitionerName I_PurchaseOrderItemTP RequisitionerName
Associations_PurchaseOrderTP
_PurOrdScheduleLineTP _PurOrdScheduleLineTP
_PurOrdAcctAssignmentTP _PurOrdAcctAssignmentTP
_PurOrdPricingElementTP _PurOrdPricingElementTP
_PurOrdDeliveryAddressTP _PurOrdDeliveryAddressTP
_ProductTypeValueHelp _ProductTypeValueHelp
_MaterialGroupValueHelp _MaterialGroupValueHelp
_PurOrdActACatValHelp _PurOrdActACatValHelp
_PlantValueHelp _PlantValueHelp
_PurOrdTaxJurisdictionValHelp _PurOrdTaxJurisdictionValHelp
_TaxCode _TaxCode
_TaxJurisdiction _TaxJurisdiction
_TaxCalculationProcedure _TaxCalculationProcedure
_PurContractValHelp _PurContractValHelp
@VDM.lifecycle.status: #DEPRECATED 
@VDM.viewType: #CONSUMPTION
@AbapCatalog: { sqlViewName: 'CPURORDLIMITMTP' }
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Purchase Order Limit Item'
@AccessControl.authorizationCheck: #CHECK
/*@ObjectModel: {
    transactionalProcessingDelegated: true,
    semanticKey: ['PurchaseOrder', 'PurchaseOrderItem'],
    representativeKey: 'PurchaseOrderItem',
    createEnabled,
    updateEnabled,
    deleteEnabled
}*/

@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@Search.searchable: true

/*@UI: {
  lineItem.criticality: 'HighestMessageSeverityLevel'
}*/

/*@UI.headerInfo:{
  typeName:       'Purchase Order Limit Item',
  typeNamePlural: 'Purchase Order Limit Items',
//  imageUrl:       'PurchaseOrderURL',

  title:          {value: 'PurchaseOrderItem'},
  description:    {value: 'PurOrdItemCategoryName'}
}
*/
define view C_PurchaseOrderLimitItemTP
  as select from I_PurchaseOrderItemTP as PurchaseOrderItemTP
  -------------------------------------------------------------------------------------------
  -- COMPOSITION NODE: Purchase Order Item                                                 --
  -------------------------------------------------------------------------------------------

  -- :* association to parent node
  association [1..1] to C_PurchaseOrderTP              as _PurchaseOrderTP          on  _PurchaseOrderTP.PurchaseOrder = $projection.PurchaseOrder

  association [1..*] to C_PurOrdScheduleLineTP         as _PurOrdScheduleLineTP     on  _PurOrdScheduleLineTP.PurchaseOrder     = $projection.PurchaseOrder
                                                                                    and _PurOrdScheduleLineTP.PurchaseOrderItem = $projection.PurchaseOrderItem
  -- :* association to the Account Assignment child node
  association [1..*] to C_PurOrdAcctAssignmentTP       as _PurOrdAcctAssignmentTP   on  _PurOrdAcctAssignmentTP.PurchaseOrder     = $projection.PurchaseOrder
                                                                                    and _PurOrdAcctAssignmentTP.PurchaseOrderItem = $projection.PurchaseOrderItem
    -- :* association to the Pricing Elements child node
    association [1..*] to C_PurOrdPricingElementTP     as _PurOrdPricingElementTP   on  _PurOrdPricingElementTP.PurchaseOrder     = $projection.PurchaseOrder
                                                                                    and _PurOrdPricingElementTP.PurchaseOrderItem = $projection.PurchaseOrderItem

  -- :* association to the Delivery Address child node
  association [1..1] to C_PurOrdDeliveryAddressTP      as _PurOrdDeliveryAddressTP   on  _PurOrdDeliveryAddressTP.PurchaseOrder     = $projection.PurchaseOrder
                                                                                     and _PurOrdDeliveryAddressTP.PurchaseOrderItem = $projection.PurchaseOrderItem
  -- :0..1 association to the TaxCode
  association [0..1] to C_MM_TaxCodeValueHelp          as _TaxCode                   on  _TaxCode.TaxCode                 = $projection.TaxCode
                                                                                     and _TaxCode.TaxCalculationProcedure = $projection.TaxCalculationProcedure
  -- :0..1 association to the TaxCode
  association [0..1] to C_MM_TaxJurisdictionVH         as _TaxJurisdiction           on  _TaxJurisdiction.TaxJurisdiction              = $projection.TaxJurisdiction
                                                                                     //and _TaxJurisdiction.TaxJurisdictionCalcProcedure = ''

  association [0..1] to I_TaxCalculationProcedure      as _TaxCalculationProcedure   on  _TaxCalculationProcedure.TaxCalculationProcedure = $projection.TaxCalculationProcedure
  
  association [0..1] to C_MM_ProductTypeValueHelp      as _ProductTypeValueHelp      on  _ProductTypeValueHelp.ProductType = $projection.ProductType

  association [0..1] to C_PurOrdActACatValHelp         as _PurOrdActACatValHelp      on  _PurOrdActACatValHelp.AccountAssignmentCategory = $projection.AccountAssignmentCategory

  association [0..1] to C_MM_MaterialGroupValueHelp    as _MaterialGroupValueHelp    on  _MaterialGroupValueHelp.MaterialGroup = $projection.MaterialGroup

  association [0..1] to C_MM_PlantValueHelp            as _PlantValueHelp            on  _PlantValueHelp.Plant                  = $projection.Plant
                                                                                     and _PlantValueHelp.PurchasingOrganization = $projection.purchasingorganization                                                                              
  association [0..*] to C_PurOrdTaxJurisdictionValHelp as _PurOrdTaxJurisdictionValHelp on  _PurOrdTaxJurisdictionValHelp.TaxJurisdiction = $projection.TaxJurisdiction
                                                                                     and _PurOrdTaxJurisdictionValHelp.CompanyCode = $projection.CompanyCode                                                                              
  
  association [1..1] to C_PurchaseContractValHelp      as _PurContractValHelp        on _PurContractValHelp.PurchaseContract = $projection.PurContractForOverallLimit    
{
      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_PurchaseOrderTP'
  key PurchaseOrderItemTP.PurchaseOrder as PurchaseOrder,

      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      @ObjectModel: { readOnly: true }
      @UI: {
        lineItem: [ { position: 10, importance: #HIGH } ]
      }
  key cast (PurchaseOrderItemTP.PurchaseOrderItem as ebelp preserving type) as PurchaseOrderItem,

      @ObjectModel: { readOnly: true }
      @UI.hidden: true
//      'A' as PurchaseOrderItemCategory,

      PurchaseOrderItemTP.PurchaseOrderItemCategory,

      @UI.hidden: true
      PurchaseOrderItemTP.PurOrdItemCategoryName,
      
      @UI: {
        identification: {position: 20},
        lineItem: [ {position: 20, importance: #HIGH} ]
      }
      @Semantics: { text: true }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurchaseOrderItemTP.PurchaseOrderItemText,

      @UI: {
        identification: {position: 30},
        lineItem: [ {position: 30, importance: #HIGH} ]
      }
      //@Semantics: { unitOfMeasure: true }

      @Semantics: { amount.currencyCode: 'DocumentCurrency' }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      PurchaseOrderItemTP.ExpectedOverallLimitAmount,

      @UI: {
        identification: {position: 40},
        lineItem: [ {position: 40, importance: #HIGH} ]
      }
      //@Semantics: { unitOfMeasure: true }

      @Semantics: { amount.currencyCode: 'DocumentCurrency' }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      PurchaseOrderItemTP.OverallLimitAmount,

      @UI.hidden: true
      @UI.lineItem: [ { exclude: true } ]
      PurchaseOrderItemTP.PurchasingDocumentDeletionCode,
      
      @Consumption.hidden: true
      @ObjectModel.readOnly: true
      PurchaseOrderItemTP.PurchaseOrderItemStatus                                                             as PurchaseOrderItemStatus_H,

      @UI: {
        lineItem: [ {position: 900, importance: #HIGH} ],
        textArrangement: #TEXT_ONLY
      }
      @ObjectModel: {
        readOnly: true,
        text.element:  [ 'PurchaseOrderItemStatusName' ]
      }
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_PurchaseOrderStatusValueHelp', element : 'PurchasingDocumentStatus' } }]
      @EndUserText.label: 'Status'
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_FILTERS' 
      @ObjectModel.filter.transformedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_FILTERS'
      @ObjectModel.sort.transformedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_FILTERS'
      cast ( '' as abap.char(2))                                                                               as PurchaseOrderItemStatus,
      
      @ObjectModel: {
        readOnly: true
      }
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_FILTERS'
      @UI.hidden: true
      cast ( '' as abap.sstring(260))                                                                          as PurchaseOrderItemStatusName,
      
      @Semantics: { currencyCode: true }
      //      @ObjectModel: { foreignKey.association: '_DocumentCurrency', readOnly: true }

      @ObjectModel: { readOnly: true }
      PurchaseOrderItemTP.DocumentCurrency,

      // PerformancePeriodStartDate and PerformancePeriodEndDate; see 'Delivery' FieldGroup


      @UI: {
        identification: {position: 80}
      }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption: { valueHelp: '_MaterialGroupValueHelp' }
      @ObjectModel.foreignKey.association: '_MaterialGroupValueHelp'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurchaseOrderItemTP.MaterialGroup,

      @UI: {
        identification: {position: 70},
        lineItem: [ {position: 90, importance: #HIGH} ]
      }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption: { valueHelp: '_PlantValueHelp' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      @ObjectModel.foreignKey.association: '_PlantValueHelp'
      PurchaseOrderItemTP.Plant,
      
      @UI: {
        identification: {position: 60},
        lineItem: {position: 80, importance: #HIGH}
      }
      @Consumption: { valueHelp: '_ProductTypeValueHelp' }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION', 
                      text.element: 'ProductTypeName',
                      foreignKey.association: '_ProductTypeValueHelp' }
      PurchaseOrderItemTP.ProductType,

      PurchaseOrderItemTP.ProductTypeName,

      ----------------------------------------------------------------------------------------
      -- FieldGroup: Delivery Address                                                       --
      ----------------------------------------------------------------------------------------

      //PurchaseOrderItemTP.ManualDeliveryAddressID,

      //@UI.fieldGroup: [ { groupLabel: 'DeliveryAddressGroup', position: 10, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressName,

      //@UI.fieldGroup: [ { position: 20, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressStreetName,

      //@UI.fieldGroup: [ { position: 30, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressHouseNumber,

      //@UI.fieldGroup: [ { position: 40, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressPostalCode,

      //@UI.fieldGroup: [ { position: 50, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressCityName,

      //@UI.fieldGroup: [ { position: 60, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressRegion,

      //@UI.fieldGroup: [ { position: 70, qualifier: 'DeliveryAddress' } ]

      //PurchaseOrderItemTP.DeliveryAddressCountry,


      ----------------------------------------------------------------------------------------
      -- FieldGroup: Process Flow                                                           --
      ----------------------------------------------------------------------------------------

      @UI.fieldGroup: [ { groupLabel: 'Process Flow', position: 10, qualifier: 'ProcessFlowGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}
      PurchaseOrderItemTP.GoodsReceiptIsExpected,
      @UI.fieldGroup: [ { position: 20, qualifier: 'ProcessFlowGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}
      PurchaseOrderItemTP.GoodsReceiptIsNonValuated,
      @UI.fieldGroup: [ { position: 30, qualifier: 'ProcessFlowGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}
      PurchaseOrderItemTP.InvoiceIsExpected,
      @UI.fieldGroup: [ { position: 40, qualifier: 'ProcessFlowGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}
      PurchaseOrderItemTP.InvoiceIsGoodsReceiptBased,
      @UI.fieldGroup: [ { position: 50, qualifier: 'ProcessFlowGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}
      PurchaseOrderItemTP.IsCompletelyDelivered,
      @UI.fieldGroup: [ { position: 60, qualifier: 'ProcessFlowGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}
      PurchaseOrderItemTP.IsFinallyInvoiced,

      ----------------------------------------------------------------------------------------
      -- FieldGroup: Delivery                                                               --
      ----------------------------------------------------------------------------------------

      ////Lars: Fields had to be deleted because of changes to ScheduleLines (Single Schedule Lines -> Multi Schedule Lines)


//            @UI: {

//              identification: {position: 40},

//              lineItem: [ {position: 40, importance: #HIGH} ]

//            }

//            @UI.fieldGroup: [ { groupLabel: 'Delivery', position: 10, qualifier: 'DeliveryGroup' } ]

//            @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}

//            PurchaseOrderItemTP.PerformancePeriodStartDate,

//      

//            @UI: {

//              identification: {position: 50},

//              lineItem: [ {position: 50, importance: #HIGH} ]

//            }

//         

//            @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'}

//            PurchaseOrderItemTP.PerformancePeriodEndDate,


//      @UI: {

//        identification: {position: 60},

//        lineItem: [ {position: 60, importance: #HIGH} ]

//      }

//      @ObjectModel: { readOnly: 'true', foreignKey.association: '_FirstPurOrdScheduleLineTP' }

//      _FirstPurOrdScheduleLineTP.PerformancePeriodStartDate,

//      

//      @UI: {

//        identification: {position: 70},

//        lineItem: [ {position: 70, importance: #HIGH} ]

//      }

//      @ObjectModel: { readOnly: 'true', foreignKey.association: '_FirstPurOrdScheduleLineTP'}

//      _FirstPurOrdScheduleLineTP.PerformancePeriodEndDate,


      ----------------------------------------------------------------------------------------
      -- FieldGroup: Accounting (will be part of reuse)                                     --
      ----------------------------------------------------------------------------------------

      @UI: {
        identification: {position: 50},
        lineItem: [ {position: 70, importance: #HIGH} ],
        textArrangement: #TEXT_FIRST
      }
      @Consumption: { valueHelp: '_PurOrdActACatValHelp' }
      @ObjectModel: { readOnly:'EXTERNAL_CALCULATION', text.association: '_PurOrdActACatValHelp' }
      PurchaseOrderItemTP.AccountAssignmentCategory,

      ----------------------------------------------------------------------------------------
      -- Transient fields                                                                   --
      ----------------------------------------------------------------------------------------

      @ObjectModel: {
        readOnly: true,
        virtualElement,
        virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_TRA_EXIT'
      }
      @UI.hidden: true
      cast ('' as boolean)  as  AccountAssignmentIsAddableLmt,

      @ObjectModel: {
        readOnly: true,
        virtualElement,
        virtualElementCalculatedBy: 'ABAP:CL_MM_PUR_PO_MAINT_V2_TRA_EXIT'
      }
      @UI.hidden: true
      cast ('' as boolean)  as  PurgSchdLnIsAddableInLimitItem,
      
      @ObjectModel: {
        readOnly: true
        }
      @UI.hidden: true
      PurchaseOrderItemTP.HighestMessageSeverityLevel,
            
      ----------------------------------------------------------------------------------------
      -- FieldGroup: Tax                                                                    --
      ----------------------------------------------------------------------------------------

      @UI.fieldGroup: [ { groupLabel: 'Tax', position: 10, qualifier: 'TaxGroup' } ]
      @ObjectModel: { foreignKey.association: '_TaxCode', readOnly: 'EXTERNAL_CALCULATION' }
      TaxCode,
      @UI.fieldGroup: [ { position: 20, qualifier: 'TaxGroup' } ]
      @ObjectModel: { foreignKey.association: '_TaxJurisdiction', readOnly: 'EXTERNAL_CALCULATION'}
      @Consumption.valueHelp: '_PurOrdTaxJurisdictionValHelp'
      TaxJurisdiction,
      
      ----------------------------------------------------------------------------------------
      -- Source Of Supply                                                                   --
      ----------------------------------------------------------------------------------------
     
      @UI: {
      fieldGroup: [{ groupLabel: 'SourceOfSupply', position: 10, qualifier: 'SourceOfSupplyGroup' }],
      lineItem: [ {position: 50, importance: #HIGH} ]
      }
      @ObjectModel: { foreignKey.association: '_PurContractValHelp', readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption.valueHelp: '_PurContractValHelp'
      PurchaseOrderItemTP.PurContractForOverallLimit,
      
      ----------------------------------------------------------------------------------------
      -- Header-Fields needed for Associations                                              --
      ----------------------------------------------------------------------------------------

      @ObjectModel: { readOnly: true }
      @UI.lineItem: [ { exclude: true } ]
      @UI.hidden: true
      _PurchaseOrderTP.PurchasingOrganization,

      @ObjectModel: { readOnly: true }
      @UI.lineItem: [ { exclude: true } ]
      @UI.hidden: true
      _PurchaseOrderTP.Supplier,

      @ObjectModel: { readOnly: true, foreignKey.association: '_TaxCalculationProcedure' }
      @UI.hidden: true
      _Plant._OrganizationAddress._Country.TaxCalculationProcedure as TaxCalculationProcedure,

      ----------------------------------------------------------------------------------------
      -- Unused fields                                                                      --
      ----------------------------------------------------------------------------------------

      @Consumption.hidden: true
      PurchaseOrderItemTP.SupplierMaterialNumber,
      @Consumption.hidden: true
      PurchaseOrderItemTP.ManufacturerPartNmbr,
      @Consumption.hidden: true
      PurchaseOrderItemTP.ManufacturerMaterial,
      @UI.hidden: true
      PurchaseOrderItemTP.CompanyCode,
      @Consumption.hidden: true
      PurchaseOrderItemTP.OrderItemQtyToBaseQtyNmrtr,
      @Consumption.hidden: true
      PurchaseOrderItemTP.OrderItemQtyToBaseQtyDnmntr,
      @Consumption.hidden: true
      PurchaseOrderItemTP.EvaldRcptSettlmtIsAllowed,
      @Consumption.hidden: true
      PurchaseOrderItemTP.ItemVolumeUnit,
      @Consumption.hidden: true
      PurchaseOrderItemTP.ItemWeightUnit,
      @Consumption.hidden: true
      PurchaseOrderItemTP.MultipleAcctAssgmtDistribution,
      @Consumption.hidden: true
      PurchaseOrderItemTP.PartialInvoiceDistribution,
      @Consumption.hidden: true
      PurchaseOrderItemTP.PricingDateControl,
      @Consumption.hidden: true
      PurchaseOrderItemTP.IsStatisticalItem,
      @Consumption.hidden: true
      PurchaseOrderItemTP.IsReturnsItem,
      @Consumption.hidden: true
      PurchaseOrderItemTP.InternationalArticleNumber,
      @Consumption.hidden: true
      PurchaseOrderItemTP.SupplierConfirmationControlKey,
      @Consumption.hidden: true
      PurchaseOrderItemTP.PriceIsToBePrinted,
      @Consumption.hidden: true
      PurchaseOrderItemTP.EffectiveAmount,
      @Consumption.hidden: true
      PurchaseOrderItemTP.OrderPriceUnitToOrderUnitNmrtr,
      @Consumption.hidden: true
      PurchaseOrderItemTP.OrdPriceUnitToOrderUnitDnmntr,
      @Consumption.hidden: true
      PurchaseOrderItemTP.BaseUnit,
      @Consumption.hidden: true
      PurchaseOrderItemTP.RequisitionerName,

      ----------------------------------------------------------------------------------------
      -- Associations                                                                       --
      ----------------------------------------------------------------------------------------
 
      //@ObjectModel.association.type: [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]

      _PurchaseOrderTP,

      //@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]

      _PurOrdScheduleLineTP,

      //@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]

      _PurOrdAcctAssignmentTP,

      //@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]

      _PurOrdPricingElementTP,

      //@ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]

      _PurOrdDeliveryAddressTP,      

      _ProductTypeValueHelp,
      
      _MaterialGroupValueHelp,

      _PurOrdActACatValHelp,

      _PlantValueHelp,
      
      _PurOrdTaxJurisdictionValHelp,
      
      _TaxCode,

      _TaxJurisdiction,

      _TaxCalculationProcedure,
      
      _PurContractValHelp
      
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"C_PURCHASEORDERTP",
"I_COUNTRY",
"I_ORGANIZATIONADDRESS",
"I_PLANT",
"I_PURCHASEORDERITEMTP"
],
"ASSOCIATED":
[
"C_MM_MATERIALGROUPVALUEHELP",
"C_MM_PLANTVALUEHELP",
"C_MM_PRODUCTTYPEVALUEHELP",
"C_MM_TAXCODEVALUEHELP",
"C_MM_TAXJURISDICTIONVH",
"C_PURCHASECONTRACTVALHELP",
"C_PURCHASEORDERTP",
"C_PURORDACCTASSIGNMENTTP",
"C_PURORDACTACATVALHELP",
"C_PURORDDELIVERYADDRESSTP",
"C_PURORDPRICINGELEMENTTP",
"C_PURORDSCHEDULELINETP",
"C_PURORDTAXJURISDICTIONVALHELP",
"I_TAXCALCULATIONPROCEDURE"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/