I_WBSELEMENTVERSION

CDS View

WBS Element with Version

I_WBSELEMENTVERSION is a CDS View in S/4HANA. WBS Element with Version. It contains 22 fields. 9 CDS views read from this table.

CDS Views using this table (9)

ViewTypeJoinVDMDescription
I_WbsElementVersionValueHelp view from COMPOSITE Value help view for WBS Element with version
P_WBSElementWithVersion view from COMPOSITE
SHSM_V_PRPVW view from WBS Ele Wildcard,ProjDef,Descript,Respon
SHSM_V_PRPVZ view from View for search help ID PRPV
SHSM_V_PRPWA view from View for Search Help PRPWA
SHSM_V_PRPWB view from View for Search Help PRPWB
SHSM_V_PRPWP view from View for Search Help PRPWP
SHSM_V_PRPWW view from View for Search Help PRPWW
SHSM_V_PRPWZ view from View for Search Help PRPWZ

Fields (22)

KeyField CDS FieldsUsed in Views
KEY Version Version,vsmnr,vsnmr 4
KEY WBSElement WBSElement 1
_ProjectApplicant _ProjectApplicant 3
_ResponsiblePerson _ResponsiblePerson 3
ApplicantCode ApplicantCode 4
ControllingArea ControllingArea 3
FreeDefinedAttribute01 FreeDefinedAttribute01 3
FreeDefinedAttribute02 FreeDefinedAttribute02 3
FreeDefinedAttribute03 FreeDefinedAttribute03 3
FreeDefinedAttribute04 FreeDefinedAttribute04 3
FreeDefinedIndicator1 FreeDefinedIndicator1 3
FreeDefinedIndicator2 FreeDefinedIndicator2 3
ProfitCenter ProfitCenter 3
Project pspid 2
ProjectInternalID ProjectInternalID 7
ResponsiblePerson ResponsiblePerson,vernr 4
ResponsiblePersonName ResponsiblePersonName,verna 3
WBSDescription WBSDescription 1
WBSElementIsBillingElement WBSElementIsBillingElement 1
WBSElementIsPlanningElement WBSElementIsPlanningElement 1
WBSElementShortID poski 3
WBSIsAccountAssignmentElement WBSIsAccountAssignmentElement 1
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IWBSELEMENTVERSN'
@AbapCatalog.compiler.compareFilter: true
//@Analytics: { dataCategory: #DIMENSION, dataExtraction.enabled: true }

@ObjectModel.representativeKey: 'Version'
@AccessControl.authorizationCheck: #CHECK
//@AccessControl.privilegedAssociations:  [ '_Extension' ]

@EndUserText.label: 'WBS Element with Version'
@ObjectModel.usageType.serviceQuality: #B
@ObjectModel.usageType.sizeCategory : #L
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.dataClass: #MASTER
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API

define view I_WBSElementVersion
  as select from    vsprps_cn
    //inner join      prps      on prps.pspnr = vsprps_cn.pspnr

    left outer join vsprte_cn on  vsprps_cn.pspnr = vsprte_cn.posnr
                              and vsprps_cn.psphi = vsprte_cn.psphi
                              and vsprps_cn.vsnmr = vsprte_cn.vsnmr

  association [1..1] to I_ProjectVersion             as _Project                    on  $projection.ProjectInternalID = _Project.ProjectInternalID
                                                                                    and $projection.Version           = _Project.Version
  association [0..1] to I_UnitOfMeasure              as _BasicDurationUnit          on  $projection.BasicDurationUnit = _BasicDurationUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure              as _ActualDurationUnit         on  $projection.ActualDurationUnit = _ActualDurationUnit.UnitOfMeasure
  association [0..1] to I_UnitOfMeasure              as _ForecastedDurationUnit     on  $projection.ForecastedDurationUnit = _ForecastedDurationUnit.UnitOfMeasure
  association [1..1] to I_ControllingArea            as _ControllingArea            on  $projection.ControllingArea = _ControllingArea.ControllingArea
  association [1..1] to I_CompanyCode                as _CompanyCode                on  $projection.CompanyCode = _CompanyCode.CompanyCode
  association [1..*] to I_CostCenter                 as _CostCenter                 on  $projection.CostCenter      = _CostCenter.CostCenter
                                                                                    and $projection.ControllingArea = _CostCenter.ControllingArea
  association [1..1] to I_BusinessArea               as _BusinessArea               on  $projection.BusinessArea = _BusinessArea.BusinessArea
  association [1..1] to I_Plant                      as _Plant                      on  $projection.Plant = _Plant.Plant
  association [1..*] to I_ProfitCenter               as _ProfitCenter               on  $projection.ProfitCenter    = _ProfitCenter.ProfitCenter
                                                                                    and $projection.ControllingArea = _ProfitCenter.ControllingArea
  association [1..1] to I_ControllingObjectClass     as _ControllingObjectClass     on  $projection.ControllingObjectClass = _ControllingObjectClass.ControllingObjectClass
  association [1..1] to I_Projecttype                as _ProjectType                on  $projection.ProjectType = _ProjectType.ProjectType
  association [1..1] to I_Prioritycode               as _PriorityCode               on  $projection.PriorityCode = _PriorityCode.PriorityCode
  //association [0..*] to I_Wbselementtext             as _WBSElementLangBsdDesc      on  $projection.WBSElementObject = _WBSElementLangBsdDesc.WBSElementObject

  association [0..1] to I_Location                   as _Location                   on  $projection.Location = _Location.Location
                                                                                    and $projection.Plant    = _Location.Plant
  association [0..1] to I_Equipment                  as _Equipment                  on  $projection.Equipment = _Equipment.Equipment
  association [0..1] to I_FunctionalLocation         as _FunctionalLocation         on  $projection.FunctionalLocation = _FunctionalLocation.FunctionalLocation
  association [0..1] to I_FunctionalArea             as _FunctionalArea             on  $projection.FunctionalArea = _FunctionalArea.FunctionalArea
  association [0..1] to I_Interestcalculationprofile as _Interestcalculationprofile on  $projection.ProjInterestCalcProfile = _Interestcalculationprofile.ProjInterestCalcProfile
  association [0..1] to I_FactoryCalendar            as _FactoryCalendar            on  $projection.FactoryCalendar = _FactoryCalendar.FactoryCalendar
  association [0..1] to I_TaxJurisdiction            as _TaxJurisdiction            on  $projection.TaxJurisdiction = _TaxJurisdiction.TaxJurisdiction
                                                                                    and $projection.CostingSheet    = _TaxJurisdiction.TaxJurisdictionCalcProcedure
  association [1..1] to I_WBSElementByInternalKey    as _WBSElementByInternalKey    on  $projection.WBSElementInternalID = _WBSElementByInternalKey.WBSElementInternalID
  association [1..1] to I_WBSElement                 as _WBSElement                 on  $projection.WBSElement = _WBSElement.WBSElement
  association [1..1] to E_WBSElementVersion          as _Extension                  on  vsprps_cn.vsnmr = _Extension.Version
                                                                                    and vsprps_cn.posid = _Extension.WBSElement
  // 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
   // 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 vsprps_cn.mandt                                                           as SAPClient,
      @ObjectModel.foreignKey.association: '_WBSElement'
  key cast( vsprps_cn.posid as ps_posid_edit )                                  as WBSElement,
  key cast( vsprps_cn.vsnmr as vsnmr_v preserving type )                        as Version,
      vsprps_cn.posid_edit                                                      as WBSElementWithCodingMask, //Not finalized field - please donot use

      cast ( vsprps_cn.pspnr as ps_s4_pspnr preserving type )                   as WBSElementInternalID,
      cast ( vsprps_cn.psphi as ps_s4_proj_pspnr preserving type )              as ProjectInternalID,
      _Project.Project                                                          as Project,
      cast ( vsprps_cn.post1 as ps_s4_post1 preserving type )                   as WBSDescription,

      //@ObjectModel.text.association: '_WBSElementLangBsdDesc'

      vsprps_cn.objnr                                                           as WBSElementObject,
      cast ( vsprps_cn.ernam as ernam preserving type )                         as CreatedByUser,
      cast ( vsprps_cn.erdat as erdat preserving type )                         as CreationDate,
      cast ( vsprps_cn.aenam as ps_s4_aenam preserving type )                   as LastChangedByUser,
      cast ( vsprps_cn.aedat as ps_s4_updat preserving type )                   as LastChangeDate,
      cast ( vsprps_cn.vernr as ps_s4_vernr preserving type )                   as ResponsiblePerson,
      cast ( vsprps_cn.verna as ps_s4_verna preserving type )                   as ResponsiblePersonName,
      cast ( vsprps_cn.astnr as ps_s4_astnr preserving type )                   as ApplicantCode,
      vsprps_cn.astna                                                           as ApplicantName,
      cast ( vsprps_cn.pbukr as bukrs preserving type )                         as CompanyCode,
      cast ( vsprps_cn.pgsbr as gsber preserving type )                         as BusinessArea,
      cast ( vsprps_cn.pkokr as logbr_kokrs preserving type )                   as ControllingArea,
      vsprps_cn.prctr                                                           as ProfitCenter,
      cast ( vsprps_cn.prart as ps_s4_prart preserving type )                   as ProjectType,
      cast ( vsprps_cn.plakz as ps_plakz preserving type )                      as WBSElementIsPlanningElement,
      cast ( vsprps_cn.belkz as ps_s4_belkz preserving type )                   as WBSIsAccountAssignmentElement,
      cast ( vsprps_cn.fakkz as ps_fakkz preserving type )                      as WBSElementIsBillingElement,
      vsprps_cn.kalsm                                                           as CostingSheet,
      cast ( vsprps_cn.akstl as ps_s4_akstl preserving type )                   as RequestingCostCenter,
      cast ( vsprps_cn.fkstl as ps_s4_fkstl preserving type )                   as ResponsibleCostCenter,
      cast ( vsprps_cn.fabkl as stkal preserving type )                         as FactoryCalendar,
      cast ( vsprps_cn.pspri as nw_prio preserving type )                       as PriorityCode,
      cast ( vsprps_cn.pwpos as ps_pwpos preserving type )                      as Currency,
      vsprps_cn.werks                                                           as Plant,
      vsprps_cn.xstat                                                           as WBSIsStatisticalWBSElement,
      cast( vsprps_cn.txjcd as ps_s4_txjcd preserving type )                    as TaxJurisdiction,
      cast ( vsprps_cn.plint as plint_t preserving type )                       as WBSIsMarkedForIntegratedPlng,
      cast ( vsprps_cn.func_area as fkber preserving type )                     as FunctionalArea,
      vsprps_cn.stort                                                           as Location,
      vsprps_cn.equnr                                                           as Equipment,
      vsprps_cn.tplnr                                                           as FunctionalLocation,
      vsprps_cn.aennr                                                           as ProjectObjectChangeNumber,
      cast ( vsprps_cn.adpsp as ps_s4_addcompare_core preserving type )         as ProjectObjectReferenceElement,
      vsprps_cn.zschm                                                           as ProjInterestCalcProfile,
      vsprps_cn.imprf                                                           as InvestmentProfile,

      cast ( case dats_is_valid( vsprte_cn.pstrt )
                when 0
                then '00000000'
                else vsprte_cn.pstrt
                end as ps_s4_pstrt preserving type )                            as BasicStartDate,
      cast ( case dats_is_valid( vsprte_cn.estrt )
                when 0
                then '00000000'
                else vsprte_cn.estrt
                end  as ps_s4_estrt preserving type )                           as ForecastedStartDate,

      cast ( case dats_is_valid ( vsprte_cn.istrt )
                when 0
                then '00000000'
                else vsprte_cn.istrt
                end as ps_s4_istrt preserving type )                            as ActualStartDate,

      cast ( case dats_is_valid( vsprte_cn.pende )
                when 0
                then '00000000'
                else vsprte_cn.pende
                end  as ps_s4_pende preserving type )                           as BasicEndDate,
      cast ( case dats_is_valid( vsprte_cn.eende )
                when 0
                then '00000000'
                else vsprte_cn.eende
                end  as ps_s4_eende preserving type )                           as ForecastedEndDate,
      cast ( case dats_is_valid( vsprte_cn.iende )
                when 0
                then '00000000'
                else vsprte_cn.iende
                end  as ps_s4_iende preserving type )                           as ActualEndDate,

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

      cast ( case dats_is_valid( vsprte_cn.pstrm )
                when 0
                then '00000000'
                else vsprte_cn.pstrm
                end  as ps_gstrs preserving type )                              as SchedldBasicEarliestStartDate,
      cast ( case dats_is_valid( vsprte_cn.petrm )
                when 0
                then '00000000'
                else vsprte_cn.petrm
                end  as ps_s4_gltrs preserving type )                           as ScheduledBasicLatestEndDate,
      cast ( case dats_is_valid( vsprte_cn.estrm )
                when 0
                then '00000000'
                else vsprte_cn.estrm
                end  as ps_s4_gstpp preserving type )                           as SchedldFcstdEarliestStartDate,
      cast ( case dats_is_valid( vsprte_cn.eetrm )
                when 0
                then '00000000'
                else vsprte_cn.eetrm
                end  as ps_s4_gltpp preserving type )                           as LatestSchedldFcstdEndDate,
      cast ( case dats_is_valid( vsprte_cn.vistr )
                when 0
                then '00000000'
                else vsprte_cn.vistr
                end  as ps_s4_istvorl preserving type )                         as TentativeActualStartDate,
      cast ( case dats_is_valid( vsprte_cn.viend )
                when 0
                then '00000000'
                else vsprte_cn.viend
                end  as ps_s4_ienvorl preserving type )                         as TentativeActualEndDate,
      case dats_is_valid( vsprte_cn.pstrs )
                when 0
                then '00000000'
                else vsprte_cn.pstrs
                end                                                             as SchedldBasicLatestStartDate,
      cast ( case dats_is_valid( vsprte_cn.petrf )
                when 0
                then '00000000'
                else vsprte_cn.petrf
                end  as ps_s4_getre preserving type )                           as SchedldBasicEarliestEndDate,
      cast ( case dats_is_valid( vsprte_cn.estrs )
                when 0
                then '00000000'
                else vsprte_cn.estrs
                end  as ps_s4_gstrp preserving type )                           as LatestSchedldFcstdStartDate,
      cast ( case dats_is_valid( vsprte_cn.eetrf )
                when 0
                then '00000000'
                else vsprte_cn.eetrf
                end  as ps_s4_gltrp preserving type )                           as SchedldFcstdEarliestEndDate,

      cast ( vsprps_cn.scope as ps_s4_scope_cv )                                as ControllingObjectClass,
      @EndUserText.label: 'Level' //annotation used since cast to abap.char(3) has no label and UI is showing field name as it is

      vsprps_cn.stufe                                                                as WBSElementHierarchyLevel,
      cast ( vsprps_cn.zschl as fin_ovhkey preserving type )                    as OverheadCode,
      cast ( vsprps_cn.abgsl as psb_bo_abgr_schl_de preserving type )           as ResultAnalysisInternalID,

      @DefaultAggregation: #NONE
      cast ( vsprps_cn.evgew as ev_weightd preserving type )                    as ProgressAnlysAggregationWeight,


      //Following fields not in excel

      vsprps_cn.poski                                                           as WBSElementShortID,
      vsprps_cn.akokr                                                           as ReqgCostCenterControllingArea,
      vsprps_cn.fkokr                                                           as RespCostCenterControllingArea,
      vsprps_cn.txtsp                                                           as Language,
      vsprps_cn.slwid                                                           as FreeDefinedTableFieldSemantic,
      cast ( vsprps_cn.usr00 as usr00prps preserving type )                     as FreeDefinedAttribute01,
      cast ( vsprps_cn.usr01 as usr01prps preserving type )                     as FreeDefinedAttribute02,
      cast ( vsprps_cn.usr02 as usr02prps preserving type )                     as FreeDefinedAttribute03,
      cast ( vsprps_cn.usr03 as usr03prps preserving type )                     as FreeDefinedAttribute04,
       @Semantics.quantity.unitOfMeasure:'FreeDefinedQuantity1Unit'
      cast ( vsprps_cn.usr04 as usr04prps preserving type )                     as FreeDefinedQuantity1,
      cast ( vsprps_cn.use04 as use04prps preserving type )                     as FreeDefinedQuantity1Unit,
       @Semantics.quantity.unitOfMeasure:'FreeDefinedQuantity2Unit'
      cast ( vsprps_cn.usr05 as usr05prps preserving type )                     as FreeDefinedQuantity2,
      cast ( vsprps_cn.use05 as use05prps preserving type )                     as FreeDefinedQuantity2Unit,
      @Semantics.amount.currencyCode: 'FreeDefinedAmount1Currency'
      cast ( vsprps_cn.usr06 as usr06prps preserving type )                     as FreeDefinedAmount1,
      cast ( vsprps_cn.use06 as use06prps preserving type )                     as FreeDefinedAmount1Currency,
      @Semantics.amount.currencyCode: 'FreeDefinedAmount2Currency'
      cast ( vsprps_cn.usr07 as usr07prps preserving type )                     as FreeDefinedAmount2,
      cast ( vsprps_cn.use07 as use07prps preserving type )                     as FreeDefinedAmount2Currency,
      cast ( vsprps_cn.usr08 as usr08prps preserving type )                     as FreeDefinedDate1,
      cast ( vsprps_cn.usr09 as usr09prps preserving type )                     as FreeDefinedDate2,
      cast ( vsprps_cn.usr10 as usr10prps preserving type )                     as FreeDefinedIndicator1,
      cast ( vsprps_cn.usr11 as usr11prps preserving type )                     as FreeDefinedIndicator2,
      cast ( vsprps_cn.kostl as ps_kostl preserving type )                      as CostCenter,
      vsprps_cn.ktrg                                                            as CostObject,
      vsprps_cn.clasf                                                           as WBSElementIsUsedInProjSmmry,
      cast( vsprps_cn.loevm as ps_s4_loevm preserving type )                    as IsMarkedForDeletion,
      vsprps_cn.kzbws                                                           as InventorySpecialStockValnType,
      vsprps_cn.fplnr                                                           as BillingPlan,
      vsprps_cn.grpkz                                                           as WBSElementIsGroupingWBSElement,
      vsprps_cn.klvar                                                           as CostingVariant,
      vsprps_cn.vname                                                           as JointVenture,
      vsprps_cn.recid                                                           as JointVentureRecoveryCode,
      vsprps_cn.etype                                                           as JointVentureEquityType,
      cast ( vsprps_cn.otype as jv_otype preserving type )                      as JointVentureObjectType,
      vsprps_cn.jibcl                                                           as JointVentureClass,
      vsprps_cn.jibsa                                                           as JointVentureSubClass,
      vsprte_cn.flgvg                                                           as WBSElementHasActivities,
      vsprte_cn.flgew                                                           as WBSHasFcstdDateFromActivity,
      vsprte_cn.flgem                                                           as WBSHasFcstdDateSetManually,
      vsprte_cn.flgvm                                                           as WBSHasBasicDateManuallySet,
      vsprte_cn.flgim                                                           as WBSHasActualDateSetManually,
      vsprte_cn.flgvi                                                           as WBSElmntHasActualDateFromActy,
      //Above fields not in excel


      _Project,
      _BasicDurationUnit,
      _ActualDurationUnit,
      _ForecastedDurationUnit,
      _ControllingArea,
      _Plant,
      _CostCenter,
      _BusinessArea,
      _CompanyCode,
      _ProfitCenter,
      _ControllingObjectClass,
      _ProjectType,
      _PriorityCode,
      //_WBSElementLangBsdDesc,

      _Location,
      _Equipment,
      _FunctionalLocation,
      _FunctionalArea,
      _Interestcalculationprofile,
      _FactoryCalendar,
      _TaxJurisdiction,
      _WBSElementByInternalKey,
      _WBSElement,
      @UI.hidden: true
      @Consumption.hidden: true
      _ResponsiblePerson,
      @UI.hidden: true
      @Consumption.hidden: true
      _ProjectApplicant,
      //Multilanguage short text

      _WBSElementShortText
};