I_PROJECTCOSTLINEITEMS
Project Cost Line Items
I_PROJECTCOSTLINEITEMS is a CDS View in S/4HANA. Project Cost Line Items. It contains 46 fields. 8 CDS views read from this table.
CDS Views using this table (8)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| I_ProjectCostLineItemsByPeriod | view | from | COMPOSITE | Project Cost Line Items by Period |
| I_ProjectCostLineItemsCube | view | from | COMPOSITE | Project Cost Line Items Cube |
| P_BudgetPostingsByCurrentYear | view | from | COMPOSITE | Get Projects which has budget postings for current year |
| P_ProjCostSpclPerdTmeRnge | view | from | COMPOSITE | Project Cost Line Items Cube |
| P_ProjCostsWithCalcdMnth | view | from | CONSUMPTION | Project Costs With Calculated Months |
| P_PROJCSTLINEITEMS | view_entity | from | COMPOSITE | Project Cost Line Item |
| P_ProjectCostsInGlobalCurrency | view | from | CONSUMPTION | Project Costs in Global Currency |
| P_ProjectPredictSummryMain | view | from | CONSUMPTION | Project Prediction Summary Main |
Fields (46)
| Key | Field | CDS Fields | Used in Views |
|---|---|---|---|
| KEY | AccountingDocument | AccountingDocument | 1 |
| KEY | ActualPlanJournalEntryItem | ActualPlanJournalEntryItem | 1 |
| KEY | CompanyCode | CompanyCode | 2 |
| KEY | FinancialPlanningDataPacket | FinancialPlanningDataPacket | 1 |
| KEY | FinancialPlanningReqTransSqnc | FinancialPlanningReqTransSqnc | 1 |
| KEY | FiscalYear | FiscalYear | 1 |
| KEY | Ledger | Ledger | 1 |
| KEY | LedgerGLLineItem | LedgerGLLineItem | 1 |
| KEY | OriginalFiscalYear | FiscalYear,OriginalFiscalYear | 2 |
| KEY | ProjectObjectNode | ProjectObjectNode | 1 |
| KEY | SourceLedger | SourceLedger | 1 |
| AccountingDocCreatedByUser | AccountingDocCreatedByUser | 1 | |
| AmountInObjectCurrency | AmountInObjectCurrency | 1 | |
| BusinessArea | BusinessArea | 2 | |
| ChartOfAccounts | ChartOfAccounts | 1 | |
| ControllingArea | ControllingArea | 1 | |
| ControllingObjectCurrency | ControllingObjectCurrency | 1 | |
| FinancialPlanningEntryItem | FinancialPlanningEntryItem | 1 | |
| FiscalPeriod | FiscalPeriod | 1 | |
| FiscalYearPeriod | FiscalYearPeriod | 1 | |
| FiscalYearVariant | FiscalYearVariant | 2 | |
| FunctionalArea | FunctionalArea | 2 | |
| GLAccount | GLAccount | 1 | |
| NextFiscalYearPeriod | FiscalYearPeriod,NextFiscalYearPeriod | 2 | |
| OrderID | OrderID | 1 | |
| OriginalFiscalPeriod | FiscalPeriod,OriginalFiscalPeriod | 2 | |
| PartnerAccountAssignmentType | PartnerAccountAssignmentType | 1 | |
| PlanningCategory | PlanningCategory | 2 | |
| Plant | Plant | 2 | |
| PostingDate | PostingDate | 1 | |
| ProfitCenter | ProfitCenter | 1 | |
| Project | Project | 2 | |
| ProjectCategory | ProjectCategory | 1 | |
| ProjectDescription | ProjectDescription | 1 | |
| ProjectInternalID | ProjectInternalID | 2 | |
| ProjectObject | ProjectObject | 1 | |
| ProjectProfileCode | ProjectProfileCode | 1 | |
| ProjectSummaryTaskUUID | ProjectSummaryTaskUUID | 1 | |
| ProjectType | ProjectType | 3 | |
| ProjectUUID | ProjectUUID | 1 | |
| ResponsibleCostCenter | ResponsibleCostCenter | 1 | |
| SemanticTag | SemanticTag | 2 | |
| WBSDescription | WBSDescription | 1 | |
| WBSElement | WBSElement | 1 | |
| WBSElementInternalID | WBSElementInternalID | 1 | |
| WBSElementProfitCenter | WBSElementProfitCenter | 1 |
@AbapCatalog.sqlViewName: 'IPROJCOSTLINITM'
@EndUserText.label: 'Project Cost Line Items'
@VDM.viewType: #COMPOSITE
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #NOT_REQUIRED
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.buffering.status: #NOT_ALLOWED
@Metadata.ignorePropagatedAnnotations: true
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
define view I_ProjectCostLineItems
as select from P_ProjectCostLineItems as ActPlnJrlEtry
left outer to one join R_EnterpriseProject as ProjectSummary on ProjectSummary.ProjectInternalID = ActPlnJrlEtry.ProjectInternalID
association [1..1] to I_ProjectBudgetPlngCategory as _BudgetPlnCat on $projection.PlanningCategory = _BudgetPlnCat.PlanningCategory
and _BudgetPlnCat.PlanningCatIsForAvailyCtrl = 'X'
{
key Ledger,
key SourceLedger,
key ActPlnJrlEtry.CompanyCode,
key FiscalYear,
key AccountingDocument,
key LedgerGLLineItem,
key FinancialPlanningReqTransSqnc,
key FinancialPlanningDataPacket,
key ActualPlanJournalEntryItem,
FinancialPlanningEntryItem,
ActPlnJrlEtry.FiscalYearPeriod,
ActPlnJrlEtry.SemanticTag,
LedgerFiscalYear,
ActPlnJrlEtry.ControllingArea,
GLAccount,
ChartOfAccounts,
AccountingDocCreatedByUser,
BusinessArea,
ActPlnJrlEtry.ProfitCenter,
WBSElementProfitCenter,
ActPlnJrlEtry.CostCenter,
ActPlnJrlEtry.FunctionalArea,
CostCtrActivityType,
ActPlnJrlEtry.Project,
//_ProjectBasicData.Project,
ActPlnJrlEtry.ProjectInternalID,
ActPlnJrlEtry.ProjectDescription,
ProjectObjectNode,
ActPlnJrlEtry.ProjectProfileCode,
ActPlnJrlEtry.ProjectObject,
cast (ActPlnJrlEtry.MaintenanceOrderIsSelected as boolean ) as MaintenanceOrderIsSelected,
ActPlnJrlEtry.PartnerAccountAssignmentType,
OrderID,
//2408 Performance improvement for Project Cost Report Overview and Line Items-Begin
ProjectObjectType,
//2502 Performance improvement for PCR app - Begin
_BudgetPlnCat.PlanningCategory as BudgetPlanningCategory,
//2502 Performance improvement for PCR app - End
//2408 Performance improvement for Project Cost Report Overview and Line Items-End
OrderOperation,
MaintenanceOrderDesc,
OperationDescription,
PlanningCategory1,
PlanningCategory2,
ProjectSummary.ProjectUUID,
ProjectSummary.ProjectCategory,
ProjectSummary.ProjectSummaryTaskUUID,
ProjectSummary.ProcessingStatus as ProjectProcessingStatus,
ActPlnJrlEtry.ProjectType,
ActPlnJrlEtry.AvailabilityControlIsActive,
ActPlnJrlEtry.AvailabilityControlProfile,
AvailyCtrlTimeRangeType,
BudgetCurrencyRole,
WBSElement,
WBSDescription,
ActPlnJrlEtry.ResponsibleCostCenter,
ActPlnJrlEtry.WBSElementInternalID,
//CE2402: Add Plant fied for /S4PPM/PR1 Auth
ActPlnJrlEtry.Plant,
//Commitment fields
SourceReferenceDocumentType,
SourceLogicalSystem,
SourceReferenceDocumentCntxt,
SourceReferenceDocument,
SourceReferenceDocumentItem,
SourceReferenceDocSubitem,
IsCommitment,
//Sending Partner fields
PartnerOrder,
PartnerOrderCategory,
PartnerWBSElement,
PartnerProject,
BusinessTransactionType,
DebitCreditCode,
ActPlnJrlEtry.FiscalPeriod,
ActPlnJrlEtry.FiscalYearVariant,
PlanningCategory,
cast('' as fcom_category) as ComparisonPlanningCategory,
cast(IsSettled as ps_s4_considersettlement) as IsSettled,
$session.system_date as CurrentDate,
PostingDate,
CreationDate,
@Semantics.currencyCode: true
ControllingObjectCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
AmountInObjectCurrency,
@Semantics.currencyCode:true
TransactionCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
AmountInTransactionCurrency,
@Semantics.currencyCode:true
CompanyCodeCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
AmountInCompanyCodeCurrency,
@Semantics.currencyCode:true
GlobalCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
AmountInGlobalCurrency,
@Semantics.currencyCode: true
FunctionalCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FunctionalCurrency'} }
ActualAmountInFunctionalCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FunctionalCurrency'} }
CmtmtAmountInFunctionalCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FunctionalCurrency'} }
PlanAmountInFunctionalCurrency,
@Semantics.currencyCode:true
FreeDefinedCurrency1,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency1'} }
AmountInFreeDefinedCurrency1,
@Semantics.currencyCode:true
FreeDefinedCurrency2,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency2'} }
AmountInFreeDefinedCurrency2,
@Semantics.currencyCode:true
FreeDefinedCurrency3,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency3'} }
AmountInFreeDefinedCurrency3,
@Semantics.currencyCode:true
FreeDefinedCurrency4,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency4'} }
AmountInFreeDefinedCurrency4,
@Semantics.currencyCode:true
FreeDefinedCurrency5,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency5'} }
AmountInFreeDefinedCurrency5,
@Semantics.currencyCode:true
FreeDefinedCurrency6,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency6'} }
AmountInFreeDefinedCurrency6,
@Semantics.currencyCode:true
FreeDefinedCurrency7,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency7'} }
AmountInFreeDefinedCurrency7,
@Semantics.currencyCode:true
FreeDefinedCurrency8,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency8'} }
AmountInFreeDefinedCurrency8,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
ActualAmountInGlobalCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
PlanAmountInGlobalCurrency,
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
@DefaultAggregation: #SUM
CmtmtCostInGlobalCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency1'} }
ActualAmountInFreeDfndCrcy1,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency2'} }
ActualAmountInFreeDfndCrcy2,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency3'} }
ActualAmountInFreeDfndCrcy3,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency4'} }
ActualAmountInFreeDfndCrcy4,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency5'} }
ActualAmountInFreeDfndCrcy5,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency6'} }
ActualAmountInFreeDfndCrcy6,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency7'} }
ActualAmountInFreeDfndCrcy7,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency8'} }
ActualAmountInFreeDfndCrcy8,
//2502 Include Project Stock costs in Project Cost Report - Begin
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FunctionalCurrency'} }
PrjStockAmountInFunctionalCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
PrjStockAmountInGlobalCurrency,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
ProjectStockAmtInProjCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
PrjStockAmtInCompanyCodeCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
PrjStockAmtInTransactionCrcy,
//2502 - Fields are pushed down from C_Projectcostlineitems
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
ActualAmountInCompanyCodeCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ActualAmountInTransactionCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
ActualCumltvAmtInCoCodeCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
@Consumption.filter: {hidden: true}
ActlCmtmtCumltvAmtInGlobCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
NonAccmltdCmtmtAmtInProjCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'CompanyCodeCurrency'} }
CmtmtCostInCCCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
CmtmtCostInTransacCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
CmtmtCumltvAmtInGlobCrcy,
//2502 Include Project Stock costs in Project Cost Report - End
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency1'} }
PlanAmountInFreeDefinedCrcy1,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency2'} }
PlanAmountInFreeDefinedCrcy2,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency3'} }
PlanAmountInFreeDefinedCrcy3,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency4'} }
PlanAmountInFreeDefinedCrcy4,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency5'} }
PlanAmountInFreeDefinedCrcy5,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency6'} }
PlanAmountInFreeDefinedCrcy6,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency7'} }
PlanAmountInFreeDefinedCrcy7,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency8'} }
PlanAmountInFreeDefinedCrcy8,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency1'} }
CmtmtCostInFreeDefinedCrcy1,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency2'} }
CmtmtCostInFreeDefinedCrcy2,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency3'} }
CmtmtCostInFreeDefinedCrcy3,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency4'} }
CmtmtCostInFreeDefinedCrcy4,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency5'} }
CmtmtCostInFreeDefinedCrcy5,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency6'} }
CmtmtCostInFreeDefinedCrcy6,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency7'} }
CmtmtCostInFreeDefinedCrcy7,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'FreeDefinedCurrency8'} }
CmtmtCostInFreeDefinedCrcy8,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
case
when PlanningCategory = 'PREDICT01' and AmountInGlobalCurrency > 0
then AmountInGlobalCurrency
else 0
end as PredictedAmtInGlobalCurrency,
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
@DefaultAggregation: #SUM
case
when PlanningCategory = 'PREDICT02' and AmountInGlobalCurrency > 0
then AmountInGlobalCurrency
else 0
end as LowerPredictionAmtInGlobCrcy,
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
@DefaultAggregation: #SUM
case
when PlanningCategory = 'PREDICT03'
then AmountInGlobalCurrency
else 0
end as UpperPredictionAmtInGlobCrcy,
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
@DefaultAggregation: #SUM
case
when PlanningCategory = _BudgetPlnCat.PlanningCategory
then AmountInGlobalCurrency
else 0
end as BudgetInGlobalCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
cast(PlanAmountInGlobalCurrency as fis_ksl) as BaselineAmtInGlobalCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'GlobalCurrency'} }
PlanAmountInGlobalCurrency - ActualAmountInGlobalCurrency as ActlPlnDiffAmtInGlobalCrcy,
// Project currency fields
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
ActlCostInProjCrcy,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
PlndCostAmtInProjCrcy,
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
@DefaultAggregation: #SUM
CmtmtCostInProjCrcy,
@Semantics: { amount : {currencyCode: 'ControllingObjectCurrency'} }
@DefaultAggregation: #SUM
case
when PlanningCategory = _BudgetPlnCat.PlanningCategory
then AmountInObjectCurrency
else 0
end as BudgetInProjCrcy,
cast('' as fis_jahrper_conv) as JrnlEntrDerivdFiscalYearPeriod,
cast('' as txt20_009) as FiscalPeriodName,
cast('' as fins_sem_tag_name) as SemanticTagName,
'1' as MonthInFirstInterval,
'2' as MonthInSecondInterval,
'3' as MonthInThirdInterval,
@Semantics.amount.currencyCode: 'GlobalCurrency'
cast(0 as abap.curr( 23, 2 ) ) as ActualCost,
_FiscalPeriod,
ActPlnJrlEtry.OriginalFiscalYear,
ActPlnJrlEtry.OriginalFiscalPeriod,
ActPlnJrlEtry.NextFiscalYearPeriod
}