I_PurchasingCategorySupplier

DDL: I_PURCHASINGCATEGORYSUPPLIER SQL: IPURGCATSUPPLIER Type: view COMPOSITE

Purchasing Category Supplier

I_PurchasingCategorySupplier is a Composite CDS View that provides data about "Purchasing Category Supplier" in SAP S/4HANA. It reads from 4 data sources (I_BusinessPartner, I_Supplier, I_Supplier_to_BusinessPartner, I_PurchasingCategoryParty) and exposes 22 fields. It has 5 associations to related views.

Data Sources (4)

SourceAliasJoin Type
I_BusinessPartner I_BusinessPartner inner
I_Supplier I_Supplier inner
I_Supplier_to_BusinessPartner I_Supplier_to_BusinessPartner inner
I_PurchasingCategoryParty party from

Associations (5)

CardinalityTargetAliasCondition
[1..1] I_PurchasingCategory _PurchasingCategory $projection.PurgCatUUID = _PurchasingCategory.PurgCatUUID
[0..1] I_Supplier _Supplier _Supplier.Supplier = $projection.Supplier
[0..1] I_BusinessPartner _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner
[0..*] I_SupplierSustainabilityData _SupplierSustainabilityData $projection.BusinessPartner = _SupplierSustainabilityData.Supplier
[0..1] I_SupplierControlData _SupplierControlData $projection.BusinessPartner = _SupplierControlData.BusinessPartner

Annotations (10)

NameValueLevelField
EndUserText.label Purchasing Category Supplier view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #SAP_INTERNAL_API view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
AbapCatalog.sqlViewName IPURGCATSUPPLIER view

Fields (22)

KeyFieldSource TableSource FieldDescription
PurgCatPartyUUID PurgCatPartyUUID
PurgCatUUID PurgCatUUID
BusinessPartnerUUID I_BusinessPartner BusinessPartnerUUID
BusinessPartner
Supplier
AuthorizationGroup I_Supplier AuthorizationGroup
DataController1 I_Supplier DataController1
DataController2 I_Supplier DataController2
DataController3 I_Supplier DataController3
DataController4 I_Supplier DataController4
DataController5 I_Supplier DataController5
DataController6 I_Supplier DataController6
DataController7 I_Supplier DataController7
DataController8 I_Supplier DataController8
DataController9 I_Supplier DataController9
DataController10 I_Supplier DataController10
DataControllerSet I_Supplier DataControllerSet
_Supplier _Supplier
_BusinessPartner _BusinessPartner
_SupplierControlData _SupplierControlData
_SupplierSustainabilityData _SupplierSustainabilityData
_PurchasingCategory _PurchasingCategory
@EndUserText.label: 'Purchasing Category Supplier'
@VDM.viewType: #COMPOSITE
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@ObjectModel.usageType.dataClass:  #TRANSACTIONAL
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.sizeCategory: #L
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@AbapCatalog.sqlViewName: 'IPURGCATSUPPLIER'
define view I_PurchasingCategorySupplier
  as select from I_PurchasingCategoryParty as party
    inner join   I_BusinessPartner             on  I_BusinessPartner.BusinessPartner = party.SLCParty
                                               and party.SLCPartyType                = 'S'
    inner join   I_Supplier_to_BusinessPartner on I_Supplier_to_BusinessPartner.BusinessPartnerUUID = I_BusinessPartner.BusinessPartnerUUID
    inner join   I_Supplier                    on I_Supplier.Supplier = I_Supplier_to_BusinessPartner.Supplier

  association [1..1] to I_PurchasingCategory         as _PurchasingCategory         on $projection.PurgCatUUID = _PurchasingCategory.PurgCatUUID
  association [0..1] to I_Supplier                   as _Supplier                   on _Supplier.Supplier = $projection.Supplier
  association [0..1] to I_BusinessPartner            as _BusinessPartner            on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
  association [0..*] to I_SupplierSustainabilityData as _SupplierSustainabilityData on $projection.BusinessPartner = _SupplierSustainabilityData.Supplier
  association [0..1] to I_SupplierControlData        as _SupplierControlData        on $projection.BusinessPartner = _SupplierControlData.BusinessPartner
{
  @UI.hidden: true
  PurgCatPartyUUID,

  @UI.hidden: true
  PurgCatUUID,

  @UI.hidden: true
  @Consumption.hidden: true
  I_BusinessPartner.BusinessPartnerUUID,

  @ObjectModel.foreignKey.association: '_BusinessPartner'
  cast(substring( SLCParty,1,10) as bu_partner preserving type)                       as BusinessPartner,

  @ObjectModel.foreignKey.association: '_Supplier'
  cast(I_Supplier_to_BusinessPartner.Supplier as /srmsmc/supplier_id preserving type) as Supplier,

  @UI.hidden: true
  @Consumption.hidden: true
  I_Supplier.AuthorizationGroup,

  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController1,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController2,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController3,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController4,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController5,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController6,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController7,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController8,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController9,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataController10,
  @Consumption.hidden: true
  @UI.hidden: true
  I_Supplier.DataControllerSet,

  _Supplier,
  _BusinessPartner,
  _SupplierControlData,
  _SupplierSustainabilityData,

  /* Associations to SupplierCategory */
  @ObjectModel.association.type: [#TO_COMPOSITION_ROOT, #TO_COMPOSITION_PARENT]
  _PurchasingCategory
}

where
      SLCPartyType                  = 'S'
  and SLCPartyRole                  = '2'
  and I_Supplier.AuthorizationGroup is not null