I_WBSElementData_2

DDL: I_WBSELEMENTDATA_2 Type: view BASIC

Appl interface for WBS Element Details

I_WBSElementData_2 is a Basic CDS View (Dimension) that provides data about "Appl interface for WBS Element Details" in SAP S/4HANA. It reads from 1 data source (prps) and exposes 120 fields with key field WBSElementInternalID. It has 14 associations to related views.

Data Sources (1)

SourceAliasJoin Type
prps prps from

Associations (14)

CardinalityTargetAliasCondition
[1..1] I_ProjectData_2 _Project $projection.ProjectInternalID = _Project.ProjectInternalID
[0..1] I_CompanyCode _CompanyCode $projection.CompanyCode = _CompanyCode.CompanyCode
[0..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea
[0..1] I_FunctionalArea _FunctionalArea $projection.FunctionalArea = _FunctionalArea.FunctionalArea
[0..*] I_ProfitCenter _ProfitCenter $projection.ControllingArea = _ProfitCenter.ControllingArea and $projection.ProfitCenter = _ProfitCenter.ProfitCenter
[0..*] I_CostCenter _ResponsibleCostCenter $projection.ControllingArea = _ResponsibleCostCenter.ControllingArea and $projection.ResponsibleCostCenter = _ResponsibleCostCenter.CostCenter
[0..1] I_Plant _Plant $projection.Plant = _Plant.Plant
[0..1] I_FactoryCalendar _FactoryCalendar $projection.FactoryCalendar = _FactoryCalendar.FactoryCalendar
[0..*] I_CostCenter _CostCenter $projection.ControllingArea = _CostCenter.ControllingArea and $projection.CostCenter = _CostCenter.CostCenter
[1..1] I_StatusObject _StatusObject $projection.WBSElementObject = _StatusObject.StatusObject
[0..1] I_ProjectResponsiblePerson _ResponsiblePerson $projection.ResponsiblePerson = _ResponsiblePerson.ResponsiblePerson
[0..1] I_ProjectApplicant _ProjectApplicant $projection.ApplicantCode = _ProjectApplicant.ApplicantCode ---Extension
[1..1] E_WBSElement_2 _Extension $projection.WBSElementInternalID = _Extension.WBSElementInternalID
[0..1] I_ProjectObjectShortText _WBSElementShortText _WBSElementShortText.Language = $session.system_language and _WBSElementShortText.ProjectApplicationIdentifier = 'PS' and _WBSElementShortText.ProjectObjectType = 'PR' and $projection.WBSElementObject = _WBSElementShortText.ProjectObjectNode

Annotations (17)

NameValueLevelField
AbapCatalog.sqlViewName IWBSELMNTDATA2 view
AbapCatalog.compiler.compareFilter true view
Analytics.dataCategory #DIMENSION view
Analytics.internalName #LOCAL view
Analytics.dataExtraction.enabled true view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Appl interface for WBS Element Details view
VDM.viewType #BASIC view
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.preserveKey true view
Metadata.ignorePropagatedAnnotations true view
Metadata.allowExtensions true view
ObjectModel.representativeKey WBSElementInternalID view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view

Fields (120)

KeyFieldSource TableSource FieldDescription
KEY WBSElementInternalID
WBSElementExternalID prps posid_edit
WBSElement
WBSElementShortID prps poski
WBSDescription
ResponsiblePerson
ResponsiblePersonName
ApplicantCode
ApplicantName prps astna
CompanyCode
BusinessArea
ControllingArea
FunctionalArea
ProfitCenter prps prctr
ResponsibleCostCenter
Plant prps werks
FreeDefinedTableFieldSemantic prps slwid
FactoryCalendar
PriorityCode
Currency
CostingSheet prps kalsm
CostCenter
RequestingCostCenter
ProjectInternalID
WBSElementIsBillingElement
WBSElementObject prps objnr
InvestmentProfile prps imprf
WBSIsStatisticalWBSElement prps xstat
WBSIsAccountAssignmentElement
ProjectType prps prart
WBSElementIsPlanningElement
WorkCenterLocation prps stort
ResultAnalysisInternalID prps abgsl
TaxJurisdiction prps txjcd
FunctionalLocation
CreatedByUser prps ernam
CreationDate prps erdat
LastChangedByUser prps aenam
LastChangeDate prps aedat
RespCostCenterControllingArea prps fkokr
WBSIsMarkedForIntegratedPlng
Equipment prps equnr
ProjectObjectChangeNumber prps aennr
WBSElementHierarchyLevel prps stufe
OverheadCode
ReferenceElement
ProjInterestCalcProfile prps zschm
ProgressAnlysAggregationWeight
ReqgCostCenterControllingArea prps akokr
Language prps txtsp
IsMarkedForDeletion
WBSElementIsGroupingWBSElement prps grpkz
WBSElementIsUsedInProjSmmry prps clasf
CostingVariant prps klvar
BasicStartDate
ActualStartDate
BasicEndDate
ActualEndDate
TechnicalCompletionDate prps tadat
BasicDuration
BasicDurationUnit
ActualDuration
ActualDurationUnit
SchedldBasicEarliestStartDate
ScheduledBasicLatestEndDate
SchedldFcstdEarliestStartDate
LatestSchedldFcstdEndDate
TentativeActualStartDate
TentativeActualEndDate
JointVenture prps vname
JointVentureCostRecoveryCode prps recid
JointVentureEquityType prps etype
JntVntrProjectType prps otype
JntIntrstBillgClass prps jibcl
JntIntrstBillgSubClass prps jibsa
SubProject prps subpr
InvestmentReason prps izwek
InvestmentScale prps isize
EnvironmentalInvestmentReason prps iumkz
RequestingCompanyCode prps abukr
NetworkAssignmentType prps zuord
CostObject prps ktrg
BillingPlan prps fplnr
ControllingObjectClass
FreeDefinedAttribute01
FreeDefinedAttribute02
FreeDefinedAttribute03
FreeDefinedAttribute04
FreeDefinedQuantity1
FreeDefinedQuantity1Unit
FreeDefinedQuantity2
FreeDefinedQuantity2Unit
FreeDefinedAmount1
FreeDefinedAmount1Currency
FreeDefinedAmount2
FreeDefinedAmount2Currency
FreeDefinedDate1
FreeDefinedDate2
FreeDefinedIndicator1
FreeDefinedIndicator2
StatusProfile _StatusObject StatusProfile
DistributionProfile prps pgprf
SchedldBasicEarliestEndDate
SchedldBasicLatestStartDate
SchedldFcstdEarliestEndDate
LatestSchedldFcstdStartDate
StatusCombinationCode prps prps_status
_Project _Project
_CompanyCode _CompanyCode
_ControllingArea _ControllingArea
_FunctionalArea _FunctionalArea
_ProfitCenter _ProfitCenter
_ResponsibleCostCenter _ResponsibleCostCenter
_Plant _Plant
_FactoryCalendar _FactoryCalendar
_CostCenter _CostCenter
_StatusObject _StatusObject
_ResponsiblePerson _ResponsiblePerson
_ProjectApplicant _ProjectApplicant
_WBSElementShortText _WBSElementShortText
@AbapCatalog: {
  sqlViewName: 'IWBSELMNTDATA2',
  compiler.compareFilter: true
}
@Analytics: {
      dataCategory: #DIMENSION,
      internalName: #LOCAL,
      dataExtraction : {
        enabled: true,
        delta:{
          changeDataCapture: {
            mapping: [
                { table: 'PRPS',
                  role: #MAIN,
                  viewElement: 'WBSElementInternalID',
                  tableElement: 'PSPNR'
                 },
                {
                  table: 'PRTE',
                  role: #LEFT_OUTER_TO_ONE_JOIN,
                  viewElement:  'WBSElementInternalID',
                  tableElement: 'POSNR'
                }
             ]
           }
         }
       }
}
@VDM.lifecycle.contract.type: #PUBLIC_LOCAL_API
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Appl interface for WBS Element Details'
@VDM.viewType: #BASIC
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey:true
@Metadata.ignorePropagatedAnnotations:true
// @AccessControl.personalData.blocking: #REQUIRED

@Metadata.allowExtensions: true

@ObjectModel: {
    //Keys

    semanticKey: [ 'WBSElement' ],
    representativeKey: 'WBSElementInternalID',

    usageType: {
        serviceQuality: #B,
        sizeCategory : #XL,
        dataClass: #MASTER
    },

    supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET, #ANALYTICAL_DIMENSION, #EXTRACTION_DATA_SOURCE ]
}
define view I_WBSElementData_2
  as select from           prps
    left outer to one join prte on  prps.pspnr = prte.posnr
                                and prps.psphi = prte.psphi

  association [1..1] to I_ProjectData_2            as _Project               on  $projection.ProjectInternalID = _Project.ProjectInternalID
  association [0..1] to I_CompanyCode              as _CompanyCode           on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [0..1] to I_ControllingArea          as _ControllingArea       on  $projection.ControllingArea = _ControllingArea.ControllingArea
  association [0..1] to I_FunctionalArea           as _FunctionalArea        on  $projection.FunctionalArea = _FunctionalArea.FunctionalArea
  association [0..*] to I_ProfitCenter             as _ProfitCenter          on  $projection.ControllingArea = _ProfitCenter.ControllingArea
                                                                             and $projection.ProfitCenter    = _ProfitCenter.ProfitCenter
  association [0..*] to I_CostCenter               as _ResponsibleCostCenter on  $projection.ControllingArea       = _ResponsibleCostCenter.ControllingArea
                                                                             and $projection.ResponsibleCostCenter = _ResponsibleCostCenter.CostCenter
  association [0..1] to I_Plant                    as _Plant                 on  $projection.Plant = _Plant.Plant
  association [0..1] to I_FactoryCalendar          as _FactoryCalendar       on  $projection.FactoryCalendar = _FactoryCalendar.FactoryCalendar
  association [0..*] to I_CostCenter               as _CostCenter            on  $projection.ControllingArea = _CostCenter.ControllingArea
                                                                             and $projection.CostCenter      = _CostCenter.CostCenter
  association [1..1] to I_StatusObject             as _StatusObject          on  $projection.WBSElementObject = _StatusObject.StatusObject

  // DPP Changes

  // Person in Responsible for Project

  association [0..1] to I_ProjectResponsiblePerson as _ResponsiblePerson     on  $projection.ResponsiblePerson = _ResponsiblePerson.ResponsiblePerson
  // Project Applicant

  association [0..1] to I_ProjectApplicant         as _ProjectApplicant      on  $projection.ApplicantCode = _ProjectApplicant.ApplicantCode

  ---Extension Association
  association [1..1] to E_WBSElement_2             as _Extension             on  $projection.WBSElementInternalID = _Extension.WBSElementInternalID
  // Multilanguage Short text

  association [0..1] to I_ProjectObjectShortText   as _WBSElementShortText   on  _WBSElementShortText.Language                     = $session.system_language
                                                                             and _WBSElementShortText.ProjectApplicationIdentifier = 'PS'
                                                                             and _WBSElementShortText.ProjectObjectType            = 'PR'
                                                                             and $projection.WBSElementObject                      = _WBSElementShortText.ProjectObjectNode

{
  key cast ( prps.pspnr as ps_s4_pspnr preserving type )                       as WBSElementInternalID,
      @ObjectModel.text.element: 'WBSDescription'
      prps.posid_edit                                                          as WBSElementExternalID,
      @ObjectModel.text.element: 'WBSDescription'
      cast ( prps.posid as ps_posid_edit preserving type )                     as WBSElement,
      prps.poski                                                               as WBSElementShortID,
      @Semantics.text: true
      cast ( prps.post1 as ps_s4_post1 preserving type )                       as WBSDescription,

      cast ( prps.vernr as ps_s4_vernr preserving type )                       as ResponsiblePerson,
      cast ( prps.verna as ps_s4_verna preserving type )                       as ResponsiblePersonName,
      cast ( prps.astnr as ps_s4_astnr preserving type )                       as ApplicantCode,
      prps.astna                                                               as ApplicantName,

      @ObjectModel.foreignKey.association: '_CompanyCode'
      cast ( prps.pbukr as bukrs preserving type )                             as CompanyCode,
      cast ( prps.pgsbr as gsber preserving type )                             as BusinessArea,

      @ObjectModel.foreignKey.association: '_ControllingArea'
      cast ( prps.pkokr as ps_s4_kokrs preserving type )                       as ControllingArea,

      @ObjectModel.foreignKey.association: '_FunctionalArea'
      cast ( prps.func_area as fkber preserving type )                         as FunctionalArea,

      @ObjectModel.foreignKey.association: '_ProfitCenter'
      prps.prctr                                                               as ProfitCenter,

      @ObjectModel.foreignKey.association: '_ResponsibleCostCenter'
      cast ( prps.fkstl as ps_s4_fkstl preserving type )                       as ResponsibleCostCenter,

      @ObjectModel.foreignKey.association: '_Plant'
      prps.werks                                                               as Plant,
      prps.slwid                                                               as FreeDefinedTableFieldSemantic,

      @ObjectModel.foreignKey.association: '_FactoryCalendar'
      cast ( prps.fabkl as stkal preserving type )                             as FactoryCalendar,
      cast ( prps.pspri as nw_prio preserving type )                           as PriorityCode,
      cast ( prps.pwpos as ps_pwpos preserving type )                          as Currency,

      prps.kalsm                                                               as CostingSheet,

      @ObjectModel.foreignKey.association: '_CostCenter'
      cast ( prps.kostl as ps_kostl preserving type )                          as CostCenter,
      cast ( prps.akstl as ps_s4_akstl preserving type )                       as RequestingCostCenter,

      @ObjectModel.foreignKey.association: '_Project'
      cast ( prps.psphi as ps_s4_proj_pspnr preserving type )                  as ProjectInternalID,
      cast ( prps.fakkz as ps_fakkz preserving type )                          as WBSElementIsBillingElement,
      prps.objnr                                                               as WBSElementObject,
      prps.imprf                                                               as InvestmentProfile,
      prps.xstat                                                               as WBSIsStatisticalWBSElement,
      cast ( prps.belkz as ps_s4_belkz preserving type )                       as WBSIsAccountAssignmentElement,
      prps.prart                                                               as ProjectType,
      cast ( prps.plakz as ps_plakz preserving type )                          as WBSElementIsPlanningElement,
      prps.stort                                                               as WorkCenterLocation,
      prps.abgsl                                                               as ResultAnalysisInternalID,
      //Tax Jurisdiction, Functional Location fields

      prps.txjcd                                                               as TaxJurisdiction,
      cast ( prps.tplnr as tplnr_unconverted  preserving type )                as FunctionalLocation,
      @Semantics.user.createdBy: true
      prps.ernam                                                               as CreatedByUser,
      @Semantics.systemDate.createdAt: true
      prps.erdat                                                               as CreationDate,
      @Semantics.user.lastChangedBy: true
      prps.aenam                                                               as LastChangedByUser,
      @Semantics.systemDate.lastChangedAt: true
      prps.aedat                                                               as LastChangeDate,

      prps.fkokr                                                               as RespCostCenterControllingArea,

      cast ( prps.plint as plint_t preserving type )                           as WBSIsMarkedForIntegratedPlng,
      prps.equnr                                                               as Equipment,
      prps.aennr                                                               as ProjectObjectChangeNumber,
      prps.stufe                                                               as WBSElementHierarchyLevel,
      cast ( prps.zschl as fin_ovhkey preserving type )                        as OverheadCode,
      cast ( prps.adpsp as ps_s4_addcompare_core preserving type )             as ReferenceElement,
      prps.zschm                                                               as ProjInterestCalcProfile,
      cast ( prps.evgew as ev_weightd preserving type )                        as ProgressAnlysAggregationWeight,

      prps.akokr                                                               as ReqgCostCenterControllingArea,
      prps.txtsp                                                               as Language,
      cast( prps.loevm as ps_s4_loevm )                                        as IsMarkedForDeletion,
      @Semantics.booleanIndicator: true
      prps.grpkz                                                               as WBSElementIsGroupingWBSElement,
      prps.clasf                                                               as WBSElementIsUsedInProjSmmry,
      prps.klvar                                                               as CostingVariant,

      cast ( prte.pstrt as ps_s4_pstrt preserving type )                       as BasicStartDate,
      cast ( prte.estrt as ps_s4_estrt preserving type )                       as ForecastedStartDate,
      cast ( prte.istrt as ps_s4_istrt preserving type )                       as ActualStartDate,
      cast ( prte.pende as ps_s4_pende preserving type )                       as BasicEndDate,
      cast ( prte.eende as ps_s4_eende preserving type )                       as ForecastedEndDate,
      cast ( prte.iende as ps_s4_iende preserving type )                       as ActualEndDate,
      prps.tadat                                                               as TechnicalCompletionDate,

      @Semantics.quantity.unitOfMeasure: 'BasicDurationUnit'
      cast ( prte.pdaur as ps_s4_pdaur preserving type )                       as BasicDuration,
      @Semantics.unitOfMeasure: true
      cast ( prte.peinh as ps_s4_peinh preserving type )                       as BasicDurationUnit,
      @Semantics.quantity.unitOfMeasure: 'ForecastedDurationUnit'
      cast( prte.edaur as ps_s4_edaur preserving type )                        as ForecastedDuration,
      @Semantics.unitOfMeasure: true
      cast ( prte.eeinh as ps_s4_eeinh preserving type )                       as ForecastedDurationUnit,
      @Semantics.quantity.unitOfMeasure: 'ActualDurationUnit'
      cast ( prte.idaur as ps_s4_idaur preserving type )                       as ActualDuration,
      @Semantics.unitOfMeasure: true
      cast ( prte.ieinh as ps_ieinh preserving type )                          as ActualDurationUnit,

      cast ( prte.pstrm as ps_gstrs preserving type )                          as SchedldBasicEarliestStartDate,
      cast ( prte.petrm as ps_s4_gltrs preserving type )                       as ScheduledBasicLatestEndDate,
      cast ( prte.estrm as ps_s4_gstpp preserving type )                       as SchedldFcstdEarliestStartDate,
      cast ( prte.eetrm as ps_s4_gltpp preserving type )                       as LatestSchedldFcstdEndDate,
      cast ( prte.vistr as ps_s4_istvorl preserving type )                     as TentativeActualStartDate,
      cast ( prte.viend as ps_s4_ienvorl preserving type )                     as TentativeActualEndDate,

      //Joint venture fields

      prps.vname                                                               as JointVenture,
      prps.recid                                                               as JointVentureCostRecoveryCode,
      prps.etype                                                               as JointVentureEquityType,
      prps.otype                                                               as JntVntrProjectType,
      prps.jibcl                                                               as JntIntrstBillgClass,
      prps.jibsa                                                               as JntIntrstBillgSubClass,

      prps.subpr                                                               as SubProject,
      prps.izwek                                                               as InvestmentReason,
      prps.isize                                                               as InvestmentScale,
      prps.iumkz                                                               as EnvironmentalInvestmentReason,

      prps.abukr                                                               as RequestingCompanyCode,
      prps.zuord                                                               as NetworkAssignmentType,
      prps.ktrg                                                                as CostObject,
      prps.fplnr                                                               as BillingPlan,
      cast ( prps.scope as ps_s4_scope_cv )                                    as ControllingObjectClass,

      cast ( prps.usr00 as usr00prps preserving type )                         as FreeDefinedAttribute01,
      cast ( prps.usr01 as usr01prps preserving type )                         as FreeDefinedAttribute02,
      cast ( prps.usr02 as usr02prps preserving type )                         as FreeDefinedAttribute03,
      cast ( prps.usr03 as usr03prps preserving type )                         as FreeDefinedAttribute04,
      @Semantics.quantity.unitOfMeasure:'FreeDefinedQuantity1Unit'
      cast ( prps.usr04 as usr04prps preserving type )                         as FreeDefinedQuantity1,
      cast ( prps.use04 as use04prps preserving type )                         as FreeDefinedQuantity1Unit,
      @Semantics.quantity.unitOfMeasure:'FreeDefinedQuantity2Unit'
      cast ( prps.usr05 as usr05prps preserving type )                         as FreeDefinedQuantity2,
      cast ( prps.use05 as use05prps preserving type )                         as FreeDefinedQuantity2Unit,
      @Semantics.amount.currencyCode: 'FreeDefinedAmount1Currency'
      cast( cast ( prps.usr06 * 10  as abap.curr(14,2) )  as abap.curr(13,2) ) as FreeDefinedAmount1,
      cast ( prps.use06 as use06prps preserving type )                         as FreeDefinedAmount1Currency,
      @Semantics.amount.currencyCode: 'FreeDefinedAmount2Currency'
      cast( cast ( prps.usr07 * 10  as abap.curr(14,2) )  as abap.curr(13,2) ) as FreeDefinedAmount2,
      cast ( prps.use07 as use07prps preserving type )                         as FreeDefinedAmount2Currency,
      cast ( prps.usr08 as usr08prps preserving type )                         as FreeDefinedDate1,
      cast ( prps.usr09 as usr09prps preserving type )                         as FreeDefinedDate2,
      cast ( prps.usr10 as usr10prps preserving type )                         as FreeDefinedIndicator1,
      cast ( prps.usr11 as usr11prps preserving type )                         as FreeDefinedIndicator2,

      _StatusObject.StatusProfile                                              as StatusProfile,
      prps.pgprf                                                               as DistributionProfile,
      cast( prte.petrf as ps_getre preserving type )                           as SchedldBasicEarliestEndDate,
      cast( prte.pstrs as ps_gstre preserving type )                           as SchedldBasicLatestStartDate,
      cast( prte.eetrf as ps_gltrp preserving type )                           as SchedldFcstdEarliestEndDate,
      cast( prte.estrs as ps_gstrp preserving type )                           as LatestSchedldFcstdStartDate,
      
      prps.prps_status                                                         as StatusCombinationCode,

      //Associations

      _Project,
      _CompanyCode,
      _ControllingArea,
      _FunctionalArea,
      _ProfitCenter,
      _ResponsibleCostCenter,
      _Plant,
      _FactoryCalendar,
      _CostCenter,
      _StatusObject,
      @Consumption.hidden: true
      _ResponsiblePerson,
      @Consumption.hidden: true
      _ProjectApplicant,
      // Multilanguage Short text

      _WBSElementShortText


}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_STATUSOBJECT",
"PRPS",
"PRTE"
],
"ASSOCIATED":
[
"E_WBSELEMENT_2",
"I_COMPANYCODE",
"I_CONTROLLINGAREA",
"I_COSTCENTER",
"I_FACTORYCALENDAR",
"I_FUNCTIONALAREA",
"I_PLANT",
"I_PROFITCENTER",
"I_PROJECTAPPLICANT",
"I_PROJECTDATA_2",
"I_PROJECTOBJECTSHORTTEXT",
"I_PROJECTRESPONSIBLEPERSON",
"I_STATUSOBJECT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/