A_CustomerReturnItemPartner

DDL: A_CUSTOMERRETURNITEMPARTNER Type: view COMPOSITE Package: ODATA_SD_RETURN_V2

Item Partner

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

Data Sources (2)

SourceAliasJoin Type
I_SalesDocumentBasic CustomerReturn inner
I_SDDocumentItemPartner Partner from

Associations (3)

CardinalityTargetAliasCondition
[1..1] A_CustomerReturn _CustomerReturn $projection.CustomerReturn = _CustomerReturn.CustomerReturn
[1..1] A_CustomerReturnItem _CustomerReturnItem $projection.CustomerReturn = _CustomerReturnItem.CustomerReturn and $projection.CustomerReturnItem = _CustomerReturnItem.CustomerReturnItem
[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 Item Partner view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AbapCatalog.sqlViewName ACRITMPARTNER 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 (16)

KeyFieldSource TableSource FieldDescription
KEY CustomerReturn SDDocument
KEY CustomerReturnItem SDDocumentItem
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
_CustomerReturnItem _CustomerReturnItem
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Item Partner'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
  sqlViewName: 'ACRITMPARTNER',
  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_CustomerReturnItemPartner
  as select from I_SDDocumentItemPartner as Partner
    inner join   I_SalesDocumentBasic    as CustomerReturn on  CustomerReturn.SalesDocument = Partner.SDDocument
                                                       and SDDocumentCategory       = 'H'

  association [1..1] to A_CustomerReturn     as _CustomerReturn     on  $projection.CustomerReturn = _CustomerReturn.CustomerReturn
  association [1..1] to A_CustomerReturnItem as _CustomerReturnItem on  $projection.CustomerReturn     = _CustomerReturnItem.CustomerReturn
                                                            and $projection.CustomerReturnItem = _CustomerReturnItem.CustomerReturnItem
  
  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.readOnly: true
  key SDDocumentItem                                  as CustomerReturnItem,

      @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,
      _CustomerReturnItem
}