R_PROJECTDEMAND

CDS View

Project Demand

R_PROJECTDEMAND is a CDS View in S/4HANA. Project Demand. It contains 1 fields. 9 CDS views read from this table.

CDS Views using this table (9)

ViewTypeJoinVDMDescription
C_ProjDmndRsceAssignmentSum view inner CONSUMPTION Sum of the Staffed Efforts
I_MngProjDmndPurReqnOrder view from COMPOSITE Common demand data with PO/PR
I_ProjDmndAndWorkPackageStatus view from COMPOSITE Project Demand and Work Package Status
I_ProjDmndCalcdCatSpcfcFields view from COMPOSITE Calculations to filter Dmnd Cat fields
I_ProjectDemand view from BASIC Project Demand
I_ProjectDemandSituation view from BASIC Demand exception handling
I_ProjectDemandTP view_entity from TRANSACTIONAL Project Demand - TP
P_ProjectDemandMaterials view from COMPOSITE
P_ProjectDemandServices view from COMPOSITE

Fields (1)

KeyField CDS FieldsUsed in Views
ProjectDemand ProjectDemand 1
@VDM.viewType: #BASIC
@VDM.lifecycle.contract.type:  #SAP_INTERNAL_API

@AccessControl.authorizationCheck: #MANDATORY
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED

@AbapCatalog.dataMaintenance: #RESTRICTED

@ObjectModel: {
  modelingPattern: #ANALYTICAL_DIMENSION,
   supportedCapabilities: [ #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #CDS_MODELING_ASSOCIATION_TARGET ],
   semanticKey:       [ 'ProjectDemand' ],
   representativeKey: 'ProjectDemandUUID',
   usageType: {
     serviceQuality:  #A,
     dataClass:       #TRANSACTIONAL,
     sizeCategory:    #XL
   }
}

@Search.searchable: true
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Project Demand'

define view entity R_ProjectDemand
  as select from projectdemand

  // BO internal associations

  association [0..1] to R_ProjectDemandMaterial    as _Material // will be limited by coding, validation required

                                                                                on _Material.ProjectDemandUUID = $projection.ProjectDemandUUID
  association [0..1] to R_ProjectDemandService     as _Service  // will be limited by coding, validation required

                                                                                on _Service.ProjectDemandUUID = $projection.ProjectDemandUUID
  association [0..1] to R_ProjectDemandWork        as _Work     // will be limited by coding, validation required

                                                                                on _Work.ProjectDemandUUID = $projection.ProjectDemandUUID
  association [0..1] to R_ProjectDemandExpense     as _Expense                  on _Expense.ProjectDemandUUID = $projection.ProjectDemandUUID

  //extention

  association [1..1] to E_ProjectDemand            as _ProjectdemandExtension   on $projection.ProjectDemandUUID = _ProjectdemandExtension.ProjectDemandUUID

  // external associations

  association [0..1] to I_ProjectDemandSituation   as _ProjectDemandVH          on $projection.ProjectDemandUUID = _ProjectDemandVH.ProjectDemandUUID
  association [1..1] to I_ProjectDemandCategory    as _ProjectDemandCategory    on $projection.ProjectDemandCategory = _ProjectDemandCategory.ProjectDemandCategory
  association [1..1] to I_ProjectDemandType        as _ProjectDemandType        on $projection.ProjectDemandType = _ProjectDemandType.ProjectDemandType
  association [1..1] to I_EnterpriseProject        as _Project                  on $projection.ProjectUUID =  _Project.ProjectUUID
   // required to use R_view because of PST

//  association [0..1] to R_EnterpriseProjectElement as _WorkPackage              on $projection.ReferencedObjectUUID = _WorkPackage.ProjectElementUUID 

  association [0..1] to I_EnterpriseProjectElement_2 as _WorkPackage              on $projection.ReferencedObjectUUID = _WorkPackage.ProjectElementUUID
  association [1..1] to I_ProjectDemandStatus      as _ProjectDemandStatus      on $projection.ProjectDemandStatus = _ProjectDemandStatus.ProjectDemandStatus
  association [0..1] to I_Currency                 as _ProjectDemandCurrency    on $projection.ProjectDemandRequestCurrency = _ProjectDemandCurrency.Currency
  association [0..1] to I_Currency                 as _ProjectDemandNetCurrency on $projection.ProjDmndReqNetAmountCurrency = _ProjectDemandNetCurrency.Currency
  association [0..1] to I_UnitOfMeasureStdVH       as _ProjDmndQuantityUnit     on $projection.ProjDmndRequestedQuantityUnit = _ProjDmndQuantityUnit.UnitOfMeasure
  association [0..1] to I_PlantStdVH               as _Plant                    on $projection.Plant = _Plant.Plant
  association [0..1] to I_PurchasingGroup          as _PurchasingGroup          on $projection.PurchasingGroup = _PurchasingGroup.PurchasingGroup
  association [0..1] to I_PurchasingOrganization   as _PurchasingOrganisation   on $projection.PurchasingOrganization = _PurchasingOrganisation.PurchasingOrganization
  association [0..1] to I_ProjDmndLastUpdateSource as _ProjDmndLastUpdateSource on $projection.ProjectDemandLastUpdateSource = _ProjDmndLastUpdateSource.ProjectDemandLastUpdateSource
  //For Cat 7 Authorization                                                                                      

  association [0..1] to I_EnterpriseProjectForUser as _EnterpriseProjectForUser on _EnterpriseProjectForUser.ProjectUUID = $projection.ProjectUUID
{

  key projectdemanduuid              as ProjectDemandUUID,
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.9
      @Search.ranking: #HIGH
      @ObjectModel.text.element: [ 'ProjectDemandName' ]
      projectdemand                  as ProjectDemand,
      @Semantics.text: true
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.9
      @Search.ranking: #HIGH
      projectdemandname              as ProjectDemandName,
      @Semantics.text: true
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #MEDIUM
      projectdemanddescription       as ProjectDemandDescription,
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.7
      @Search.ranking: #MEDIUM
      @ObjectModel.foreignKey.association: '_ProjectDemandCategory'
      projectdemandcategory          as ProjectDemandCategory,
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.7
      @Search.ranking: #MEDIUM
      @ObjectModel.foreignKey.association: '_ProjectDemandType'
      projectdemandtype              as ProjectDemandType,

      @ObjectModel.foreignKey.association:    '_Project'
      projectuuid           as ProjectUUID,
      
      // usually this is a workpackage in S4CE

      @ObjectModel.foreignKey.association:    '_WorkPackage'
      referencedobjectuuid           as ReferencedObjectUUID,

      @ObjectModel.foreignKey.association: '_ProjectDemandStatus'
      projectdemandstatus            as ProjectDemandStatus,

      projectdemanddatemaintenance   as ProjectDemandDateMaintenance,
      projectdemandstartdate         as ProjectDemandStartDate,
      projectdemandenddate           as ProjectDemandEndDate,

      projectdemandreleaseddatetime  as ProjectDemandReleasedDateTime,
      projdmndactualsupplydate       as ProjDmndActualSupplyDate,

      @Semantics: { amount : {currencyCode: 'ProjectDemandRequestCurrency'} }
      projectdemandperunitamount     as ProjectDemandPerUnitAmount,

      @ObjectModel.foreignKey.association:    '_ProjectDemandCurrency'
      projectdemandrequestcurrency   as ProjectDemandRequestCurrency,


      @Semantics: { amount : {currencyCode: 'ProjDmndReqNetAmountCurrency'} }
      projectdemandrequestnetamount  as ProjectDemandRequestNetAmount,

      @ObjectModel.foreignKey.association:    '_ProjectDemandNetCurrency'
      projdmndreqnetamountcurrency   as ProjDmndReqNetAmountCurrency,

      @Semantics: { amount : {currencyCode: 'ProjectDemandRequestCurrency'} }
      projectdemandoverallamount     as ProjectDemandOverallAmount,


      @Semantics: { quantity : {unitOfMeasure: 'ProjDmndRequestedQuantityUnit'} }
      projdmndrequestedquantity      as ProjDmndRequestedQuantity,

      @ObjectModel.foreignKey.association:    '_ProjDmndQuantityUnit'
      projdmndrequestedquantityunit  as ProjDmndRequestedQuantityUnit,

      priceunitqty                   as PriceUnitQty,

      @ObjectModel.foreignKey.association:    '_Plant'
      plant                          as Plant,

      @ObjectModel.foreignKey.association:    '_PurchasingGroup'
      purchasinggroup                as PurchasingGroup,

      @ObjectModel.foreignKey.association:    '_PurchasingOrganisation'
      purchasingorganization         as PurchasingOrganization,

      // only used by PSA Work

      @ObjectModel.foreignKey.association:    '_ProjDmndLastUpdateSource'
      projectdemandlastupdatesource  as ProjectDemandLastUpdateSource,

      @Semantics.user.createdBy: true
      createdbyuser                  as CreatedByUser,
      @Semantics.systemDateTime.createdAt: true
      creationdatetime               as CreationDateTime,


      @Semantics.user.localInstanceLastChangedBy: true
      lastchangedbyuser              as LastChangedByUser,


      @Semantics.systemDateTime.localInstanceLastChangedAt: true
      lastchangedatetime             as LastChangeDateTime,
      @Semantics.user.lastChangedBy: true
      projectdemandlastchangedbyuser as ProjectDemandLastChangedByUser,
      @Semantics.systemDateTime.lastChangedAt: true
      projdemandlastchangedatetime   as ProjDemandLastChangeDateTime,

      projdmndexternalreferenceuuid  as ProjDmndExternalReferenceUUID,

      // BO internal associations

      _Material,
      _Service,
      _Work,
      _Expense,

      // external associations

      _ProjectDemandCategory,
      _ProjectDemandType,
      _Project,
      _WorkPackage,
      _ProjectDemandStatus,
      _ProjectDemandCurrency,
      _ProjectDemandNetCurrency,
      _ProjDmndLastUpdateSource,

      _ProjDmndQuantityUnit,
      _ProjectDemandVH,
      _Plant,
      _PurchasingGroup,
      _PurchasingOrganisation,
//      _ProjectdemandExtension  //View must not expose association _ProjectdemandExtension to extension include view E_PROJECTDEMAND

      _EnterpriseProjectForUser
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"PROJECTDEMAND"
],
"ASSOCIATED":
[
"I_CURRENCY",
"I_ENTERPRISEPROJECT",
"I_ENTERPRISEPROJECTELEMENT_2",
"I_ENTERPRISEPROJECTFORUSER",
"I_PLANTSTDVH",
"I_PROJDMNDLASTUPDATESOURCE",
"I_PROJECTDEMANDCATEGORY",
"I_PROJECTDEMANDSITUATION",
"I_PROJECTDEMANDSTATUS",
"I_PROJECTDEMANDTYPE",
"I_PURCHASINGGROUP",
"I_PURCHASINGORGANIZATION",
"I_UNITOFMEASURESTDVH",
"R_PROJECTDEMANDEXPENSE",
"R_PROJECTDEMANDMATERIAL",
"R_PROJECTDEMANDSERVICE",
"R_PROJECTDEMANDWORK"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/