I_WBSELEMENTVERSION
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)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| 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)
| Key | Field | CDS Fields | Used 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
};