C_PurOrdAcctAssignmentTP

DDL: C_PURORDACCTASSIGNMENTTP SQL: CPOACCTASSTP Type: view CONSUMPTION Package: ODATA_MM_PUR_PO_MAINTAIN_V2

Purchase Order Account Assignment

C_PurOrdAcctAssignmentTP is a Consumption CDS View that provides data about "Purchase Order Account Assignment" in SAP S/4HANA. It reads from 1 data source (I_PurOrdAcctAssignmentTP) and exposes 90 fields with key fields PurchaseOrderItem, PurchaseOrder, AccountAssignmentNumber. It has 16 associations to related views. Part of development package ODATA_MM_PUR_PO_MAINTAIN_V2.

Data Sources (1)

SourceAliasJoin Type
I_PurOrdAcctAssignmentTP PurOrdAcctAssignmentTP from

Associations (16)

CardinalityTargetAliasCondition
[1..1] C_PurchaseOrderTP _PurchaseOrderTP $projection.PurchaseOrder = _PurchaseOrderTP.PurchaseOrder
[1..1] C_PurchaseOrderItemTP _PurchaseOrderItemTP $projection.PurchaseOrder = _PurchaseOrderItemTP.PurchaseOrder and $projection.PurchaseOrderItem = _PurchaseOrderItemTP.PurchaseOrderItem
[0..*] P_Purordmaintaincustproj _PurOrdCustProj $projection.WBSElementInternalID = _PurOrdCustProj.WBSElementInternalID
[0..1] C_PurOrdWBSValHelp _WBSElementVH $projection.WBSElementExternalID = _WBSElementVH.WBSElementExternalID and $projection.WorkPackageName = _WBSElementVH.WorkPackageName and $projection.ProjectName = _WBSElementVH.ProjectName and $projection.CompanyCode = _WBSElementVH.CompanyCode
[0..1] I_MM_ProjectNetworkVH _ProjectNetworkVH $projection.ProjectNetwork = _ProjectNetworkVH.ProjectNetwork
[0..1] I_MM_NetworkActivityVH _NetworkActivityVH $projection.NetworkActivity = _NetworkActivityVH.NetworkActivity and $projection.ProjectNetwork = _NetworkActivityVH.ProjectNetwork
[0..1] I_MM_FixedAssetValueHelp _FixedAssetValueHelp $projection.MasterFixedAsset = _FixedAssetValueHelp.MasterFixedAsset and $projection.FixedAsset = _FixedAssetValueHelp.FixedAsset and $projection.CompanyCode = _FixedAssetValueHelp.CompanyCode
[0..1] I_MM_CostCenterValueHelp _CostCenterValueHelp $projection.CostCenter = _CostCenterValueHelp.CostCenter and $projection.ControllingArea = _CostCenterValueHelp.ControllingArea and $projection.ValidityDate <= _CostCenterValueHelp.ValidityEndDate and $projection.ValidityDate >= _CostCenterValueHelp.ValidityStartDate
[0..1] I_MM_SalesOrderItemVH _SalesOrderItemValueHelp $projection.SalesOrderItem = _SalesOrderItemValueHelp.SalesOrderItem and $projection.SalesOrder = _SalesOrderItemValueHelp.SalesOrder
[0..1] I_MM_GLAccountVH _GLAccount $projection.GLAccount = _GLAccount.GLAccount and $projection.CompanyCode = _GLAccount.CompanyCode
[0..1] C_PurOrdActACatValHelp _PurOrdActACatValHelp $projection.AccountAssignmentCategory = _PurOrdActACatValHelp.AccountAssignmentCategory
[0..1] C_MM_CompanyCodeValueHelp _CompanyCodeValueHelp $projection.CompanyCode = _CompanyCodeValueHelp.CompanyCode
[0..1] I_MasterFixedAsset _MasterFixedAsset $projection.CompanyCode = _MasterFixedAsset.CompanyCode and $projection.MasterFixedAsset = _MasterFixedAsset.MasterFixedAsset
[0..1] I_FundStdVH _FundStdVH $projection.Fund = _FundStdVH.Fund and $projection.FinancialManagementArea = _FundStdVH.FinancialManagementArea
[0..1] I_GrantStdVH _GrantStdVH $projection.GrantID = _GrantStdVH.GrantID
[0..1] I_BudgetPeriodStdVH _BudgetPeriodStdVH $projection.BudgetPeriod = _BudgetPeriodStdVH.BudgetPeriod

Annotations (20)

NameValueLevelField
VDM.viewType #CONSUMPTION view
AbapCatalog.sqlViewName CPOACCTASSTP view
EndUserText.label Purchase Order Account Assignment view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.transactionalProcessingDelegated true view
ObjectModel.representativeKey AccountAssignmentNumber view
ObjectModel.updateEnabled true view
ObjectModel.createEnabled EXTERNAL_CALCULATION view
ObjectModel.deleteEnabled EXTERNAL_CALCULATION view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
Search.searchable true view
UI.headerInfo.typeName Purchase Order Item Account Assignment view
UI.headerInfo.typeNamePlural Purchase Order Item Account Assignments view
UI.headerInfo.title.value AccountAssignmentNumber view
AccessControl.personalData.blocking #NOT_REQUIRED view

Fields (90)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrderItem I_PurOrdAcctAssignmentTP PurchaseOrderItem
KEY PurchaseOrder I_PurOrdAcctAssignmentTP PurchaseOrder
KEY AccountAssignmentNumber I_PurOrdAcctAssignmentTP AccountAssignmentNumber
AccountAssignmentCategory I_PurOrdAcctAssignmentTP AccountAssignmentCategory
CompanyCode I_PurOrdAcctAssignmentTP CompanyCode
CompanyCodeName _CompanyCodeValueHelp CompanyCodeName
CostCenter I_PurOrdAcctAssignmentTP CostCenter
MasterFixedAsset I_PurOrdAcctAssignmentTP MasterFixedAsset
MasterFixedAssetDescription _MasterFixedAsset MasterFixedAssetDescription Asset Description
FixedAsset I_PurOrdAcctAssignmentTP FixedAsset
FixedAssetDescription _FixedAssetValueHelp FixedAssetDescription Subnumber Description
ProjectNetwork I_PurOrdAcctAssignmentTP ProjectNetwork
ProjectNetworkDescription _ProjectNetworkVH ProjectNetworkDescription
NetworkActivity I_PurOrdAcctAssignmentTP NetworkActivity
MultipleAcctAssgmtDistrPercent I_PurOrdAcctAssignmentTP MultipleAcctAssgmtDistrPercent
IsDeleted I_PurOrdAcctAssignmentTP IsDeleted
GLAccount I_PurOrdAcctAssignmentTP GLAccount
GLAccountLongName _GLAccount GLAccountLongName
BusinessArea I_PurOrdAcctAssignmentTP BusinessArea
SalesOrder I_PurOrdAcctAssignmentTP SalesOrder
SalesOrderItem I_PurOrdAcctAssignmentTP SalesOrderItem
SalesOrderItemText _SalesOrderItemValueHelp SalesOrderItemText
SalesOrderScheduleLine I_PurOrdAcctAssignmentTP SalesOrderScheduleLine
OrderID I_PurOrdAcctAssignmentTP OrderID
OrderOperation I_PurOrdAcctAssignmentTP OrderOperation
UnloadingPointName I_PurOrdAcctAssignmentTP UnloadingPointName
ControllingArea I_PurOrdAcctAssignmentTP ControllingArea
CostObject I_PurOrdAcctAssignmentTP CostObject
ProfitabilitySegment I_PurOrdAcctAssignmentTP ProfitabilitySegment
ProfitCenter I_PurOrdAcctAssignmentTP ProfitCenter
WBSElementExternalID I_PurOrdAcctAssignmentTP WBSElementExternalID
WBSElementInternalID I_PurOrdAcctAssignmentTP WBSElementInternalID
ProjectNetworkInternalID I_PurOrdAcctAssignmentTP ProjectNetworkInternalID
CommitmentItem I_PurOrdAcctAssignmentTP CommitmentItem
FundsCenter I_PurOrdAcctAssignmentTP FundsCenter
Fund I_PurOrdAcctAssignmentTP Fund
FunctionalArea I_PurOrdAcctAssignmentTP FunctionalArea
FunctionalAreaName
FundedProgram I_PurOrdAcctAssignmentTP FundedProgram
LastChangedDate I_PurOrdAcctAssignmentTP LastChangedDate
GoodsRecipientName I_PurOrdAcctAssignmentTP GoodsRecipientName
IsFinallyInvoiced I_PurOrdAcctAssignmentTP IsFinallyInvoiced
RealEstateObject I_PurOrdAcctAssignmentTP RealEstateObject
NetworkActivityInternalID I_PurOrdAcctAssignmentTP NetworkActivityInternalID
PartnerAccountNumber I_PurOrdAcctAssignmentTP PartnerAccountNumber
JointVentureRecoveryCode I_PurOrdAcctAssignmentTP JointVentureRecoveryCode
SettlementReferenceDate I_PurOrdAcctAssignmentTP SettlementReferenceDate
OrderInternalID I_PurOrdAcctAssignmentTP OrderInternalID
OrderIntBillOfOperationsItem I_PurOrdAcctAssignmentTP OrderIntBillOfOperationsItem
TaxCode I_PurOrdAcctAssignmentTP TaxCode
TaxJurisdiction I_PurOrdAcctAssignmentTP TaxJurisdiction
CostCtrActivityType I_PurOrdAcctAssignmentTP CostCtrActivityType
BusinessProcess I_PurOrdAcctAssignmentTP BusinessProcess
GrantID I_PurOrdAcctAssignmentTP GrantID
BudgetPeriod I_PurOrdAcctAssignmentTP BudgetPeriod
EarmarkedFundsDocument I_PurOrdAcctAssignmentTP EarmarkedFundsDocument
EarmarkedFundsDocumentItem I_PurOrdAcctAssignmentTP EarmarkedFundsDocumentItem
FinancialManagementArea I_PurOrdAcctAssignmentTP FinancialManagementArea
ServiceDocumentType I_PurOrdAcctAssignmentTP ServiceDocumentType
ServiceDocument I_PurOrdAcctAssignmentTP ServiceDocument
ServiceDocumentItem I_PurOrdAcctAssignmentTP ServiceDocumentItem
ValidityDate I_PurOrdAcctAssignmentTP ValidityDate
ChartOfAccounts I_PurOrdAcctAssignmentTP ChartOfAccounts
HighestMessageSeverityLevel I_PurOrdAcctAssignmentTP HighestMessageSeverityLevel
ProjectName _PurOrdCustProj CustomerProjectName Project Name
WorkPackageName _PurOrdCustProj CustProjWorkPackageName Work Package Name
FundName _FundStdVH FundName
GrantName _GrantStdVH GrantName Grant Description
BudgetPeriodName _BudgetPeriodStdVH BudgetPeriodName
_PurchaseOrderTP _PurchaseOrderTP
_PurchaseOrderItemTP _PurchaseOrderItemTP
_WBSElementVH _WBSElementVH
_ProjectNetworkVH _ProjectNetworkVH
_NetworkActivityVH _NetworkActivityVH
_FixedAssetValueHelp _FixedAssetValueHelp
_MasterFixedAsset _MasterFixedAsset
_CostCenterValueHelp _CostCenterValueHelp
_SalesOrderItemValueHelp _SalesOrderItemValueHelp
_GLAccount _GLAccount
_PurOrdActACatValHelp _PurOrdActACatValHelp
_CompanyCodeValueHelp _CompanyCodeValueHelp
_FundStdVH _FundStdVH
_BusinessArea I_PurOrdAcctAssignmentTP _BusinessArea
_ProfitCenterText I_PurOrdAcctAssignmentTP _ProfitCenterText
_CostCenterText I_PurOrdAcctAssignmentTP _CostCenterText
_FunctionalArea I_PurOrdAcctAssignmentTP _FunctionalArea
_FunctionalAreaText I_PurOrdAcctAssignmentTP _FunctionalAreaText
_BusinessProcess I_PurOrdAcctAssignmentTP _BusinessProcess
_TaxCode I_PurOrdAcctAssignmentTP _TaxCode
_TaxJurisdiction I_PurOrdAcctAssignmentTP _TaxJurisdiction
@VDM.viewType: #CONSUMPTION
@AbapCatalog.sqlViewName: 'CPOACCTASSTP'
@EndUserText.label: 'Purchase Order Account Assignment'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@Metadata.ignorePropagatedAnnotations: true

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

@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MIXED
 
@Search.searchable: true

@UI.headerInfo:{
  typeName:       'Purchase Order Item Account Assignment',
  typeNamePlural: 'Purchase Order Item Account Assignments',

  title:          {value: 'AccountAssignmentNumber'} 
}

@AccessControl.personalData.blocking: #NOT_REQUIRED

define view C_PurOrdAcctAssignmentTP
  as select from I_PurOrdAcctAssignmentTP           as PurOrdAcctAssignmentTP
  association [1..1] to C_PurchaseOrderTP           as _PurchaseOrderTP           on  $projection.PurchaseOrder = _PurchaseOrderTP.PurchaseOrder 
  
  association [1..1] to C_PurchaseOrderItemTP       as _PurchaseOrderItemTP       on  $projection.PurchaseOrder     = _PurchaseOrderItemTP.PurchaseOrder 
                                                                                  and $projection.PurchaseOrderItem = _PurchaseOrderItemTP.PurchaseOrderItem 

  association [0..*] to P_Purordmaintaincustproj    as _PurOrdCustProj            on  $projection.WBSElementInternalID = _PurOrdCustProj.WBSElementInternalID
  
  association [0..1] to C_PurOrdWBSValHelp          as _WBSElementVH              on  $projection.WBSElementExternalID = _WBSElementVH.WBSElementExternalID 
                                                                                  and $projection.WorkPackageName      = _WBSElementVH.WorkPackageName 
                                                                                  and $projection.ProjectName          = _WBSElementVH.ProjectName
                                                                                  and $projection.CompanyCode          = _WBSElementVH.CompanyCode 

  association [0..1] to I_MM_ProjectNetworkVH       as _ProjectNetworkVH          on $projection.ProjectNetwork  = _ProjectNetworkVH.ProjectNetwork

  association [0..1] to I_MM_NetworkActivityVH      as _NetworkActivityVH         on  $projection.NetworkActivity = _NetworkActivityVH.NetworkActivity
                                                                                  and $projection.ProjectNetwork  = _NetworkActivityVH.ProjectNetwork

  association [0..1] to I_MM_FixedAssetValueHelp    as _FixedAssetValueHelp       on  $projection.MasterFixedAsset = _FixedAssetValueHelp.MasterFixedAsset
                                                                                  and $projection.FixedAsset       = _FixedAssetValueHelp.FixedAsset
                                                                                  and $projection.CompanyCode      =  _FixedAssetValueHelp.CompanyCode

  association [0..1] to I_MM_CostCenterValueHelp    as _CostCenterValueHelp       on  $projection.CostCenter       = _CostCenterValueHelp.CostCenter
                                                                                  and $projection.ControllingArea  = _CostCenterValueHelp.ControllingArea
                                                                                  and $projection.ValidityDate    <= _CostCenterValueHelp.ValidityEndDate
                                                                                  and $projection.ValidityDate    >= _CostCenterValueHelp.ValidityStartDate

  association [0..1] to I_MM_SalesOrderItemVH       as _SalesOrderItemValueHelp   on  $projection.SalesOrderItem = _SalesOrderItemValueHelp.SalesOrderItem
                                                                                  and $projection.SalesOrder     = _SalesOrderItemValueHelp.SalesOrder

  association [0..1] to I_MM_GLAccountVH            as _GLAccount                 on  $projection.GLAccount   = _GLAccount.GLAccount
                                                                                  and $projection.CompanyCode = _GLAccount.CompanyCode
  
  association [0..1] to C_PurOrdActACatValHelp      as _PurOrdActACatValHelp      on  $projection.AccountAssignmentCategory = _PurOrdActACatValHelp.AccountAssignmentCategory 
  
  association [0..1] to C_MM_CompanyCodeValueHelp   as _CompanyCodeValueHelp      on  $projection.CompanyCode = _CompanyCodeValueHelp.CompanyCode  

  association [0..1] to I_MasterFixedAsset          as _MasterFixedAsset          on  $projection.CompanyCode      = _MasterFixedAsset.CompanyCode
                                                                                  and $projection.MasterFixedAsset = _MasterFixedAsset.MasterFixedAsset
                                                         
  association [0..1] to I_FundStdVH                 as _FundStdVH                 on  $projection.Fund                      = _FundStdVH.Fund
                                                                                  and $projection.FinancialManagementArea   = _FundStdVH.FinancialManagementArea
                                                                                  
                                                                                  
  association [0..1] to I_GrantStdVH                as _GrantStdVH                on  $projection.GrantID      = _GrantStdVH.GrantID
 
  association [0..1] to I_BudgetPeriodStdVH         as _BudgetPeriodStdVH         on  $projection.BudgetPeriod = _BudgetPeriodStdVH.BudgetPeriod

{

      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_PurchaseOrderItemTP' 
  key PurOrdAcctAssignmentTP.PurchaseOrderItem,
  
      @UI.hidden: true
      @ObjectModel.foreignKey.association: '_PurchaseOrderTP'
  key PurOrdAcctAssignmentTP.PurchaseOrder,
  
      @UI.identification.position: 10
      @UI: { lineItem: { position: 10, importance: #HIGH }}
      @ObjectModel.readOnly: true
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      //TODO cast to DZEKKN_LL

  key PurOrdAcctAssignmentTP.AccountAssignmentNumber,
  
      @UI: {
        textArrangement: #TEXT_ONLY
      }
      @ObjectModel: { readOnly:true, text.association:'_PurOrdActACatValHelp' }
      PurOrdAcctAssignmentTP.AccountAssignmentCategory,
      
      @Consumption.valueHelp: '_CompanyCodeValueHelp'
      @ObjectModel: { readOnly: true, foreignKey.association: '_CompanyCodeValueHelp' }
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'CompanyCodeName' 
      PurOrdAcctAssignmentTP.CompanyCode,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      _CompanyCodeValueHelp.CompanyCodeName,
      
      @UI:{ identification: {position: 20, importance: #HIGH},
            lineItem: { position: 20, importance: #HIGH } }
      @Consumption.valueHelp: '_CostCenterValueHelp'
      @ObjectModel.foreignKey.association: '_CostCenterValueHelp'
      @ObjectModel.text.association: '_CostCenterText'
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurOrdAcctAssignmentTP.CostCenter,
      
      @UI.fieldGroup: [ { groupLabel: 'AssetManagement', position: 120, qualifier: 'AssetManagementGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption.valueHelp: '_FixedAssetValueHelp'
      @ObjectModel.foreignKey.association: '_MasterFixedAsset'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'MasterFixedAssetDescription' 
      PurOrdAcctAssignmentTP.MasterFixedAsset,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      @EndUserText.label: 'Asset Description'
      _MasterFixedAsset.MasterFixedAssetDescription,
      
      @UI.fieldGroup: [ { groupLabel: 'AssetManagement', position: 130, qualifier: 'AssetManagementGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption.valueHelp: '_FixedAssetValueHelp'
      @ObjectModel.foreignKey.association: '_FixedAssetValueHelp'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'FixedAssetDescription' 
      PurOrdAcctAssignmentTP.FixedAsset,

      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      @EndUserText.label: 'Subnumber Description'
      _FixedAssetValueHelp.FixedAssetDescription,
      
      @UI.fieldGroup: [ { groupLabel: 'Network', position: 100, qualifier: 'NetworkGroup' } ]
      @ObjectModel.foreignKey.association: '_ProjectNetworkVH'
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption.valueHelp: '_NetworkActivityVH'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'ProjectNetworkDescription' 
      PurOrdAcctAssignmentTP.ProjectNetwork,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      _ProjectNetworkVH.ProjectNetworkDescription,
      
      @UI.fieldGroup: [ { groupLabel: 'Network', position: 110, qualifier: 'NetworkGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption.valueHelp: '_NetworkActivityVH'
      PurOrdAcctAssignmentTP.NetworkActivity,
      
      @UI:{ identification: {position: 90, importance: #HIGH},
            lineItem: { position: 90, importance: #HIGH } }
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      PurOrdAcctAssignmentTP.MultipleAcctAssgmtDistrPercent,
      
//      @Consumption.hidden: true

//      @Semantics.currencyCode: true

//      PurOrdAcctAssignmentTP.DocumentCurrency,

// 

//      @Consumption.hidden: true

//      @Semantics.amount.currencyCode: 'DocumentCurrency'

//      PurOrdAcctAssignmentTP.PurgDocNetAmount,

      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.IsDeleted,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI:{ identification: {position: 80, importance: #HIGH}, lineItem: { position: 80, importance: #HIGH } }
      @ObjectModel.foreignKey.association: '_GLAccount'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      @Consumption.valueHelpDefinition: [{ entity: { name: 'I_MM_GLAccountVH', element: 'GLAccount' }, additionalBinding: [{ localElement: 'CompanyCode', element: 'CompanyCode'}] }] 
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'GLAccountLongName' 
      PurOrdAcctAssignmentTP.GLAccount,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      _GLAccount.GLAccountLongName,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.BusinessArea,
      
      @UI.fieldGroup: [ { groupLabel: 'SDInfo', position: 40, qualifier: 'SDInfoGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_MM_SalesOrderValueHelp', element : 'SalesOrder' }} ]
      PurOrdAcctAssignmentTP.SalesOrder,
      
      @UI.fieldGroup: [ { groupLabel: 'SDInfo', position: 50, qualifier: 'SDInfoGroup' } ]
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @ObjectModel.foreignKey.association: '_SalesOrderItemValueHelp'
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'SalesOrderItemText' 
      PurOrdAcctAssignmentTP.SalesOrderItem,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      _SalesOrderItemValueHelp.SalesOrderItemText,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.SalesOrderScheduleLine, 
         
      @UI:{ identification: {position: 25} }      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_MM_LogisticsOrderVH', element : 'OrderID' }} ]
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurOrdAcctAssignmentTP.OrderID,    
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.OrderOperation,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 180
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurOrdAcctAssignmentTP.UnloadingPointName,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 190
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_MM_ControllingAreaVH', element : 'ControllingArea' }} ]
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurOrdAcctAssignmentTP.ControllingArea,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.CostObject,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.ProfitabilitySegment,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 110
      @Consumption.valueHelpDefinition: [{ entity: { name : 'C_MM_ProfitCenterValHelp', element : 'ProfitCenter' }} ]
      PurOrdAcctAssignmentTP.ProfitCenter,
      

      @UI.fieldGroup: [ { groupLabel: 'Project', position: 10, qualifier: 'ProjectGroup' } ]
      @Consumption.valueHelpDefinition:
      [
      { 
         entity: { name : 'I_MM_WBSElementValueHelp', element : 'WBSElementExternalID' }
        }
        ,
        { 
              qualifier: 'EngagementProject',
              entity: { name : 'C_MM_WBSElmntEngmntProjVH', element : 'WBSElementExternalID'} }

      ]
//      @Consumption.valueHelpDefinition: [{ entity: { name : 'C_PurOrdWBSValHelp', element : 'WBSElementExternalID' }, additionalBinding: [{ element: 'CompanyCode', localElement: 'CompanyCode' }] }]

      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION'  }
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      PurOrdAcctAssignmentTP.WBSElementExternalID,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.WBSElementInternalID,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.ProjectNetworkInternalID,
      @Feature: 'BF:PSMOP_BUDGET_ACCOUNTING_CONTRO'
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 240
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_COMMITMENTITEMSTDVH', element: 'CommitmentItem' } }]
      PurOrdAcctAssignmentTP.CommitmentItem,
      @Feature: 'BF:PSMOP_BUDGET_ACCOUNTING_CONTRO'
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 210
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_FUNDSCENTERSTDVH', element: 'FundsCenter' } }] 
      PurOrdAcctAssignmentTP.FundsCenter,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 200
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_FUNDSTDVH', element: 'Fund' }, additionalBinding: [{ element: 'FinancialManagementArea', localElement: 'FinancialManagementArea' }] }]
      @ObjectModel.text.element: 'FundName'
      PurOrdAcctAssignmentTP.Fund,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 100
      @ObjectModel.foreignKey.association: '_FunctionalArea'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_FNDSMGMTFUNCNLAREASTDVH', element: 'FunctionalArea' } }]
      // UX 3.0 Improvement 

      @ObjectModel.text.element: 'FunctionalAreaName' 
      PurOrdAcctAssignmentTP.FunctionalArea,

      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      _FunctionalArea._Text[1: Language = $session.system_language].FunctionalAreaName,
      
      @Feature: 'BF:PSMOP_BUDGET_ACCOUNTING_CONTRO'
      @ObjectModel.readOnly: true
      PurOrdAcctAssignmentTP.FundedProgram,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.LastChangedDate,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 280
      PurOrdAcctAssignmentTP.GoodsRecipientName,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.IsFinallyInvoiced,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.RealEstateObject,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.NetworkActivityInternalID,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.PartnerAccountNumber,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.JointVentureRecoveryCode,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.SettlementReferenceDate,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.OrderInternalID,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.OrderIntBillOfOperationsItem,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.TaxCode,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.TaxJurisdiction,
      
//      @Consumption.hidden: true

//      @Semantics.amount.currencyCode: 'DocumentCurrency'

//      PurOrdAcctAssignmentTP.NonDeductibleInputTaxAmount,

      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.CostCtrActivityType,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 270
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_BusinessAreaStdVH', element: 'BusinessProcess' } }]
      PurOrdAcctAssignmentTP.BusinessProcess,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 250
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_GRANTSTDVH', element: 'GrantID' } }]
      @ObjectModel.text.element:'GrantName'
      PurOrdAcctAssignmentTP.GrantID,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 260
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_BUDGETPERIODSTDVH', element: 'BudgetPeriod' } }]
      @ObjectModel.text.element: 'BudgetPeriodName'
      PurOrdAcctAssignmentTP.BudgetPeriod,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 220
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_EmrkdFndsDocumentItemStdVH', element: 'EarmarkedFundsDocument' } }] 
      PurOrdAcctAssignmentTP.EarmarkedFundsDocument,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.identification.position: 230
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_EmrkdFndsDocumentItemStdVH', element: 'EarmarkedFundsDocumentItem' } }] 
      PurOrdAcctAssignmentTP.EarmarkedFundsDocumentItem,
      
      @UI.hidden: true
      PurOrdAcctAssignmentTP.FinancialManagementArea,

      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.fieldGroup: [ { groupLabel: 'ServiceOrder', position: 300, qualifier: 'ServiceOrderGroup' } ]
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_AcctgServiceDocumentTypeVH', element: 'ServiceDocumentType' } }] 
      PurOrdAcctAssignmentTP.ServiceDocumentType,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.fieldGroup: [ { groupLabel: 'ServiceOrder', position: 310, qualifier: 'ServiceOrderGroup' } ]
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_AcctgServiceDocumentVH', element: 'ServiceDocument' } }] 
      PurOrdAcctAssignmentTP.ServiceDocument,
      
      @ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
      @UI.fieldGroup: [ { groupLabel: 'ServiceOrder', position: 320, qualifier: 'ServiceOrderGroup' } ]
      @Consumption.valueHelpDefinition: [{ entity: { name : 'I_AcctgServiceDocumentItemVH', element: 'ServiceDocumentItem' } }] 
      PurOrdAcctAssignmentTP.ServiceDocumentItem,
            
      @UI.hidden: true
      PurOrdAcctAssignmentTP.ValidityDate,
      
      @Consumption.hidden: true
      PurOrdAcctAssignmentTP.ChartOfAccounts,
      
      @ObjectModel: { readOnly: true }
      @UI.hidden: true
      PurOrdAcctAssignmentTP.HighestMessageSeverityLevel,
      
      @UI.fieldGroup: [ { groupLabel: 'Project', position: 20, qualifier: 'ProjectGroup' } ]
      @ObjectModel: { readOnly: true }
      @EndUserText.label: 'Project Name'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      _PurOrdCustProj.CustomerProjectName     as ProjectName,
      
      @UI.fieldGroup: [ { groupLabel: 'Project', position: 30, qualifier: 'ProjectGroup' } ]
      @ObjectModel: { readOnly: true }
      @EndUserText.label: 'Work Package Name'
      @Search: { defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.8 }
      _PurOrdCustProj.CustProjWorkPackageName as WorkPackageName,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      _FundStdVH.FundName,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      //@UI.hidden: true

      @EndUserText.label: 'Grant Description'
      _GrantStdVH.GrantName,
      
      // UX 3.0 Improvement

      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Semantics.text: true
      //@UI.hidden: true

      _BudgetPeriodStdVH.BudgetPeriodName,
    
      @UI: {
        identification: {position: 50},
        textArrangement: #TEXT_ONLY
      }
      @ObjectModel.association.type: #TO_COMPOSITION_ROOT
      _PurchaseOrderTP,
      
      @ObjectModel.association.type: #TO_COMPOSITION_PARENT
      _PurchaseOrderItemTP,
      
      _WBSElementVH,

      _ProjectNetworkVH,

      _NetworkActivityVH,

      _FixedAssetValueHelp,
      
      _MasterFixedAsset,
      
      _CostCenterValueHelp,

      _SalesOrderItemValueHelp,

      _GLAccount, 
      
      _PurOrdActACatValHelp,
      
      _CompanyCodeValueHelp,
      
      _FundStdVH,
           
      PurOrdAcctAssignmentTP._BusinessArea,

      PurOrdAcctAssignmentTP._ProfitCenterText,

      PurOrdAcctAssignmentTP._CostCenterText,

      PurOrdAcctAssignmentTP._FunctionalArea,

      PurOrdAcctAssignmentTP._FunctionalAreaText,

      PurOrdAcctAssignmentTP._BusinessProcess,

      PurOrdAcctAssignmentTP._TaxCode,

      PurOrdAcctAssignmentTP._TaxJurisdiction
            
}