@VDM.viewType: #CONSUMPTION
@AbapCatalog.sqlViewName: 'CBDOCITM4OBJP'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XXL
@UI.headerInfo: {
typeName: 'Budget Entry Document',
typeNamePlural: 'Budget Entry Documents'
}
@EndUserText.label: 'Auxiliary Cosumption view for Object Page'
define view C_BudDocItemForObjP
as select from I_BudgetEntryDocumentItem
{
@EndUserText.label: 'Financial Management Area'
//@Consumption.hidden: true
key FinancialManagementArea,
@EndUserText.label: 'Document Year'
key BudgetDocumentYear,
@Consumption.semanticObject:'BudgetEntryDocument'
@ObjectModel.semanticKey:[ 'FinancialManagementArea', 'BudgetDocumentYear', 'BudgetEntryDocument']
@ObjectModel.semanticAction:'display'
@EndUserText.label: 'Budget Entry Document'
key BudgetEntryDocument,
//@Consumption.hidden: true
@EndUserText.label: 'Document Item'
key BudgetEntryDocumentItem,
//FMAA
@EndUserText.label: 'Fund'
BudgetedFund,
@EndUserText.label: 'Fund Name'
_Fund._Text[1:Language = $session.system_language].FundName,
@EndUserText.label: 'Budget Period'
BudgetedBudgetPeriod,
@EndUserText.label: 'Budget Period Name'
_BudgetPeriod._Text[1:Language = $session.system_language].BudgetPeriodName,
@EndUserText.label: 'Funds Center'
BudgetedFundsCenter,
@EndUserText.label: 'Funds Center Name'
_FundsCenter._Text[1:Language = $session.system_language].FundsCenterName,
@EndUserText.label: 'Commitment Item'
BudgetedCommitmentItem,
@EndUserText.label: 'Commitment Item Name'
_CommitmentItem._Text[1:Language = $session.system_language].CommitmentItemName,
@EndUserText.label: 'Functional Area'
BudgetedFunctionalArea,
@EndUserText.label: 'Functional Area Name'
_FunctionalArea._Text[1:Language = $session.system_language].FunctionalAreaName,
@EndUserText.label: 'Grant'
BudgetedGrantID,
@EndUserText.label: 'Grant Name'
_Grant._Text[1:Language = $session.system_language].GrantName,
@EndUserText.label: 'Funded Program'
BudgetedFundedProgram,
@EndUserText.label: 'Funded Program Name'
_FundedProgram._Text[1:Language = $session.system_language].FundedProgramName,
FinMgmtAreaFiscalYear,
//Process
@EndUserText.label: 'Process'
I_BudgetEntryDocumentItem._BudgetEntryDocument.BudgetingProcess,
@EndUserText.label: 'Process Name'
I_BudgetEntryDocumentItem._BudgetEntryDocument._BudgetingProcess._Text[1:Language=$session.system_language].BudgetingProcessName,
@Consumption.hidden: true
cast( concat_with_space(I_BudgetEntryDocumentItem._BudgetEntryDocument.BudgetingProcess, I_BudgetEntryDocumentItem._BudgetEntryDocument._BudgetingProcess._Text[1:Language=$session.system_language].BudgetingProcessName, 1) as fmis_bdgtprocessextendedname ) as BudgetingProcessExtendedName,
//Version
@EndUserText.label: 'Version'
I_BudgetEntryDocumentItem.BudgetVersion,
@EndUserText.label: 'Version Name'
I_BudgetEntryDocumentItem._BudgetVersion._Text[1:Language=$session.system_language].ControllingVersionText as BudgetVersionName,
@Consumption.hidden: true
cast( concat_with_space(I_BudgetEntryDocumentItem.BudgetVersion, _BudgetVersion._Text[1:Language=$session.system_language].ControllingVersionText, 1) as fmis_budgetversionextendedname ) as BudgetVersionExtendedName,
//Document Type
@Consumption.hidden: true
I_BudgetEntryDocumentItem._BudgetEntryDocument.BudgetEntryDocumentType,
@EndUserText.label: 'Document Type'
I_BudgetEntryDocumentItem._BudgetEntryDocument._BudgetEntryDocumentType._Text[1:Language=$session.system_language].BudgetEntryDocumentTypeName,
//Value type
@EndUserText.label: 'Budget Value Type'
I_BudgetEntryDocumentItem.BudgetValueType,
@EndUserText.label: 'Budget Value Type Name'
I_BudgetEntryDocumentItem._BudgetValueType._Text[1:Language=$session.system_language].BudgetValueTypeName,
//Amounts
@Consumption.hidden: true
I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor,
@Semantics.currencyCode:true
@UI.hidden:true
@EndUserText.label: 'Financial Management Area Currency'
I_BudgetEntryDocumentItem._FinMgmtArea.FinancialManagementAreaCrcy,
@Semantics: { amount : {currencyCode: 'FinancialManagementAreaCrcy'} }
@DefaultAggregation: #SUM
case I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor
when 1 then
case CommitmentItemCategory
when '3' then
I_BudgetEntryDocumentItem.BudgetAmountInFMACrcy * I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor * -1
when '2' then
// normally the revenues are not multiplied by -1 for diplay. This is done for objp so that revenues and expenditures get opposite signs
I_BudgetEntryDocumentItem.BudgetAmountInFMACrcy * I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor * -1
else
I_BudgetEntryDocumentItem.BudgetAmountInFMACrcy * I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor
end
else
0
end as ReceiverBudgetAmountInFMACrcy,
@Semantics: { amount : {currencyCode: 'FinancialManagementAreaCrcy'} }
@DefaultAggregation: #SUM
case
when I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor = -1 then
case CommitmentItemCategory
when '3' then
I_BudgetEntryDocumentItem.BudgetAmountInFMACrcy * I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor * -1
when '2' then
// normally the revenues are not multiplied by -1 for diplay. This is done for objp so that revenues and expenditures get opposite signs
I_BudgetEntryDocumentItem.BudgetAmountInFMACrcy * I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor * -1
else
I_BudgetEntryDocumentItem.BudgetAmountInFMACrcy * I_BudgetEntryDocumentItem._BudgetingProcess.BudgetAmountFactor
end
else 0
end as SenderBudgetAmountInFMACrcy,
//Auth
@Consumption.hidden: true
BudgetCategory,
@Consumption.hidden: true
I_BudgetEntryDocumentItem._CommitmentItem.CommitmentItemAuthznGrp,
@Consumption.hidden: true
I_BudgetEntryDocumentItem._FundsCenter.FundsCenterAuthznGrp,
@Consumption.hidden: true
I_BudgetEntryDocumentItem._Fund.FundAuthznGrp,
@Consumption.hidden: true
I_BudgetEntryDocumentItem._FunctionalArea.FunctionalAreaAuthznGrp,
@Consumption.hidden: true
I_BudgetEntryDocumentItem._Grant.GrantAuthznGrp,
@Consumption.hidden: true
I_BudgetEntryDocumentItem._FundedProgram.FundedProgramAuthznGrp
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_BUDGETENTRYDOCUMENT",
"I_BUDGETENTRYDOCUMENTITEM",
"I_BUDGETENTRYDOCUMENTTYPE",
"I_BUDGETENTRYDOCUMENTTYPETEXT",
"I_BUDGETINGPROCESS",
"I_BUDGETINGPROCESSTEXT",
"I_BUDGETPERIOD",
"I_BUDGETPERIODTEXT",
"I_BUDGETVALUETYPE",
"I_BUDGETVALUETYPETEXT",
"I_COMMITMENTITEM",
"I_COMMITMENTITEMTEXT",
"I_CONTROLLINGVERSION",
"I_CONTROLLINGVERSIONTEXT",
"I_FINANCIALMANAGEMENTAREA",
"I_FUNCTIONALAREATEXT",
"I_FUND",
"I_FUNDEDPROGRAM",
"I_FUNDEDPROGRAMTEXT",
"I_FUNDSCENTERBYYEAR",
"I_FUNDSCENTERTEXT",
"I_FUNDSMGMTFUNCTIONALAREA",
"I_FUNDTEXT",
"I_GRANT",
"I_GRANTTEXT",
"I_INTERNALBUDGETINGPROCESS"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/