I_WORKPACKAGE

CDS View

Work Package

I_WORKPACKAGE is a CDS View in S/4HANA. Work Package. It contains 20 fields. 25 CDS views read from this table.

CDS Views using this table (25)

ViewTypeJoinVDMDescription
C_MM_WBSElmntEngmntProjVH view_entity inner CONSUMPTION WBS element on Engagement Project
C_PurOrdMaintainWBSValHelp view inner CONSUMPTION WBS Element Value Help
C_WorkPackage view from CONSUMPTION Work Package
C_WorkpackageDetails view from CONSUMPTION Work Package Details
I_CustomerProjectWorkPackage view from BASIC Customer Project Work Package
I_CustProjSlsOrdItemWorkPckg view inner COMPOSITE SO Item Wrk Pckgs for Customer Project
I_CustProjWrkPckgDetails view from BASIC Customer Project Workpackage Details
I_EngmntProjectSupplyData view inner BASIC Engagement Project Supply Data
I_EngmntProjFcstCube view left_outer COMPOSITE Forecast Info for Engmnt Project - Cube
I_EngmntProjFcstCube_2 view left_outer COMPOSITE Forecast Info for Engmnt Project - Cube
I_EngmntProjWrkPckg view from COMPOSITE Work Package
I_WorkPackageStdVH view from COMPOSITE Work Package
P_CATSDATAWITHCATEGORY view left_outer COMPOSITE CATS data with the project category
P_EngagementProjPlanActualCost view left_outer COMPOSITE Engagement Project Plan and Actual Cost
P_EngmentProjEmpWrkPckgDets view inner COMPOSITE Engagement Project Employee Work Package Details
P_EngmntProjAddlResources view left_outer COMPOSITE Additional Resources
P_Engmntprojplnactlexpense view inner COMPOSITE Engagement Project WP Plan Actual Expense
P_EngmntProjPlnDataByRsceType view inner COMPOSITE Engagement Project plan data by ressource types
P_EngmntProjWrkPckgDateSplit view from COMPOSITE Engagement Project Work Package Date Split
P_EngmtProjBillingItems view left_outer BASIC Engagement Project Billing Items
P_JP_SalesOrderWorkPackage view from CONSUMPTION Map of sales order and work package
P_Purordmaintaincustproj view from CONSUMPTION Customer Project Workpackage
P_PURORDWBSVALHELP view inner COMPOSITE Helper for WBS_VH
P_Workpackagepurchaseorder view from COMPOSITE Work Package Purchase Order
P_WrkPckgPlanActual view inner CONSUMPTION Work Package Plan Actual

Fields (20)

KeyField CDS FieldsUsed in Views
KEY WBSElementObject WBSElement,WBSElementObject,WorkPackageWBSObjectNumber 7
KEY WorkPackage CustomerProjectWorkPackage,WorkPackage 10
KEY WorkPackageUUID WorkPackageUUID 8
_EngagementProjectPlanData _EngagementProjectPlanData 2
_EngagementProjFinancialPlan _EngagementProjFinancialPlan 2
_SalesOrder _SalesOrder 1
_SalesOrderItem _SalesOrderItem 1
_WBSElement _WBSElement 1
CreatedByUser CreatedByUser 2
CreationDateTime CreationDateTime 3
EngagementProjFinPlanUUID EngagementProjFinPlanUUID 7
LastChangeDateTime LastChangeDateTime 4
LastChangedByUser LastChangedByUser 3
SalesOrder SalesOrder 8
SalesOrderItem SalesOrderItem 5
WBSDescription WBSDescription 5
WorkPackageEndDate CustProjWorkPackageEndDate,WorkPackageEndDate 12
WorkPackageName CustProjWorkPackageName,WorkPackageName 12
WorkPackageStartDate CustProjWorkPackageStartDate,WorkPackageStartDate 12
WorkPackageType WorkPackageType 4
@AbapCatalog: {
  sqlViewName: 'IWORKPCKG',
  preserveKey: true,
  compiler.compareFilter: true
}
@AccessControl: {
  authorizationCheck: #CHECK,
  privilegedAssociations: [ '_EngagementProjFinancialPlan' ],
  personalData.blocking: #NOT_REQUIRED
}
@Analytics: {
  dataCategory: #DIMENSION,
  dataExtraction.enabled: true
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Work Package'
@Metadata: {
  allowExtensions: true,
  ignorePropagatedAnnotations: true
}
@ObjectModel: {
  usageType: {
    serviceQuality: #A,
    sizeCategory: #L,
    dataClass: #TRANSACTIONAL
  },
  modelingPattern: #ANALYTICAL_DIMENSION,
  supportedCapabilities: [ #ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #CDS_MODELING_DATA_SOURCE,
                           #EXTRACTION_DATA_SOURCE, #SQL_DATA_SOURCE ],
  representativeKey: 'WorkPackage',
  sapObjectNodeType.name: 'CommercialProjectWorkPackage'  
}
@VDM: {
//  private: false,

  lifecycle.contract.type: #PUBLIC_LOCAL_API,
  viewType: #BASIC
}
define view I_WorkPackage
  as select from /cpd/d_pfp_ps as WorkPackage

  association [1]    to I_EngagementProjFinancialPlan  as _EngagementProjFinancialPlan on  $projection.EngagementProjFinPlanUUID = _EngagementProjFinancialPlan.EngagementProjFinPlanUUID
  association [0..1] to I_WBSElementBasicData          as _WBSElement                  on  $projection.WBSElementObject = _WBSElement.WBSElementObject
  association [0..1] to I_SalesOrder                   as _SalesOrder                  on  $projection.SalesOrder = _SalesOrder.SalesOrder
  association [0..1] to I_SalesOrderItem               as _SalesOrderItem              on  $projection.SalesOrderItem = _SalesOrderItem.SalesOrderItem
                                                                                       and $projection.SalesOrder     = _SalesOrderItem.SalesOrder
  association [0..*] to I_EngagementProjectPlanData    as _EngagementProjectPlanData   on  $projection.EngagementProjFinPlanUUID = _EngagementProjectPlanData.EngagementProjFinPlanUUID
                                                                                       and $projection.WorkPackage               = _EngagementProjectPlanData.WorkPackage

  association [0..*] to I_WorkPackageWorkItem          as _WorkPackageWorkItem         on  $projection.WorkPackage               = _WorkPackageWorkItem.WorkPackage
                                                                                       and $projection.EngagementProjFinPlanUUID = _WorkPackageWorkItem.EngagementProjFinPlanUUID
  association [0..1] to E_Workpackage                  as _Extension                   on  WorkPackage.db_key = _Extension.WorkPackageUUID

  //This association is used to map WorPackageSet with PlanDataSet in SEGW

  association [0..*] to I_ExtSrvcWrkPckgPlnByPerd      as _ExtSrvcWrkPckgPlnByPerd     on  $projection.EngagementProjFinPlanUUID = _ExtSrvcWrkPckgPlnByPerd.EngagementProjFinPlanUUID
                                                                                       and $projection.WorkPackage               = _ExtSrvcWrkPckgPlnByPerd.WorkPackage

  //This association is used to map WorPackageSet with WorkPackageFunctionSet in SEGW

  association [1..*] to I_WorkPackageWithFunctionValue as _WorkPackageFunction         on  $projection.WorkPackage = _WorkPackageFunction.WorkPackage

{

      @ObjectModel.text.element: 'WorkPackageName'
  key WorkPackage.plan_item_id                                                as WorkPackage,
      cast( WorkPackage.db_key    as /cpd/wp_db_key preserving type )         as WorkPackageUUID,
      cast(WorkPackage.parent_key    as /cpd/eng_pfp_db_key preserving type ) as EngagementProjFinPlanUUID,
      @Semantics.text: true
      WorkPackage.plan_item_name                                              as WorkPackageName,
      WorkPackage.start_date                                                  as WorkPackageStartDate,
      WorkPackage.end_date                                                    as WorkPackageEndDate,
      WorkPackage.mapped_item_id                                              as WBSElementObject,
      WorkPackage.mapped_item_desc                                            as WBSDescription,
      //--[ GENERATED:012:GlBfhyJl7kY4nF6H}hes6m

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_SalesOrderStdVH',
                     element: 'SalesOrder' }
        }]
      // ]--GENERATED

      @ObjectModel.foreignKey.association: '_SalesOrder'
      WorkPackage.sales_order_hdr                                             as SalesOrder,
      //--[ GENERATED:012:GlBfhyJl7kY4nF6H}hes6m

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_SalesOrderItemStdVH',
                     element: 'SalesOrderItem' },
          additionalBinding: [{ localElement: 'SalesOrder',
                                element: 'SalesOrder' }]
        }]
      // ]--GENERATED

      @ObjectModel.foreignKey.association: '_SalesOrderItem'
      WorkPackage.so_item_id                                                  as SalesOrderItem,
      WorkPackage.changed_by                                                  as LastChangedByUser,
      @Semantics.dateTime:true
      @Semantics.systemDateTime.lastChangedAt:true
      cast(WorkPackage.changed_on as /cpd/cpm_changedon)                      as LastChangeDateTime,
      WorkPackage.created_by                                                  as CreatedByUser,
      @Semantics.dateTime:true
      @Semantics.systemDateTime.createdAt:true
      cast(WorkPackage.created_on as /cpd/cpm_createdon)                      as CreationDateTime,
      WorkPackage.plan_item_type                                              as WorkPackageType,



      /* Associations */
      _EngagementProjFinancialPlan,
      _EngagementProjectPlanData,
      _WBSElement,
      _SalesOrder,
      _SalesOrderItem,
      _WorkPackageWorkItem,
      _ExtSrvcWrkPckgPlnByPerd,
      _WorkPackageFunction

}

where
  WorkPackage.is_deleted = ''