I_BPEmailAddressProcessChanges

DDL: I_BPEMAILADDRESSPROCESSCHANGES SQL: IBPEMAILPROCCHG Type: view TRANSACTIONAL Package: MDC_BUPA_GOV_BO

Business Partner Email Process Changes

I_BPEmailAddressProcessChanges is a Transactional CDS View that provides data about "Business Partner Email Process Changes" in SAP S/4HANA. It reads from 2 data sources (I_BPEmailAddressProcess, I_BPEmailAddressProcess) and exposes 41 fields with key fields MasterDataChangeProcess, MDChgProcessStep, MDChgProcessSrceSystem, MDChgProcessSrceObject, AddressNumber. It has 3 associations to related views. Part of development package MDC_BUPA_GOV_BO.

Data Sources (2)

SourceAliasJoin Type
I_BPEmailAddressProcess _Current from
I_BPEmailAddressProcess _Current union_all

Associations (3)

CardinalityTargetAliasCondition
[1..1] I_BusinessPartnerProcess _BusinessPartner $projection.MasterDataChangeProcess = _BusinessPartner.MasterDataChangeProcess and $projection.MDChgProcessStep = _BusinessPartner.MDChgProcessStep and $projection.MDChgProcessSrceSystem = _BusinessPartner.MDChgProcessSrceSystem and $projection.MDChgProcessSrceObject = _BusinessPartner.MDChgProcessSrceObject
[0..1] I_BusPartProtectedAddressProc _BPProtectedAddress _Current.MasterDataChangeProcess = _BPProtectedAddress.MasterDataChangeProcess and _Current.MDChgProcessStep = _BPProtectedAddress.MDChgProcessStep and _Current.MDChgProcessSrceSystem = _BPProtectedAddress.MDChgProcessSrceSystem and _Current.MDChgProcessSrceObject = _BPProtectedAddress.MDChgProcessSrceObject and _Current.AddressNumber = _BPProtectedAddress.AddressNumber
[1..1] I_BusinessPartnerAddressProc _Address $projection.MasterDataChangeProcess = _Address.MasterDataChangeProcess and $projection.MDChgProcessStep = _Address.MDChgProcessStep and $projection.MDChgProcessSrceSystem = _Address.MDChgProcessSrceSystem and $projection.MDChgProcessSrceObject = _Address.MDChgProcessSrceObject and $projection.AddressNumber = _Address.AddressNumber

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName IBPEMAILPROCCHG view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Business Partner Email Process Changes view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.sizeCategory #XXL view
VDM.viewType #TRANSACTIONAL view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (41)

KeyFieldSource TableSource FieldDescription
KEY MasterDataChangeProcess I_BPEmailAddressProcess MasterDataChangeProcess
KEY MDChgProcessStep I_BPEmailAddressProcess MDChgProcessStep
KEY MDChgProcessSrceSystem I_BPEmailAddressProcess MDChgProcessSrceSystem
KEY MDChgProcessSrceObject I_BPEmailAddressProcess MDChgProcessSrceObject
KEY AddressNumber I_BPEmailAddressProcess AddressNumber
KEY OrdinalNumber I_BPEmailAddressProcess OrdinalNumber
KEY MDChgProcessModelTableName _ModelTable MDChgProcessModelTableName
KEY MDChangeProcessModelFieldName
KEY char1000asMDChgProcessRecordObjectID
MDChangeProcModelTableDesc _ModelTable MDChangeProcModelTableDesc
MDChangeProcessModelFieldDesc
MDChgProcModelNodeExternalName
MDChgProcModTableExternalName
MDChgProcModFieldExternalName
MDChgProcCurrentAttributeValue
MDChgProcPrevAttributeValue
MDChgProcessAttributeIsChanged
MDChgProcessSourceModified I_BPEmailAddressProcess MDChgProcessSourceModified
_BusinessPartner _BusinessPartner
_BPProtectedAddress _BPProtectedAddress
MasterDataChangeProcess
KEY MDChgProcessStep I_BPEmailAddressProcess MDChgProcessStep
KEY MDChgProcessSrceSystem I_BPEmailAddressProcess MDChgProcessSrceSystem
KEY MDChgProcessSrceObject I_BPEmailAddressProcess MDChgProcessSrceObject
KEY AddressNumber I_BPEmailAddressProcess AddressNumber
KEY OrdinalNumber I_BPEmailAddressProcess OrdinalNumber
KEY MDChgProcessModelTableName _ModelField MDChgProcessModelTableName
KEY MDChangeProcessModelFieldName _ModelField MDChangeProcessModelFieldName
KEY char1000asMDChgProcessRecordObjectID
MDChangeProcModelTableDesc _ModelField MDChangeProcModelTableDesc
MDChangeProcessModelFieldDesc _ModelField MDChangeProcessModelFieldDesc
MDChgProcModelNodeExternalName
MDChgProcModTableExternalName
MDChgProcModFieldExternalName
MDChgProcCurrentAttributeValue
MDChgProcPrevAttributeValue
MDChgProcessAttributeIsChanged
MDChgProcessSourceModified I_BPEmailAddressProcess MDChgProcessSourceModified
_BusinessPartner _BusinessPartner
_BPProtectedAddress _BPProtectedAddress
_Address _Address
@AbapCatalog.sqlViewName: 'IBPEMAILPROCCHG'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Business Partner Email Process Changes'
@ObjectModel.usageType.serviceQuality: #X
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@ObjectModel.usageType.sizeCategory: #XXL
@VDM.viewType: #TRANSACTIONAL
@ClientHandling.algorithm: #SESSION_VARIABLE
@Consumption.dbHints: [ 'USE_HEX_PLAN' ]
define view I_BPEmailAddressProcessChanges
  as select from           I_BPEmailAddressProcess     as _Current
    left outer to one join I_MDChangeProcessModelTable as _ModelTable on  _ModelTable.MDChgProcessModelTableName     = 'ADR6'
                                                                      and _ModelTable.MDChgProcessSrceObjectTypeCode = '147'

  association [1..1] to I_BusinessPartnerProcess      as _BusinessPartner    on  $projection.MasterDataChangeProcess = _BusinessPartner.MasterDataChangeProcess
                                                                             and $projection.MDChgProcessStep        = _BusinessPartner.MDChgProcessStep
                                                                             and $projection.MDChgProcessSrceSystem  = _BusinessPartner.MDChgProcessSrceSystem
                                                                             and $projection.MDChgProcessSrceObject  = _BusinessPartner.MDChgProcessSrceObject
  association [0..1] to I_BusPartProtectedAddressProc as _BPProtectedAddress on  _Current.MasterDataChangeProcess = _BPProtectedAddress.MasterDataChangeProcess
                                                                             and _Current.MDChgProcessStep        = _BPProtectedAddress.MDChgProcessStep
                                                                             and _Current.MDChgProcessSrceSystem  = _BPProtectedAddress.MDChgProcessSrceSystem
                                                                             and _Current.MDChgProcessSrceObject  = _BPProtectedAddress.MDChgProcessSrceObject
                                                                             and _Current.AddressNumber           = _BPProtectedAddress.AddressNumber
  association [1..1] to I_BusinessPartnerAddressProc  as _Address            on  $projection.MasterDataChangeProcess = _Address.MasterDataChangeProcess
                                                                             and $projection.MDChgProcessStep        = _Address.MDChgProcessStep
                                                                             and $projection.MDChgProcessSrceSystem  = _Address.MDChgProcessSrceSystem
                                                                             and $projection.MDChgProcessSrceObject  = _Address.MDChgProcessSrceObject
                                                                             and $projection.AddressNumber           = _Address.AddressNumber
{
  key _Current.MasterDataChangeProcess,
  key _Current.MDChgProcessStep,
  key _Current.MDChgProcessSrceSystem,
  key _Current.MDChgProcessSrceObject,
  key _Current.AddressNumber,
  key _Current.OrdinalNumber,
  key _ModelTable.MDChgProcessModelTableName,
  key cast ( '' as fieldname )                                          as MDChangeProcessModelFieldName,
  key cast( concat(
              concat(
                concat(_Current.MDChgProcessSrceSystem, concat( '%%', _Current.MDChgProcessSrceObject)),
              concat( '%%', _Current.AddressNumber)),
            concat( '%%', _Current.OrdinalNumber)) as abap.char(1000) ) as MDChgProcessRecordObjectID,
      _ModelTable.MDChangeProcModelTableDesc,
      cast ('' as as4text )                                             as MDChangeProcessModelFieldDesc,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'BusinessPartnerEmail' as fieldname )                       as MDChgProcModelNodeExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'I_BusPartEmailAddressProcTP' as fieldname )                as MDChgProcModTableExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as fieldname )                                           as MDChgProcModFieldExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as abap.char( 260 ) )                                    as MDChgProcCurrentAttributeValue,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as abap.char( 260 ) )                                    as MDChgProcPrevAttributeValue,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as boolean )                                             as MDChgProcessAttributeIsChanged,
      _Current.MDChgProcessSourceModified,
      concat_with_space(
        concat(
          concat_with_space(
            concat_with_space(
              concat_with_space(
                concat_with_space(_Address.StreetName,_Address.HouseNumber,1)
             ,_Address.PostalCode,1)
           ,_Address.CityName,1)
          ,_Address.Country,1),
        ','),
        _Current.EmailAddress
      ,1)                                                               as MDChgProcessRecordObjectText,
      _BusinessPartner,
      _BPProtectedAddress,
      _Address

}
where
     _Current.MDChgProcessSourceModified = 'I'
  or _Current.MDChgProcessSourceModified = 'D'

union all select from     I_BPEmailAddressProcess     as _Current
  left outer to many join I_MDChangeProcessModelField as _ModelField on  _ModelField.MDChgProcessModelTableName     = 'ADR6'
                                                                     and _ModelField.MDChgProcessSrceObjectTypeCode = '147'
association [1..1] to I_BusinessPartnerProcess      as _BusinessPartner    on  $projection.MasterDataChangeProcess = _BusinessPartner.MasterDataChangeProcess
                                                                           and $projection.MDChgProcessStep        = _BusinessPartner.MDChgProcessStep
                                                                           and $projection.MDChgProcessSrceSystem  = _BusinessPartner.MDChgProcessSrceSystem
                                                                           and $projection.MDChgProcessSrceObject  = _BusinessPartner.MDChgProcessSrceObject
association [0..1] to I_BusPartProtectedAddressProc as _BPProtectedAddress on  _Current.MasterDataChangeProcess = _BPProtectedAddress.MasterDataChangeProcess
                                                                           and _Current.MDChgProcessStep        = _BPProtectedAddress.MDChgProcessStep
                                                                           and _Current.MDChgProcessSrceSystem  = _BPProtectedAddress.MDChgProcessSrceSystem
                                                                           and _Current.MDChgProcessSrceObject  = _BPProtectedAddress.MDChgProcessSrceObject
                                                                           and _Current.AddressNumber           = _BPProtectedAddress.AddressNumber
association [1..1] to I_BusinessPartnerAddressProc  as _Address            on  $projection.MasterDataChangeProcess = _Address.MasterDataChangeProcess
                                                                           and $projection.MDChgProcessStep        = _Address.MDChgProcessStep
                                                                           and $projection.MDChgProcessSrceSystem  = _Address.MDChgProcessSrceSystem
                                                                           and $projection.MDChgProcessSrceObject  = _Address.MDChgProcessSrceObject
                                                                           and $projection.AddressNumber           = _Address.AddressNumber

{
      //I_BusinessPartnerProcess

  key _Current.MasterDataChangeProcess,
  key _Current.MDChgProcessStep,
  key _Current.MDChgProcessSrceSystem,
  key _Current.MDChgProcessSrceObject,
  key _Current.AddressNumber,
  key _Current.OrdinalNumber,
  key _ModelField.MDChgProcessModelTableName,
  key _ModelField.MDChangeProcessModelFieldName,
  key cast( concat(
              concat(
                concat(_Current.MDChgProcessSrceSystem, concat( '%%', _Current.MDChgProcessSrceObject)),
              concat( '%%', _Current.AddressNumber)),
            concat( '%%', _Current.OrdinalNumber)) as abap.char(1000) ) as MDChgProcessRecordObjectID,
      _ModelField.MDChangeProcModelTableDesc,
      _ModelField.MDChangeProcessModelFieldDesc,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'BusinessPartnerEmail' as fieldname )                       as MDChgProcModelNodeExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'I_BusPartEmailAddressProcTP' as fieldname )                as MDChgProcModTableExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as fieldname )                                           as MDChgProcModFieldExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as abap.char( 260 ) )                                    as MDChgProcCurrentAttributeValue,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as abap.char( 260 ) )                                    as MDChgProcPrevAttributeValue,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_BP_BUPAPROCTP2_CALC_EXIT'
      cast( '' as boolean )                                             as MDChgProcessAttributeIsChanged,
      _Current.MDChgProcessSourceModified,
      concat_with_space(
        concat(
          concat_with_space(
            concat_with_space(
              concat_with_space(
                concat_with_space(_Address.StreetName,_Address.HouseNumber,1)
             ,_Address.PostalCode,1)
           ,_Address.CityName,1)
          ,_Address.Country,1),
        ','),
        _Current.EmailAddress
      ,1)                                                               as MDChgProcessRecordObjectText,
      _BusinessPartner,
      _BPProtectedAddress,
      _Address
}
where
  _Current.MDChgProcessSourceModified = 'X'