R_SalesOrderItemPartnerTP

DDL: R_SALESORDERITEMPARTNERTP Type: view_entity TRANSACTIONAL Package: RAP_SD_SLS_SO

Partner for Sales Order Item - TP

R_SalesOrderItemPartnerTP is a Transactional CDS View that provides data about "Partner for Sales Order Item - TP" in SAP S/4HANA. It reads from 2 data sources (I_SalesDocumentBasic, I_SalesDocItemCompletePartner) and exposes 64 fields with key fields SalesOrder, SalesOrderItem, PartnerFunction. It has 9 associations to related views. Part of development package RAP_SD_SLS_SO.

Data Sources (2)

SourceAliasJoin Type
I_SalesDocumentBasic SalesOrder inner
I_SalesDocItemCompletePartner SalesOrderItemPartner from

Associations (9)

CardinalityTargetAliasCondition
[1..1] R_SalesOrderTP _SalesOrder $projection.SalesOrder = _SalesOrder.SalesOrder
[0..1] I_PartnerFunction _PartnerFunction $projection.PartnerFunctionForEdit = _PartnerFunction.PartnerFunction
[0..1] I_FormOfAddress _FormOfAddress $projection.FormOfAddress = _FormOfAddress.FormOfAddress
[0..1] I_Language _CorrespondenceLanguage $projection.CorrespondenceLanguage = _CorrespondenceLanguage.Language
[0..1] I_TransportationZone _TransportationZone $projection.transportzone = _TransportationZone.TransportZone and $projection.country = _TransportationZone.CountryCode
[0..1] I_AddrCurDfltLandlinePhoneNmbr _CurrentDfltLandlinePhoneNmbr $projection.AddressID = _CurrentDfltLandlinePhoneNmbr.AddressID and $projection.AddressPersonID = _CurrentDfltLandlinePhoneNmbr.AddressPersonID
[0..1] I_AddrCurDfltMobilePhoneNumber _CurrentDfltMobilePhoneNumber $projection.AddressID = _CurrentDfltMobilePhoneNumber.AddressID and $projection.AddressPersonID = _CurrentDfltMobilePhoneNumber.AddressPersonID
[0..1] I_AddrCurDefaultFaxNumber _CurrentDfltFaxNumber $projection.AddressID = _CurrentDfltFaxNumber.AddressID and $projection.AddressPersonID = _CurrentDfltFaxNumber.AddressPersonID
[1] I_WorkplaceAddress _WorkPlaceAddress $projection.ReferenceBusinessPartner = _WorkPlaceAddress.BusinessPartner

Annotations (8)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
EndUserText.label Partner for Sales Order Item - TP view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
VDM.viewType #TRANSACTIONAL view

Fields (64)

KeyFieldSource TableSource FieldDescription
KEY SalesOrder
KEY SalesOrderItem
KEY PartnerFunction
PartnerFunctionForEdit
Customer I_SalesDocItemCompletePartner Customer
Supplier I_SalesDocItemCompletePartner Supplier
Personnel I_SalesDocItemCompletePartner Personnel
ContactPerson I_SalesDocItemCompletePartner ContactPerson
Partner I_SalesDocItemCompletePartner Partner
BusinessPartnerName1
BusinessPartnerName2
BusinessPartnerName3
BusinessPartnerName4
FullName I_SalesDocItemCompletePartner FullName
SDDocumentPartnerType _PartnerFunction SDDocumentPartnerType
FormOfAddress I_SalesDocItemCompletePartner FormOfAddress
StreetName
StreetPrefixName1
StreetPrefixName2
StreetSuffixName1
StreetSuffixName2
HouseNumber
PostalCode
Country
Region
DistrictName
CityName
POBox
POBoxPostalCode
CorrespondenceLanguage I_SalesDocItemCompletePartner CorrespondenceLanguage
TaxJurisdiction
TransportZone
PartnerIsSpecificForSDDocItem I_SalesDocItemCompletePartner PartnerIsSpecificForSDDocItem
ReferenceBusinessPartner I_SalesDocItemCompletePartner ReferenceBusinessPartner
AddressID I_SalesDocItemCompletePartner AddressID
AddressPersonID I_SalesDocItemCompletePartner AddressPersonID
AddressObjectType I_SalesDocItemCompletePartner AddressObjectType
SDDocPartnerAddrIsDocSpecific I_SalesDocItemCompletePartner SDDocPartnerAddrIsDocSpecific
VATRegistration I_SalesDocItemCompletePartner VATRegistration
UnloadingPointName I_SalesDocItemCompletePartner UnloadingPointName
InternationalPhoneNumber I_SalesDocItemCompletePartner InternationalPhoneNumber
InternationalMobilePhoneNumber I_SalesDocItemCompletePartner InternationalMobilePhoneNumber
InternationalFaxNumber I_SalesDocItemCompletePartner InternationalFaxNumber
EmailAddress I_SalesDocItemCompletePartner EmailAddress
SDDocPartnerAddressRefType I_SalesDocItemCompletePartner SDDocPartnerAddressRefType
BPAddrDeterminationTransaction I_SalesDocItemCompletePartner BPAddrDeterminationTransaction
BPRefAddressIDForDocSpcfcAddr I_SalesDocItemCompletePartner BPRefAddressIDForDocSpcfcAddr
PartnerIsOneTimeAccount I_SalesDocItemCompletePartner PartnerIsOneTimeAccount
SalesOrderType _SalesOrder SalesOrderType
SalesOrganization _SalesOrder SalesOrganization
DistributionChannel _SalesOrder DistributionChannel
OrganizationDivision _SalesOrder OrganizationDivision
_Item _Item
_SalesOrder _SalesOrder
_PartnerFunction _PartnerFunction
_CorrespondenceLanguage _CorrespondenceLanguage
_TransportationZone _TransportationZone
_FormOfAddress _FormOfAddress
_ContactPerson I_SalesDocItemCompletePartner _ContactPerson
_DfltAddrRprstn I_SalesDocItemCompletePartner _DfltAddrRprstn
_BusinessPartnerAddress I_SalesDocItemCompletePartner _BusinessPartnerAddress
_BPRefAddressForDocSpcfcAddr I_SalesDocItemCompletePartner _BPRefAddressForDocSpcfcAddr
_Country
_Region
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #('TRANSACTIONAL_DATA')
@AccessControl.privilegedAssociations: [ '_DfltAddrRprstn' ]

@EndUserText.label: 'Partner for Sales Order Item - TP'

@Metadata.ignorePropagatedAnnotations: true

@ObjectModel.semanticKey: [ 'SalesOrder', 'SalesOrderItem', 'PartnerFunction' ]
@ObjectModel.usageType: { dataClass: #TRANSACTIONAL, serviceQuality: #C, sizeCategory: #L }

@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@VDM.viewType: #TRANSACTIONAL
@Consumption.dbHints: [ 'USE_HEX_PLAN', 'NO_SUBPLAN_SHARING' ]

define view entity R_SalesOrderItemPartnerTP
  as select from I_SalesDocItemCompletePartner as SalesOrderItemPartner

    inner join   I_SalesDocumentBasic          as SalesOrder
      on  SalesOrder.SalesDocument      = SalesOrderItemPartner.SalesDocument
      and SalesOrder.SDDocumentCategory = 'C'

  association to parent R_SalesOrderItemTP   as _Item
    on  $projection.SalesOrder     = _Item.SalesOrder
    and $projection.SalesOrderItem = _Item.SalesOrderItem

  association [1..1] to R_SalesOrderTP       as _SalesOrder
    on $projection.SalesOrder = _SalesOrder.SalesOrder

  association [0..1] to I_PartnerFunction    as _PartnerFunction
    on $projection.PartnerFunctionForEdit = _PartnerFunction.PartnerFunction

  association [0..1] to I_FormOfAddress      as _FormOfAddress
    on $projection.FormOfAddress = _FormOfAddress.FormOfAddress

  association [0..1] to I_Language           as _CorrespondenceLanguage
    on $projection.CorrespondenceLanguage = _CorrespondenceLanguage.Language

  association [0..1] to I_TransportationZone as _TransportationZone
    on  $projection.transportzone = _TransportationZone.TransportZone
    and $projection.country       = _TransportationZone.CountryCode

  association [0..1] to I_AddrCurDfltLandlinePhoneNmbr as _CurrentDfltLandlinePhoneNmbr on  $projection.AddressID       = _CurrentDfltLandlinePhoneNmbr.AddressID
                                                                                        and $projection.AddressPersonID = _CurrentDfltLandlinePhoneNmbr.AddressPersonID

  association [0..1] to I_AddrCurDfltMobilePhoneNumber as _CurrentDfltMobilePhoneNumber on  $projection.AddressID       = _CurrentDfltMobilePhoneNumber.AddressID
                                                                                        and $projection.AddressPersonID = _CurrentDfltMobilePhoneNumber.AddressPersonID

  association [0..1] to I_AddrCurDefaultFaxNumber      as _CurrentDfltFaxNumber         on  $projection.AddressID       = _CurrentDfltFaxNumber.AddressID
                                                                                        and $projection.AddressPersonID = _CurrentDfltFaxNumber.AddressPersonID

  association [1]    to I_WorkplaceAddress             as _WorkPlaceAddress             on  $projection.ReferenceBusinessPartner = _WorkPlaceAddress.BusinessPartner
  
{
  key cast(SalesOrderItemPartner.SalesDocument as vdm_sales_order preserving type)      as SalesOrder,
  key cast(SalesOrderItemPartner.SalesDocumentItem as sales_order_item preserving type) as SalesOrderItem,
  key cast(SalesOrderItemPartner.PartnerFunction as parvw_unv preserving type)          as PartnerFunction,

      @ObjectModel.foreignKey.association: '_PartnerFunction'
      cast(SalesOrderItemPartner.PartnerFunction as parvw_unv preserving type)          as PartnerFunctionForEdit,

      SalesOrderItemPartner.Customer,

      SalesOrderItemPartner.Supplier,

      SalesOrderItemPartner.Personnel,

      SalesOrderItemPartner.ContactPerson,

      @ObjectModel.text.element: [ 'FullName' ]
      SalesOrderItemPartner.Partner,

      @ObjectModel.virtualElement: true
      cast('' as ad_name1)                                                              as BusinessPartnerName1,

      @ObjectModel.virtualElement: true
      cast('' as ad_name2)                                                              as BusinessPartnerName2,

      @ObjectModel.virtualElement: true
      cast('' as ad_name3)                                                              as BusinessPartnerName3,

      @ObjectModel.virtualElement: true
      cast('' as ad_name4)                                                              as BusinessPartnerName4,

      @Semantics.name.fullName: true
      @Semantics.text: true
      SalesOrderItemPartner.FullName,

      _PartnerFunction.SDDocumentPartnerType,

      @ObjectModel.foreignKey.association: '_FormOfAddress'
      @Semantics.name.jobTitle: true
      SalesOrderItemPartner.FormOfAddress,

      @Semantics.address.street: true
      SalesOrderItemPartner._OrgNamePostalAddress.StreetName,
      
      @Semantics.address.street: true
      SalesOrderItemPartner._OrgNamePostalAddress.StreetPrefixName1,

      @Semantics.address.street: true
      SalesOrderItemPartner._OrgNamePostalAddress.StreetPrefixName2,

      @Semantics.address.street: true
      SalesOrderItemPartner._OrgNamePostalAddress.StreetSuffixName1,

      @Semantics.address.street: true
      SalesOrderItemPartner._OrgNamePostalAddress.StreetSuffixName2,
      
      @Semantics.address.streetNoNumber: true
      SalesOrderItemPartner._OrgNamePostalAddress.HouseNumber,

      @Semantics.address.zipCode: true
      SalesOrderItemPartner._OrgNamePostalAddress.PostalCode,

      @ObjectModel.foreignKey.association: '_Country'
      @Semantics.address.country: true
      SalesOrderItemPartner._OrgNamePostalAddress.Country,

      @ObjectModel.foreignKey.association: '_Region'
      @Semantics.address.region: true
      SalesOrderItemPartner._OrgNamePostalAddress.Region,

      SalesOrderItemPartner._OrgNamePostalAddress.DistrictName,

      @Semantics.address.city: true
      SalesOrderItemPartner._OrgNamePostalAddress.CityName,

      @Semantics.address.postBox: true
      SalesOrderItemPartner._OrgNamePostalAddress.POBox,

      @Semantics.address.zipCode: true
      SalesOrderItemPartner._OrgNamePostalAddress.POBoxPostalCode,

      @ObjectModel.foreignKey.association: '_CorrespondenceLanguage'
      SalesOrderItemPartner.CorrespondenceLanguage,

      SalesOrderItemPartner._OrgNamePostalAddress.TaxJurisdiction,

      @ObjectModel.foreignKey.association: '_TransportationZone'
      SalesOrderItemPartner._OrgNamePostalAddress.TransportZone,

      SalesOrderItemPartner.PartnerIsSpecificForSDDocItem,

      SalesOrderItemPartner.ReferenceBusinessPartner,

      SalesOrderItemPartner.AddressID,

      SalesOrderItemPartner.AddressPersonID,

      SalesOrderItemPartner.AddressObjectType,

      SalesOrderItemPartner.SDDocPartnerAddrIsDocSpecific,

      SalesOrderItemPartner.VATRegistration,

      @Semantics.text: true
      SalesOrderItemPartner.UnloadingPointName,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.DestinationLocationCountry
        else
         _CurrentDfltLandlinePhoneNmbr.PhoneNumberCountry
        end
       as ad_comctry preserving type )                                   as PhoneNumberCountry,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.PhoneNumber
        else
         _CurrentDfltLandlinePhoneNmbr.PhoneAreaCodeSubscriberNumber
        end
       as ad_tlnmbr preserving type )                                    as PhoneNumber,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.PhoneNumberExtension
        else
         _CurrentDfltLandlinePhoneNmbr.PhoneExtensionNumber
        end
       as ad_tlxtns preserving type )                                    as PhoneNumberExtension,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.MblPhoneDestinationLocCountry
        else
         _CurrentDfltMobilePhoneNumber.PhoneNumberCountry
        end
       as ad_comctry preserving type )                                   as MobilePhoneCountry,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.MobilePhoneNumber
        else
         _CurrentDfltMobilePhoneNumber.PhoneAreaCodeSubscriberNumber
        end
       as ad_tlnmbr preserving type )                                    as MobilePhoneNumber,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.FaxNumberCountry
        else
         _CurrentDfltFaxNumber.FaxNumberCountry
        end
       as ad_comctry preserving type )                                   as FaxNumberCountry,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.FaxAreaCodeSubscriberNumber
        else
         _CurrentDfltFaxNumber.FaxAreaCodeSubscriberNumber
        end
       as ad_fxnmbr preserving type )                                    as FaxNumber,

      cast(
      case
        when SalesOrderItemPartner.AddressID = ''
        then
         _WorkPlaceAddress.FaxExtensionNumber
        else
         _CurrentDfltFaxNumber.FaxExtensionNumber
        end
       as ad_fxxtns preserving type )                                    as FaxNumberExtension,

      @Semantics.telephone.type: [ #WORK ]
      SalesOrderItemPartner.InternationalPhoneNumber,

      @Semantics.telephone.type: [ #CELL ]
      SalesOrderItemPartner.InternationalMobilePhoneNumber,

      @Semantics.telephone.type: [ #FAX ]
      SalesOrderItemPartner.InternationalFaxNumber,

      @Semantics.eMail: { address: true,
                          type: [ #WORK ] }
      SalesOrderItemPartner.EmailAddress,

      @Consumption.hidden: true
      SalesOrderItemPartner.SDDocPartnerAddressRefType,

      @Consumption.hidden: true
      SalesOrderItemPartner.BPAddrDeterminationTransaction,

      @Consumption.hidden: true
      SalesOrderItemPartner.BPRefAddressIDForDocSpcfcAddr,
      
      SalesOrderItemPartner.PartnerIsOneTimeAccount,

      @Consumption.hidden: true
      _SalesOrder.SalesOrderType,

      @Consumption.hidden: true
      _SalesOrder.SalesOrganization,

      @Consumption.hidden: true
      _SalesOrder.DistributionChannel,

      @Consumption.hidden: true
      _SalesOrder.OrganizationDivision,

      //    Associations

      _Item,
      _SalesOrder,
      _PartnerFunction,
      _CorrespondenceLanguage,
      _TransportationZone,
      _FormOfAddress,

      SalesOrderItemPartner._ContactPerson,
      SalesOrderItemPartner._DfltAddrRprstn,
      SalesOrderItemPartner._BusinessPartnerAddress,
      SalesOrderItemPartner._BPRefAddressForDocSpcfcAddr,
      SalesOrderItemPartner._OrgNamePostalAddress._Country,
      SalesOrderItemPartner._OrgNamePostalAddress._Region
}