I_BPEmploymentProcessChanges

DDL: I_BPEMPLOYMENTPROCESSCHANGES SQL: IBPEMPLPRCCHG Type: view Package: MDC_BUPA_GOV_BO

BP employments changes

I_BPEmploymentProcessChanges is a CDS View that provides data about "BP employments changes" in SAP S/4HANA. It reads from 2 data sources (I_BPEmploymentProcess, I_BPEmploymentProcess) and exposes 37 fields with key fields MasterDataChangeProcess, MDChgProcessStep, MDChgProcessSrceSystem, MDChgProcessSrceObject, BusinessPartner. It has 1 association to related views. Part of development package MDC_BUPA_GOV_BO.

Data Sources (2)

SourceAliasJoin Type
I_BPEmploymentProcess _Current from
I_BPEmploymentProcess _Current union_all

Associations (1)

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

Annotations (9)

NameValueLevelField
AbapCatalog.sqlViewName IBPEMPLPRCCHG view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label BP employments changes view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.usageType.serviceQuality #X view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ClientHandling.algorithm #SESSION_VARIABLE view

Fields (37)

KeyFieldSource TableSource FieldDescription
KEY MasterDataChangeProcess I_BPEmploymentProcess MasterDataChangeProcess
KEY MDChgProcessStep I_BPEmploymentProcess MDChgProcessStep
KEY MDChgProcessSrceSystem I_BPEmploymentProcess MDChgProcessSrceSystem
KEY MDChgProcessSrceObject I_BPEmploymentProcess MDChgProcessSrceObject
KEY BusinessPartner I_BPEmploymentProcess BusinessPartner
KEY BPEmploymentStartDate I_BPEmploymentProcess BPEmploymentStartDate
KEY MDChgProcessModelTableName _ModelTable MDChgProcessModelTableName
KEY MDChangeProcessModelFieldName
KEY char1000asMDChgProcessRecordObjectID
MDChangeProcModelTableDesc _ModelTable MDChangeProcModelTableDesc
MDChangeProcessModelFieldDesc
MDChgProcModelNodeExternalName
MDChgProcModTableExternalName
MDChgProcModFieldExternalName
MDChgProcCurrentAttributeValue
MDChgProcPrevAttributeValue
MDChgProcessAttributeIsChanged
MDChgProcessSourceModified I_BPEmploymentProcess MDChgProcessSourceModified
MasterDataChangeProcess
KEY MDChgProcessStep I_BPEmploymentProcess MDChgProcessStep
KEY MDChgProcessSrceSystem I_BPEmploymentProcess MDChgProcessSrceSystem
KEY MDChgProcessSrceObject I_BPEmploymentProcess MDChgProcessSrceObject
KEY BusinessPartner I_BPEmploymentProcess BusinessPartner
KEY BPEmploymentStartDate I_BPEmploymentProcess BPEmploymentStartDate
KEY MDChgProcessModelTableName _ModelField MDChgProcessModelTableName
KEY MDChangeProcessModelFieldName _ModelField MDChangeProcessModelFieldName
KEY char1000asMDChgProcessRecordObjectID
MDChangeProcModelTableDesc _ModelField MDChangeProcModelTableDesc
MDChangeProcessModelFieldDesc _ModelField MDChangeProcessModelFieldDesc
MDChgProcModelNodeExternalName
MDChgProcModTableExternalName
MDChgProcModFieldExternalName
MDChgProcCurrentAttributeValue
MDChgProcPrevAttributeValue
MDChgProcessAttributeIsChanged
MDChgProcessSourceModified I_BPEmploymentProcess MDChgProcessSourceModified
_BusinessPartner _BusinessPartner
@AbapCatalog.sqlViewName: 'IBPEMPLPRCCHG'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'BP employments changes'
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.usageType:{
  serviceQuality: #X,
  sizeCategory: #XXL,
  dataClass: #TRANSACTIONAL
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@Consumption.dbHints: [ 'USE_HEX_PLAN' ]
define view I_BPEmploymentProcessChanges
  as select from           I_BPEmploymentProcess       as _Current
    left outer to one join I_MDChangeProcessModelTable as _ModelTable on  _ModelTable.MDChgProcessModelTableName     = 'BP011'
                                                                      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
{
  key _Current.MasterDataChangeProcess,
  key _Current.MDChgProcessStep,
  key _Current.MDChgProcessSrceSystem,
  key _Current.MDChgProcessSrceObject,
  key _Current.BusinessPartner,
  key _Current.BPEmploymentStartDate,
  key _ModelTable.MDChgProcessModelTableName,
  key cast ( '' as fieldname )                       as MDChangeProcessModelFieldName,
  key cast( concat(concat(
            concat(_Current.MDChgProcessSrceSystem, 
            concat( '%%', _Current.MDChgProcessSrceObject)),
            concat( '%%', _Current.BusinessPartner)),
            concat( '%%', _Current.BPEmploymentStartDate))
        as abap.char(1000) )                         as MDChgProcessRecordObjectID,
      _ModelTable.MDChangeProcModelTableDesc,
      cast ('' as as4text )                          as MDChangeProcessModelFieldDesc,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'BPEmployment' as fieldname )            as MDChgProcModelNodeExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'I_BPEmploymentProcessTP' 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,
      //TODO

      concat_with_space(
        _Current.BusinessPartner, _Current.BusinessPartnerEmployerName,
        1)                                           as MDChgProcessRecordObjectText,
      _BusinessPartner
}
where
     _Current.MDChgProcessSourceModified = 'I'
  or _Current.MDChgProcessSourceModified = 'D'

union all select from     I_BPEmploymentProcess       as _Current
  left outer to many join I_MDChangeProcessModelField as _ModelField on  _ModelField.MDChgProcessModelTableName     = 'BP011'
                                                                     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
{
      //I_BusinessPartnerProcess

  key _Current.MasterDataChangeProcess,
  key _Current.MDChgProcessStep,
  key _Current.MDChgProcessSrceSystem,
  key _Current.MDChgProcessSrceObject,
  key _Current.BusinessPartner,
  key _Current.BPEmploymentStartDate,
  key _ModelField.MDChgProcessModelTableName,
  key _ModelField.MDChangeProcessModelFieldName,
  key cast( concat(concat(
            concat(_Current.MDChgProcessSrceSystem, 
            concat( '%%', _Current.MDChgProcessSrceObject)),
            concat( '%%', _Current.BusinessPartner)),
            concat( '%%', _Current.BPEmploymentStartDate))
        as abap.char(1000) )                         as MDChgProcessRecordObjectID,
      _ModelField.MDChangeProcModelTableDesc,
      _ModelField.MDChangeProcessModelFieldDesc,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'BPEmployment' as fieldname )            as MDChgProcModelNodeExternalName,
      @ObjectModel.readOnly: true
      @ObjectModel.virtualElement: true
      cast( 'I_BPEmploymentProcessTP' 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,
      //TODO

      concat_with_space(_Current.BusinessPartner, _Current.BusinessPartnerEmployerName,
        1)                                           as MDChgProcessRecordObjectText,
      _BusinessPartner

}
where
  _Current.MDChgProcessSourceModified = 'X'