I_BusinessPartnerToBPRole_2

DDL: I_BUSINESSPARTNERTOBPROLE_2 SQL: IBPTOBPROLE2 Type: view BASIC Package: VDM_MD_BP_BASE

Business Partner assignment to BP Role

I_BusinessPartnerToBPRole_2 is a Basic CDS View (Dimension) that provides data about "Business Partner assignment to BP Role" in SAP S/4HANA. It reads from 1 data source (but100) and exposes 10 fields with key fields BusinessPartner, BusinessPartnerRole, BusinessPartnerDiffTypeValue. It has 3 associations to related views. Part of development package VDM_MD_BP_BASE.

Data Sources (1)

SourceAliasJoin Type
but100 but100 from

Associations (3)

CardinalityTargetAliasCondition
[0..1] I_BusinessPartnerRole _BusinessPartnerRole $projection.BusinessPartnerRole = _BusinessPartnerRole.BusinessPartnerRole
[0..1] I_BusinessPartner _BusinessPartner $projection.BusinessPartner = _BusinessPartner.BusinessPartner
[0..1] I_BPDifferentiationTypeValue _BusinessPartnerDiffValue $projection.BusinessPartnerDiffTypeValue = _BusinessPartnerDiffValue.BusinessPartnerDiffTypeValue

Annotations (19)

NameValueLevelField
AbapCatalog.sqlViewName IBPTOBPROLE2 view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
AccessControl.personalData.blockingIndicator _BusinessPartner.IsBusinessPurposeCompleted view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
Analytics.internalName #LOCAL view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Business Partner assignment to BP Role view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
AbapCatalog.preserveKey true view
AbapCatalog.compiler.compareFilter true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.representativeKey BusinessPartnerRole view
VDM.viewType #BASIC view

Fields (10)

KeyFieldSource TableSource FieldDescription
mandt but100 mandt
KEY BusinessPartner but100 partner
KEY BusinessPartnerRole but100 rltyp
KEY BusinessPartnerDiffTypeValue but100 dfval
ValidFrom but100 valid_from
ValidTo but100 valid_to
_BusinessPartnerRole _BusinessPartnerRole
AuthorizationGroup _BusinessPartner AuthorizationGroup
_BusinessPartner _BusinessPartner
_BusinessPartnerDiffValue _BusinessPartnerDiffValue
@AbapCatalog.sqlViewName: 'IBPTOBPROLE2' //must start with "I"


@AccessControl.authorizationCheck:#CHECK
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.personalData.blockingIndicator: '_BusinessPartner.IsBusinessPurposeCompleted'
@AccessControl.privilegedAssociations:  [ '_BusinessPartnerDiffValue' ]

@Analytics: {
    dataCategory: #DIMENSION,
    dataExtraction: {
        enabled: true,
        delta.changeDataCapture: {
            mapping:[
                
                {
                    table: 'but100', role: #MAIN,
                    viewElement: ['BusinessPartner' ,'BusinessPartnerRole','BusinessPartnerDiffTypeValue'],
                    tableElement: ['partner', 'rltyp' ,'dfval']
                   
                },
               
                {
                    table: 'but000', role: #LEFT_OUTER_TO_ONE_JOIN,
                    viewElement: ['BusinessPartner'],
                    tableElement: ['partner']
                }                              
            ]
        }
    }
 } 
@Analytics.internalName: #LOCAL
@ClientHandling.algorithm: #SESSION_VARIABLE

@EndUserText.label: 'Business Partner assignment to BP Role' //same as DDL description


@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@AbapCatalog.preserveKey: true
@AbapCatalog.compiler.compareFilter: true
@ObjectModel.supportedCapabilities: [#SQL_DATA_SOURCE,
                                     #CDS_MODELING_DATA_SOURCE,
                                     #CDS_MODELING_ASSOCIATION_TARGET,
                                     #ANALYTICAL_DIMENSION,
                                     #EXTRACTION_DATA_SOURCE]
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION    
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.dataClass: #MASTER
@ObjectModel.representativeKey:'BusinessPartnerRole'

@VDM.viewType: #BASIC
@Consumption.dbHints: [ 'USE_HEX_PLAN' ]
define view I_BusinessPartnerToBPRole_2 
  as select from but100

  association [0..1] to I_BusinessPartnerRole as _BusinessPartnerRole on $projection.BusinessPartnerRole = _BusinessPartnerRole.BusinessPartnerRole
  association [0..1] to I_BusinessPartner     as _BusinessPartner     on $projection.BusinessPartner = _BusinessPartner.BusinessPartner
  association [0..1] to I_BPDifferentiationTypeValue as _BusinessPartnerDiffValue on $projection.BusinessPartnerDiffTypeValue = _BusinessPartnerDiffValue.BusinessPartnerDiffTypeValue 
{
   @Consumption.hidden: true
   but100.mandt as mandt,
      //--[ GENERATED:012:GlBfhyJl7kY4i6}7dD1KRG

      @Consumption.valueHelpDefinition: [ 
        { entity:  { name:    'I_BusinessPartnerVH',
                     element: 'BusinessPartner' }
        }]
      // ]--GENERATED

      @ObjectModel.foreignKey.association: '_BusinessPartner'
  key but100.partner     as BusinessPartner,
      // @ObjectModel.text.association: '_BusinessPartnerRoleText'

  key but100.rltyp       as BusinessPartnerRole,
     @ObjectModel.foreignKey.association: '_BusinessPartnerDiffValue'
  key but100.dfval       as BusinessPartnerDiffTypeValue,
      but100.valid_from  as ValidFrom,
      but100.valid_to    as ValidTo,


      //        Association

      _BusinessPartnerRole,
      _BusinessPartner.AuthorizationGroup,
      _BusinessPartner,
      _BusinessPartnerDiffValue  
}
where
  but100.dfval = ''