//@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
}
Depth:
1
2
3
4
5
All
Reload
R_PPS_PurchaseOrderPartnerTP view_entity