P_EngmntProjWrkPckgUnitKPI

DDL: P_ENGMNTPROJWRKPCKGUNITKPI SQL: PEPWPUNITKPI Type: view COMPOSITE

P_EngmntProjWrkPckgUnitKPI is a Composite CDS View in SAP S/4HANA. It reads from 3 data sources (I_EngmntProjAssgmtToSessionUsr, I_EngmntProjectUnitDataVersion, I_Ledger) and exposes 39 fields with key fields EngagementProject, WorkPackage, EngagementProjFinPlanUUID, WorkPackageUUID, EngmtProjFinPlanVersion.

Data Sources (3)

SourceAliasJoin Type
I_EngmntProjAssgmtToSessionUsr A from
I_EngmntProjectUnitDataVersion B inner
I_Ledger Ledger inner

Annotations (10)

NameValueLevelField
AbapCatalog.sqlViewName PEPWPUNITKPI view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #COMPOSITE view
VDM.private true view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
AbapCatalog.preserveKey true view

Fields (39)

KeyFieldSource TableSource FieldDescription
KEY EngagementProject I_EngmntProjAssgmtToSessionUsr EngagementProject
KEY WorkPackage WorkPackage
KEY EngagementProjFinPlanUUID I_EngmntProjAssgmtToSessionUsr EngagementProjFinPlanUUID
KEY WorkPackageUUID WorkPackageUUID
KEY EngmtProjFinPlanVersion EngmtProjFinPlanVersion
KEY EngagementProjectResourceType EngagementProjectResourceType
KEY WorkPackageUnit EngagementProjectResource
KEY ResourceDemandUUID ResourceDemandUUID
BillingControlCategory BillingControlCategory
EngagementProjectServiceOrg I_EngmntProjAssgmtToSessionUsr EngagementProjectServiceOrg
Customer I_EngmntProjAssgmtToSessionUsr Customer
EngmntProjReviewYearPeriod I_EngmntProjAssgmtToSessionUsr EngmntProjReviewYearPeriod
EngagementProjectReviewStatus I_EngmntProjAssgmtToSessionUsr EngagementProjectReviewStatus
EngagementProjectStage I_EngmntProjAssgmtToSessionUsr EngagementProjectStage
EngagementProjectType I_EngmntProjAssgmtToSessionUsr EngagementProjectType
EngagementProjectCategory I_EngmntProjAssgmtToSessionUsr EngagementProjectCategory
IsMyProject I_EngmntProjAssgmtToSessionUsr IsMyProject
ProjectManager I_EngmntProjAssgmtToSessionUsr ProjManagerUserID
ProjectManagerName I_EngmntProjAssgmtToSessionUsr ProjectManagerName
ProjectManagerExternalID I_EngmntProjAssgmtToSessionUsr ProjectManagerExternalID
ProjectAccountant I_EngmntProjAssgmtToSessionUsr ProjAccountantUserID
ProjectAccountantName I_EngmntProjAssgmtToSessionUsr ProjectAccountantName
ProjectAccountantExternalID I_EngmntProjAssgmtToSessionUsr ProjectAccountantExternalID
ProjectController I_EngmntProjAssgmtToSessionUsr ProjControllerUserID
ProjectControllerName I_EngmntProjAssgmtToSessionUsr ProjectControllerName
ProjectControllerExternalID I_EngmntProjAssgmtToSessionUsr ProjectControllerExternalID
Projectpartner I_EngmntProjAssgmtToSessionUsr ProjPartnerUserID
ProjectPartnerName I_EngmntProjAssgmtToSessionUsr ProjectPartnerName
ProjectPartnerExternalID I_EngmntProjAssgmtToSessionUsr ProjectPartnerExternalID
Currency I_EngmntProjAssgmtToSessionUsr Currency
WorkPackageUnitUoM UnitOfMeasure
PlanUnitQuantity
EngmntProjPlanLineType EngmntProjPlanLineType
Ledger I_Ledger Ledger
ProjectVisibility I_EngmntProjAssgmtToSessionUsr ProjectVisibility
ProjectProfileCode I_EngmntProjAssgmtToSessionUsr ProjectProfileCode
EngmntProjectHeaderCompanyCode I_EngmntProjAssgmtToSessionUsr EngmntProjectHeaderCompanyCode
EngagementProjectCostCenter I_EngmntProjAssgmtToSessionUsr EngagementProjectCostCenter
ProfitCenter I_EngmntProjAssgmtToSessionUsr ProfitCenter
@AbapCatalog.sqlViewName: 'PEPWPUNITKPI'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #COMPOSITE
@VDM.private: true
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@AbapCatalog.preserveKey:true
define view P_EngmntProjWrkPckgUnitKPI
  as select from I_EngmntProjAssgmtToSessionUsr as A
    inner join   I_EngmntProjectUnitDataVersion as B      on A.EngagementProject = B.EngagementProject
    inner join   I_Ledger                       as Ledger on Ledger.IsLeadingLedger = 'X'

{

      //I_EngmntProjectUnitDataVersion

  key A.EngagementProject,
  key WorkPackage,
  key A.EngagementProjFinPlanUUID,
  key WorkPackageUUID,
  key EngmtProjFinPlanVersion,
  key EngagementProjectResourceType,
  key EngagementProjectResource as WorkPackageUnit,
  key ResourceDemandUUID,
      BillingControlCategory,

      // Below fields are added to support filter pushdown in Review App

      A.EngagementProjectServiceOrg,
      A.Customer,
      A.EngmntProjReviewYearPeriod,
      A.EngagementProjectReviewStatus,
      A.EngagementProjectStage,
      A.EngagementProjectType,
      A.EngagementProjectCategory,
      A.IsMyProject,      
      A.ProjManagerUserID       as ProjectManager,
      A.ProjectManagerName,
      A.ProjectManagerExternalID,
      A.ProjAccountantUserID    as ProjectAccountant,
      A.ProjectAccountantName,
      A.ProjectAccountantExternalID,
      A.ProjControllerUserID    as ProjectController,
      A.ProjectControllerName,
      A.ProjectControllerExternalID,
      A.ProjPartnerUserID       as Projectpartner,
      A.ProjectPartnerName,
      A.ProjectPartnerExternalID,
      @Semantics.currencyCode: true
      A.Currency,
      @Semantics.unitOfMeasure: true
      UnitOfMeasure             as WorkPackageUnitUoM,

      @Semantics.quantity.unitOfMeasure:'WorkPackageUnitUoM'
      sum (PlndEffortQty)       as PlanUnitQuantity,
      EngmntProjPlanLineType,
      Ledger.Ledger,
      A.ProjectVisibility,
      A.ProjectProfileCode,
      A.EngmntProjectHeaderCompanyCode,
      A.EngagementProjectCostCenter,
      A.ProfitCenter
}
group by
  A.EngagementProject,
  WorkPackage,
  A.EngagementProjFinPlanUUID,
  WorkPackageUUID,
  EngmtProjFinPlanVersion,
  EngagementProjectResourceType,
  EngagementProjectResource,
  ResourceDemandUUID,
  BillingControlCategory,
  A.EngagementProjectServiceOrg,
  UnitOfMeasure,
  A.Currency,
  EngmntProjPlanLineType,
  A.Customer,
  A.EngmntProjReviewYearPeriod,
  A.EngagementProjectReviewStatus,
  A.EngagementProjectStage,
  A.EngagementProjectType,
  A.EngagementProjectCategory,
  A.IsMyProject, 
  A.ProjManagerUserID,
  A.ProjectManagerName,
  A.ProjectManagerExternalID,
  A.ProjAccountantUserID,
  A.ProjectAccountantName,
  A.ProjectAccountantExternalID,
  A.ProjControllerUserID,
  A.ProjectControllerName,
  A.ProjectControllerExternalID,
  A.ProjPartnerUserID,
  A.ProjectPartnerName,
  A.ProjectPartnerExternalID,
  Ledger.Ledger,
  A.ProjectVisibility,
  A.ProjectProfileCode,      
  A.EngmntProjectHeaderCompanyCode,
  A.EngagementProjectCostCenter,
  A.ProfitCenter  
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ENGMNTPROJASSGMTTOSESSIONUSR",
"I_ENGMNTPROJECTUNITDATAVERSION",
"I_LEDGER"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/