R_SOURCINGPROJECTCONTACT

CDS View

Contact for Sourcing Project

R_SOURCINGPROJECTCONTACT is a CDS View in S/4HANA. Contact for Sourcing Project. 2 CDS views read from this table.

CDS Views using this table (2)

ViewTypeJoinVDMDescription
C_SrcgProjPLMCollabnContactVH view_entity from CONSUMPTION SP PLM Collaboration Participants
I_SourcingProjectContact view_entity from BASIC Contact for Sourcing Project
@ClientHandling.algorithm: #SESSION_VARIABLE

@AbapCatalog: { sqlViewName:              'RSRCGPROJCNT',
                compiler.compareFilter:   true,
                preserveKey:              true
}

@AccessControl: { authorizationCheck:     #MANDATORY,
                  personalData.blocking:  #REQUIRED
}

@ObjectModel:{ representativeKey:         'SourcingProjectContactUUID',
               usageType.dataClass:       #TRANSACTIONAL,
               usageType.serviceQuality:  #A,
               usageType.sizeCategory:    #L
}

@VDM: { viewType:                 #BASIC,
        lifecycle.contract.type:  #SAP_INTERNAL_API
}

@EndUserText.label: 'Contact for Sourcing Project'
define view R_SourcingProjectContact
  as select from mmsrcgpcontact

  association [1..1] to R_SourcingProject           as _SourcingProject           on $projection.SourcingProjectUUID = _SourcingProject.SourcingProjectUUID

  //foreign key associations

  association [0..1] to I_SourcingProjectContactCat as _SourcingProjectContactCat on $projection.SourcingProjectContactCategory = _SourcingProjectContactCat.SourcingProjectContactCategory
  association [0..1] to I_BusinessPartner           as _BusinessPartner           on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
  association [0..1] to I_WorkplaceAddress          as _WorkplaceAddress          on $projection.businesspartneruuid = _WorkplaceAddress.BusinessPartnerUUID
                                                                                  and _WorkplaceAddress.IsBusinessPurposeCompleted <> 'X'
//  association [0..1] to I_SrcgProjCntctWorkplaceAddr as _WorkplaceAddress          on $projection.businesspartneruuid = _WorkplaceAddress.BusinessPartnerUUID

  //Extension

  association [1..1] to E_SourcingProjectContact    as _Extension                 on $projection.SourcingProjectContactUUID = _Extension.SourcingProjectContactUUID

{
  key sourcingprojectcontactuuid    as SourcingProjectContactUUID,

      sourcingprojectuuid           as SourcingProjectUUID,
 
      @ObjectModel.foreignKey.association: '_SourcingProjectContactCat'
      sourcingprojectcontacttype    as SourcingProjectContactCategory,

      @ObjectModel.foreignKey.association: '_BusinessPartner'
      businesspartner               as BusinessPartner,

      srcgprojcntctisvisibletosuplr as SrcgProjCntctIsVisibleToSuplr,
      srcgprojcontactiscontributor  as SrcgProjContactIsContributor,
      sourcingorigin                as SourcingOrigin, 
      sourcingscenario              as SourcingScenario, 
      userid                        as UserID,
      
      @UI.hidden: true
      @Consumption.hidden:true
      _BusinessPartner.BusinessPartnerUUID, //to be removed

      _BusinessPartner.IsBusinessPurposeCompleted,
      _BusinessPartner.AuthorizationGroup,

      /* Associations */
      _SourcingProject,

      //foreign key associations

      _SourcingProjectContactCat,
      _BusinessPartner,
      _WorkplaceAddress
}