I_CustProjSlsOrdPartner

DDL: I_CUSTPROJSLSORDPARTNER SQL: ICUSTPROJSOHP Type: view COMPOSITE Package: SD_SLS_PBS

Sales Order Partner for Customer Project

I_CustProjSlsOrdPartner is a Composite CDS View that provides data about "Sales Order Partner for Customer Project" in SAP S/4HANA. It reads from 2 data sources (I_CustProjSlsOrd, I_SalesOrderPartner) and exposes 24 fields with key fields CustomerProject, PartnerFunction. It has 3 associations to related views. Part of development package SD_SLS_PBS.

Data Sources (2)

SourceAliasJoin Type
I_CustProjSlsOrd CustProjSlsOrd inner
I_SalesOrderPartner SalesOrderPartner from

Associations (3)

CardinalityTargetAliasCondition
[1..1] I_SalesOrder _SalesOrder $projection.SalesOrder = _SalesOrder.SalesOrder
[1..1] I_CustProjSlsOrd _CustProjSlsOrd $projection.CustomerProject = _CustProjSlsOrd.CustomerProject
[1..1] I_CustomerProject _CustomerProject $projection.CustomerProject = _CustomerProject.CustomerProject

Annotations (14)

NameValueLevelField
AbapCatalog.sqlViewName ICUSTPROJSOHP view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ObjectModel.representativeKey PartnerFunction view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Sales Order Partner for Customer Project view

Fields (24)

KeyFieldSource TableSource FieldDescription
KEY CustomerProject I_CustProjSlsOrd CustomerProject
KEY PartnerFunction I_SalesOrderPartner PartnerFunction
SalesOrder I_SalesOrderPartner SalesOrder
Partner I_SalesOrderPartner Partner
ContactPerson I_SalesOrderPartner ContactPerson
AddressID I_SalesOrderPartner AddressID
AddressPersonID I_SalesOrderPartner AddressPersonID
AddressObjectType I_SalesOrderPartner AddressObjectType
SDDocPartnerAddressRefType I_SalesOrderPartner SDDocPartnerAddressRefType
ReferenceBusinessPartner I_SalesOrderPartner ReferenceBusinessPartner
BPAddrDeterminationTransaction I_SalesOrderPartner BPAddrDeterminationTransaction
BPRefAddressIDForDocSpcfcAddr I_SalesOrderPartner BPRefAddressIDForDocSpcfcAddr
SalesOrderType I_CustProjSlsOrd SalesOrderType
OrganizationDivision I_CustProjSlsOrd OrganizationDivision
SalesOrganization I_CustProjSlsOrd SalesOrganization
DistributionChannel I_CustProjSlsOrd DistributionChannel
_CustomerProject _CustomerProject
_CustProjSlsOrd _CustProjSlsOrd
_SalesOrder _SalesOrder
_PartnerFunction I_SalesOrderPartner _PartnerFunction
_Address I_SalesOrderPartner _Address
_DfltAddrRprstn I_SalesOrderPartner _DfltAddrRprstn
_BusinessPartnerAddress I_SalesOrderPartner _BusinessPartnerAddress
_BPRefAddressForDocSpcfcAddr I_SalesOrderPartner _BPRefAddressForDocSpcfcAddr
@AbapCatalog.sqlViewName: 'ICUSTPROJSOHP'
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #BLOCKED_DATA_EXCLUDED,
  privilegedAssociations:  [ '_Address', '_DfltAddrRprstn' ]
}
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true

@ObjectModel: {
   representativeKey: 'PartnerFunction',
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #C,
     sizeCategory:   #XL
   },
   supportedCapabilities: [ #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE ],
   modelingPattern: [ #NONE ]
}
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Sales Order Partner for Customer Project'
define view I_CustProjSlsOrdPartner
  as select from I_SalesOrderPartner as SalesOrderPartner
    inner join   I_CustProjSlsOrd    as CustProjSlsOrd on SalesOrderPartner.SalesOrder = CustProjSlsOrd.SalesOrder

  association [1..1] to I_SalesOrder      as _SalesOrder      on $projection.SalesOrder = _SalesOrder.SalesOrder
  association [1..1] to I_CustProjSlsOrd  as _CustProjSlsOrd  on $projection.CustomerProject = _CustProjSlsOrd.CustomerProject
  association [1..1] to I_CustomerProject as _CustomerProject on $projection.CustomerProject = _CustomerProject.CustomerProject
                                                                                 
{
    //  @Consumption.valueHelpDefinition: [

      //      { entity:  { name:    'I_CustomerProjectVH',

        //                 element: 'CustomerProject' }

          //  }]

      @ObjectModel.foreignKey.association: '_CustomerProject'
  key CustProjSlsOrd.CustomerProject,

      @ObjectModel.foreignKey.association: '_PartnerFunction'
  key SalesOrderPartner.PartnerFunction,

      @ObjectModel.foreignKey.association: '_SalesOrder'
      SalesOrderPartner.SalesOrder,
      
      SalesOrderPartner.Partner,
      
      //used for multiple addresses feature

      @Consumption.hidden: true
      SalesOrderPartner.ContactPerson,
   
      @ObjectModel.foreignKey.association: '_Address'
      SalesOrderPartner.AddressID,
      
      SalesOrderPartner.AddressPersonID,
      
      SalesOrderPartner.AddressObjectType,
      
      SalesOrderPartner.SDDocPartnerAddressRefType,
      
      SalesOrderPartner.ReferenceBusinessPartner,
      
      SalesOrderPartner.BPAddrDeterminationTransaction,
      
      SalesOrderPartner.BPRefAddressIDForDocSpcfcAddr,
      

      // For Access control

      @Consumption.hidden: true
      CustProjSlsOrd.SalesOrderType,
      //_SalesOrder.SalesOrderType,

      @Consumption.hidden: true
      CustProjSlsOrd.OrganizationDivision,
      @Consumption.hidden: true
      CustProjSlsOrd.SalesOrganization,
      @Consumption.hidden: true
      CustProjSlsOrd.DistributionChannel,

      //Association

      _CustomerProject,
      _CustProjSlsOrd,
      _SalesOrder,
      SalesOrderPartner._PartnerFunction,
      SalesOrderPartner._Address,
      SalesOrderPartner._DfltAddrRprstn,
      SalesOrderPartner._BusinessPartnerAddress,
      SalesOrderPartner._BPRefAddressForDocSpcfcAddr
      
}