@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' }
PurOrdAcctAssignmentTP.CompanyCode,
@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 }
PurOrdAcctAssignmentTP.MasterFixedAsset,
@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 }
PurOrdAcctAssignmentTP.FixedAsset,
@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 }
PurOrdAcctAssignmentTP.ProjectNetwork,
@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'}] }]
PurOrdAcctAssignmentTP.GLAccount,
@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'
PurOrdAcctAssignmentTP.SalesOrderItem,
@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,
@ObjectModel: { readOnly: 'EXTERNAL_CALCULATION' }
@UI.identification.position: 240
@Consumption.valueHelpDefinition: [{ entity: { name : 'I_COMMITMENTITEMSTDVH', element: 'CommitmentItem' } }]
PurOrdAcctAssignmentTP.CommitmentItem,
@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' } }]
PurOrdAcctAssignmentTP.FunctionalArea,
@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,
@ObjectModel.readOnly: true
@UI.hidden: true
_FundStdVH.FundName,
@ObjectModel.readOnly: true
@UI.hidden: true
_GrantStdVH.GrantName,
@ObjectModel.readOnly: 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
}