A_CustomerReturnPartner

DDL: A_CUSTOMERRETURNPARTNER Type: view COMPOSITE Package: ODATA_SD_RETURN_V2

Header Partner

A_CustomerReturnPartner is a Composite CDS View that provides data about "Header Partner" in SAP S/4HANA. It reads from 2 data sources (I_SalesDocumentBasic, I_SDDocumentPartner) and exposes 14 fields with key fields CustomerReturn, PartnerFunction. It has 2 associations to related views. Part of development package ODATA_SD_RETURN_V2.

Data Sources (2)

SourceAliasJoin Type
I_SalesDocumentBasic CustomerReturn inner
I_SDDocumentPartner Partner from

Associations (2)

CardinalityTargetAliasCondition
[1..1] A_CustomerReturn _CustomerReturn _CustomerReturn.CustomerReturn = $projection.CustomerReturn
[0..1] I_BusPartAddress _BusinessPartnerAddressCP Partner.AddressID = _BusinessPartnerAddressCP.AddressID and $projection.ContactPerson is not initial and Partner.SDDocPartnerAddressRefType = 'I'

Annotations (14)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Header Partner view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AbapCatalog.sqlViewName ACRPARTNER view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
Metadata.ignorePropagatedAnnotations true view

Fields (14)

KeyFieldSource TableSource FieldDescription
KEY CustomerReturn SDDocument
KEY PartnerFunction PartnerFunction
PartnerFunctionInternalCode
Customer Customer
Supplier Supplier
Personnel Personnel
ContactPerson ContactPerson
ReferenceBusinessPartner ReferenceBusinessPartner
BPRefAddrForDocSpcfcAddrUUID
CustomerReturnType I_SalesDocumentBasic SalesDocumentType
OrganizationDivision I_SalesDocumentBasic OrganizationDivision
SalesOrganization I_SalesDocumentBasic SalesOrganization
DistributionChannel I_SalesDocumentBasic DistributionChannel
_CustomerReturn _CustomerReturn
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Header Partner'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
  sqlViewName: 'ACRPARTNER',
  compiler.compareFilter: true
}
@AccessControl: { 
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
   createEnabled: true,
   updateEnabled: true,
   deleteEnabled: true,
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #C,
     sizeCategory:   #XL
   }
}
@Metadata.ignorePropagatedAnnotations: true

define view A_CustomerReturnPartner
  as select from I_SDDocumentPartner as Partner
    inner join I_SalesDocumentBasic as CustomerReturn on CustomerReturn.SalesDocument = Partner.SDDocument // needed for DCL

                                                  and CustomerReturn.SDDocumentCategory     = 'H'
    
   association [1..1] to A_CustomerReturn              as _CustomerReturn     on  _CustomerReturn.CustomerReturn = $projection.CustomerReturn
   
   association [0..1] to I_BusPartAddress as _BusinessPartnerAddressCP      on Partner.AddressID = _BusinessPartnerAddressCP.AddressID
                                                                           and $projection.ContactPerson is not initial
                                                                           and Partner.SDDocPartnerAddressRefType =  'I'                                                
{
      @ObjectModel.readOnly: true
  key SDDocument as CustomerReturn,

      @ObjectModel.sapObjectNodeTypeReference: 'PartnerFunction'
  key PartnerFunction,
  
      @ObjectModel.readOnly: true
      cast(PartnerFunction as parvw_unv preserving type )    as PartnerFunctionInternalCode,

      Customer,
      
      Supplier,

      Personnel,

      ContactPerson,
      
      @ObjectModel.readOnly: true
      ReferenceBusinessPartner,
      
      @Feature: 'SW:Q2C_MULTIPLE_BP_ADDRESSES3, SW:Q2C_MULTIPLE_BP_ADDRESSES2'
      case ContactPerson
        when '0000000000' then
         _BusinessPartnerAddress.AddressUUID
       else
         _BusinessPartnerAddressCP.AddressUUID
                                                    end as BusinessPartnerAddressUUID,      
      
      @Feature: 'SW:Q2C_MULTIPLE_BP_ADDRESSES3, SW:Q2C_MULTIPLE_BP_ADDRESSES2'
      @ObjectModel.readOnly: true  
      Partner._BPRefAddressForDocSpcfcAddr.AddressUUID  as BPRefAddrForDocSpcfcAddrUUID, 
      
      // For Access control

      @Consumption.hidden: true
      CustomerReturn.SalesDocumentType as CustomerReturnType,
      @Consumption.hidden: true
      CustomerReturn.OrganizationDivision,
      @Consumption.hidden: true
      CustomerReturn.SalesOrganization,
      @Consumption.hidden: true
      CustomerReturn.DistributionChannel,
      
      //Expose associations

      _CustomerReturn 
}