R_PPS_PurchaseOrderPartnerTP

DDL: R_PPS_PURCHASEORDERPARTNERTP Type: view_entity TRANSACTIONAL

Purchase Order Partner - TP

R_PPS_PurchaseOrderPartnerTP is a Transactional CDS View that provides data about "Purchase Order Partner - TP" in SAP S/4HANA. It reads from 1 data source (R_PurchaseOrderPartner) and exposes 36 fields with key fields PurchaseOrder, PartnerFunction.

Data Sources (1)

SourceAliasJoin Type
R_PurchaseOrderPartner R_PurchaseOrderPartner from

Annotations (10)

NameValueLevelField
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #BLOCKED_DATA_EXCLUDED view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Purchase Order Partner - TP view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.representativeKey PartnerFunction view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
VDM.viewType #TRANSACTIONAL view

Fields (36)

KeyFieldSource TableSource FieldDescription
KEY PurchaseOrder R_PurchaseOrderPartner PurchaseOrder
KEY PartnerFunction R_PurchaseOrderPartner PartnerFunction
SupplierSubrange R_PurchaseOrderPartner SupplierSubrange
Plant R_PurchaseOrderPartner Plant
PurchasingOrganization R_PurchaseOrderPartner PurchasingOrganization
PartnerCounter R_PurchaseOrderPartner PartnerCounter
CreatedByUser R_PurchaseOrderPartner CreatedByUser
CreationDate R_PurchaseOrderPartner CreationDate
PurchasingDocumentPartnerType R_PurchaseOrderPartner PurchasingDocumentPartnerType
Supplier R_PurchaseOrderPartner Supplier
SupplierHierarchyCategory R_PurchaseOrderPartner SupplierHierarchyCategory
SupplierContact R_PurchaseOrderPartner SupplierContact
PersonWorkAgreement R_PurchaseOrderPartner PersonWorkAgreement
EmploymentInternalID R_PurchaseOrderPartner EmploymentInternalID
DefaultPartner R_PurchaseOrderPartner DefaultPartner
PartnerFunctionForEdit R_PurchaseOrderPartner PartnerFunction
PartnerFunctionName
StreetName
HouseNumber
PostalCode
CityName
Country
CountyCode
Region
PhoneNumber
FaxNumber
EmailAddress
PPSFieldChangeIndicatorBinary
_PartnerFunction R_PurchaseOrderPartner _PartnerFunction
_PartnerFunctionText R_PurchaseOrderPartner _PartnerFunctionText
_PersonWorkAgreement R_PurchaseOrderPartner _PersonWorkAgreement
_Plant R_PurchaseOrderPartner _Plant
_PurchaseOrder _PurchaseOrder
_PurchasingOrganization R_PurchaseOrderPartner _PurchasingOrganization
_Supplier R_PurchaseOrderPartner _Supplier
_SupplierContact R_PurchaseOrderPartner _SupplierContact
//@JIRA-KEY<S4PPS-7444>

@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl: {
  authorizationCheck: #MANDATORY,
  personalData.blocking: #BLOCKED_DATA_EXCLUDED }
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Purchase Order Partner - TP'
@ObjectModel: {
  usageType: {serviceQuality: #C, sizeCategory: #XL, dataClass: #MIXED},
  semanticKey: ['PurchaseOrder', 'PartnerFunction' ],
  representativeKey: 'PartnerFunction' }
@VDM: {
  lifecycle.contract.type: #SAP_INTERNAL_API,
  viewType: #TRANSACTIONAL
  }

define view entity R_PPS_PurchaseOrderPartnerTP
  as select from R_PurchaseOrderPartner
  association to parent R_PPS_PurchaseOrderTP //as _PurchaseOrderTP

  as _PurchaseOrder on $projection.PurchaseOrder = _PurchaseOrder.PurchaseOrder

{
       @ObjectModel.foreignKey.association: '_PurchaseOrder'
  key  R_PurchaseOrderPartner.PurchaseOrder,

  key  R_PurchaseOrderPartner.PartnerFunction,

       R_PurchaseOrderPartner.SupplierSubrange,

       R_PurchaseOrderPartner.Plant,

       R_PurchaseOrderPartner.PurchasingOrganization,

       R_PurchaseOrderPartner.PartnerCounter,

       R_PurchaseOrderPartner.CreatedByUser,

       R_PurchaseOrderPartner.CreationDate,

       R_PurchaseOrderPartner.PurchasingDocumentPartnerType,

       R_PurchaseOrderPartner.Supplier,

       R_PurchaseOrderPartner.SupplierHierarchyCategory,

       R_PurchaseOrderPartner.SupplierContact,

       R_PurchaseOrderPartner.PersonWorkAgreement,

       R_PurchaseOrderPartner.EmploymentInternalID,

       R_PurchaseOrderPartner.DefaultPartner,

       /* Missing fields in RAP */
       @ObjectModel.editableFieldFor: 'PartnerFunction'
       R_PurchaseOrderPartner.PartnerFunction                                                                  as PartnerFunctionForEdit,
       //       cast(R_PurchaseOrderPartner.PartnerFunction as parvw_pps preserving type) as PartnerFunctionForEdit,


       R_PurchaseOrderPartner._PartnerFunctionText[Language = $session.system_language].PartnerFunctionName,

       case R_PurchaseOrderPartner.PurchasingDocumentPartnerType
        when 'LI' then cast(R_PurchaseOrderPartner.Supplier as mm_pur_partner)
        when 'AP' then cast(R_PurchaseOrderPartner.SupplierContact as mm_pur_partner)
        when 'PE' then cast(R_PurchaseOrderPartner.PersonWorkAgreement as mm_pur_partner)
       end                                                                                                     as PurchasingDocumentPartner,

       cast( case R_PurchaseOrderPartner.PurchasingDocumentPartnerType
         when 'LI' then R_PurchaseOrderPartner._Supplier.SupplierFullName
         when 'AP' then R_PurchaseOrderPartner._SupplierContact.BusinessPartnerName
         when 'PE' then R_PurchaseOrderPartner._PersonWorkAgreement.PersonFullName
       end as mm_pur_partnername )                                                                             as PurchasingDocumentPartnerName,

       // Additional fields for address

       R_PurchaseOrderPartner._Plant._Address.StreetName,
       R_PurchaseOrderPartner._Plant._Address.HouseNumber,
       R_PurchaseOrderPartner._Plant._Address.PostalCode,
       R_PurchaseOrderPartner._Plant._Address.CityName,
       R_PurchaseOrderPartner._Plant._Address.Country,
       R_PurchaseOrderPartner._Plant._Address.CountyCode,
       R_PurchaseOrderPartner._Plant._Address.Region,
       R_PurchaseOrderPartner._Plant._Address.PhoneNumber,
       R_PurchaseOrderPartner._Plant._Address.FaxNumber,
       R_PurchaseOrderPartner._Plant._Address._DefaultEmailAddress.EmailAddress,

       //@JIRA-KEY<S4PPS-12976>

       //       cast ( hextobin( '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' ) as pps_e_control_flag preserving type ) as PPSFieldChangeIndicatorBinary,

       cast ( hextobin( _PurchaseOrder.PPSFieldChangeIndicatorString ) as pps_e_control_flag preserving type ) as PPSFieldChangeIndicatorBinary,
       /* Associations */
       R_PurchaseOrderPartner._PartnerFunction,
       R_PurchaseOrderPartner._PartnerFunctionText,
       R_PurchaseOrderPartner._PersonWorkAgreement,
       R_PurchaseOrderPartner._Plant,
       _PurchaseOrder,
       //R_PurchaseOrderPartner._PurchaseOrder,

       R_PurchaseOrderPartner._PurchasingOrganization,
       R_PurchaseOrderPartner._Supplier,
       R_PurchaseOrderPartner._SupplierContact
}