@AbapCatalog.sqlViewName: 'CSTTLMNTACTWBS'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Actual Settlement WBS Element'
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #MIXED
@ClientHandling.type: #INHERITED
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #CONSUMPTION
@Search.searchable: true
//@Metadata.ignorePropagatedAnnotations: true
@UI.headerInfo: {
typeName: 'WBS Element'
,
typeNamePlural: 'WBS Elements'
,
title: { value: 'WBSElementExternalID' }
,
description: { value: 'WBSDescription' }
}
@UI.presentationVariant: {
text: 'WBS Element',
qualifier: 'VAR_AA'
}
define view C_RunSettlmtActualWBSElement
as select from I_WBSElementBasicData as _WBSElementBasicData
left outer join P_CtrlgSettlmtLastDoc as _CtrlgSettlmtLastDoc on _CtrlgSettlmtLastDoc.ControllingObject = _WBSElementBasicData.WBSElementObject
// association [1..*] to C_SettlementActualSettledValue as _SettlementActualSettledValue on _SettlementActualSettledValue.WBSElementInternalID = $projection.WBSElementInternalID
association [1..*] to C_WBSElementActualSettledValue as _SettlementActualSettledValue on _SettlementActualSettledValue.WBSElementInternalID = $projection.WBSElementInternalID
association [1..*] to C_WBSElmntActlSetldValPubSec as _WBSElmntActlSetldValPubSec on _WBSElmntActlSetldValPubSec.WBSElementInternalID = $projection.WBSElementInternalID
association [1..*] to C_CtrlgObjectSettlementRule as _ControllingSettlementRule on _ControllingSettlementRule.ControllingObject = $projection.WBSElementObject
association [0..1] to I_CtrlgObjectSettlementRule as _CtrlgObjectSettlementRule on _CtrlgObjectSettlementRule.ControllingObject = $projection.WBSElementObject
association [0..*] to C_CtrlgObjSettlmtHistPerLedger as _CtrlgSettlmtHistoryPerLedger on _CtrlgSettlmtHistoryPerLedger.ControllingObject = $projection.WBSElementObject
{
@UI.facet: [
{
purpose: #HEADER,
type: #FIELDGROUP_REFERENCE,
position: 10,
targetQualifier: 'HeaderData',
hidden: false
},
{
purpose: #HEADER,
type: #FIELDGROUP_REFERENCE,
position: 20,
targetQualifier: 'HeaderData1',
hidden: false
},
{
purpose: #STANDARD,
type: #LINEITEM_REFERENCE,
position: 20,
id: 'SettledValues',
label: 'Previous Settlements',
targetElement: '_SettlementActualSettledValue'
},
{
purpose: #STANDARD,
type: #LINEITEM_REFERENCE,
position: 21,
id: 'SettledValuesPSM',
label: 'Previous Settlements',
targetElement: '_WBSElmntActlSetldValPubSec'
},
{
purpose: #STANDARD,
type: #LINEITEM_REFERENCE,
position: 10,
id: 'SettlementRules',
label: 'Settlement Rules',
targetElement: '_ControllingSettlementRule'
},
{
purpose: #STANDARD,
type: #LINEITEM_REFERENCE,
position: 30,
id: 'SettlementHistoryPerLedger',
label: 'Settlement History per Ledger',
targetElement: '_CtrlgSettlmtHistoryPerLedger'
}
]
//------------------------------------------------------------------
// @Consumption.semanticObject: 'GLAccount'
// @UI.lineItem: [
// {
// label: 'Display Line Items',
// type: #FOR_INTENT_BASED_NAVIGATION,
// semanticObjectAction: 'displayCOLineItemReportingView'
// },
// {
// label: 'Run',
// type: #FOR_ACTION,
// dataAction: 'BOPF:RUN_SETTLEMENT'
// }
// ]
@UI.hidden: true
key WBSElementInternalID,
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.9}
@UI.fieldGroup: [{ qualifier: 'HeaderInfo', position: 10 }]
@UI.textArrangement: #TEXT_SEPARATE
@Consumption.semanticObject: 'WBSElement'
@UI.lineItem: [{ position: 10 , importance: #MEDIUM }]
WBSElementExternalID,
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.7}
@UI.lineItem: { position: 20 }
@UI.fieldGroup: [{ qualifier: 'HeaderInfo', position: 20 }]
WBSDescription,
@UI.hidden: true
cast( _WBSElementBasicData.ProjectInternalID as ps_s4_proj_pspnr preserving type ) as ProjectInternalID,
@Search: {defaultSearchElement: true, ranking: #HIGH, fuzzinessThreshold: 0.9}
@UI.lineItem: { position: 30 }
@Consumption.semanticObject: 'Project'
@ObjectModel.text.element: 'ProjectDescription'
@UI.textArrangement: #TEXT_LAST
cast (_Project.ProjectExternalID as cats_cpr_extid ) as ProjectExternalID,
_Project.ProjectDescription,
@Search: {defaultSearchElement: true, ranking: #MEDIUM, fuzzinessThreshold: 0.9}
@UI.lineItem: { position: 40 }
@Consumption.semanticObject: 'CompanyCode'
@ObjectModel.text.association: '_CompanyCode'
@ObjectModel.text.control: #ASSOCIATED_TEXT_UI_HIDDEN
@UI.textArrangement: #TEXT_LAST
CompanyCode,
@UI.hidden: true
CostCenter,
@UI.hidden: true
ProfitCenter,
@UI.hidden: true
_WBSElementBasicData.ControllingArea,
@UI.hidden: true
WBSElementObject,
@UI.hidden: true
_CtrlgObjectSettlementRule.SettlmtWithFreeDefinedCurrency,
@UI.hidden: true
_CtrlgObjectSettlementRule.CreatedByUser,
@UI.fieldGroup: [{ qualifier: 'HeaderData', position: 10 }]
_CtrlgSettlmtLastDoc.CreationDate,
_CtrlgSettlmtLastDoc.ControllingSettlementDocument,
// @UI.fieldGroup: [{ qualifier: 'HeaderData1', position: 20 }]
// _CtrlgSettlmtLastDoc.IsReversed,
@ObjectModel.filter.enabled: false
_SettlementActualSettledValue,
@ObjectModel.filter.enabled: false
_WBSElmntActlSetldValPubSec,
_ControllingSettlementRule,
_CompanyCode,
_CtrlgSettlmtHistoryPerLedger
}