C_GRC_CustomerChangeLog

DDL: C_GRC_CUSTOMERCHANGELOG SQL: CGRCCUSTMSTRCHG Type: view CONSUMPTION Package: FINS_FIS_GRC_APPS

Customer change log

C_GRC_CustomerChangeLog is a Consumption CDS View that provides data about "Customer change log" in SAP S/4HANA. It reads from 2 data sources (I_ChangeDocumentItem, I_Customer) and exposes 43 fields with key fields Customer, ChangeDocument, ChangeDocDatabaseTableField, ChangeDocItemChangeType. Part of development package FINS_FIS_GRC_APPS.

Data Sources (2)

SourceAliasJoin Type
I_ChangeDocumentItem I_ChangeDocumentItem from
I_Customer I_Customer inner

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName CGRCCUSTMSTRCHG view
EndUserText.label Customer change log view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
VDM.viewType #CONSUMPTION view
OData.publish true view
AbapCatalog.buffering.status #NOT_ALLOWED view
AccessControl.personalData.blocking #REQUIRED view
AccessControl.authorizationCheck #CHECK view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.dataClass #MIXED view

Fields (43)

KeyFieldSource TableSource FieldDescription
KEY Customer I_Customer Customer
KEY ChangeDocument I_ChangeDocumentItem ChangeDocument
KEY ChangeDocDatabaseTableField I_ChangeDocumentItem ChangeDocDatabaseTableField
KEY ChangeDocItemChangeType I_ChangeDocumentItem ChangeDocItemChangeType
ChangeDocCreationDate
LastChangedByUser
ChangeDocNewFieldValue I_ChangeDocumentItem ChangeDocNewFieldValue New Field Value
ChangeDocPreviousFieldValue I_ChangeDocumentItem ChangeDocPreviousFieldValue Old Field Value
ChangeDocNewUnit I_ChangeDocumentItem ChangeDocNewUnit New Unit
ChangeDocPreviousUnit I_ChangeDocumentItem ChangeDocPreviousUnit Old Unit
ChangeDocNewCurrency I_ChangeDocumentItem ChangeDocNewCurrency New Currency
ChangeDocPreviousCurrency I_ChangeDocumentItem ChangeDocPreviousCurrency Old Currency
CustomerName I_Customer CustomerName
CustomerAccountGroup I_Customer CustomerAccountGroup
CreatedByUser I_Customer CreatedByUser
CreationDate I_Customer CreationDate
DeliveryIsBlocked I_Customer DeliveryIsBlocked
PostingIsBlocked I_Customer PostingIsBlocked
BillingIsBlockedForCustomer I_Customer BillingIsBlockedForCustomer
OrderIsBlockedForCustomer I_Customer OrderIsBlockedForCustomer
IsBusinessPurposeCompleted I_Customer IsBusinessPurposeCompleted
IsOneTimeAccount I_Customer IsOneTimeAccount
CityName I_Customer CityName
Country I_Customer Country
AuthorizationGroup I_Customer AuthorizationGroup
DeletionIndicator I_Customer DeletionIndicator
AlternativePayerAccount I_Customer AlternativePayerAccount
AlternativePayeeIsAllowed I_Customer AlternativePayeeIsAllowed
CustomerClassification I_Customer CustomerClassification
ChangeDocObjectClass I_ChangeDocumentItem ChangeDocObjectClass
DatabaseTable I_ChangeDocumentItem DatabaseTable
_CustomerClassification I_Customer _CustomerClassification
DataControllerSet I_Customer DataControllerSet
DataController1 I_Customer DataController1
DataController2 I_Customer DataController2
DataController3 I_Customer DataController3
DataController4 I_Customer DataController4
DataController5 I_Customer DataController5
DataController6 I_Customer DataController6
DataController7 I_Customer DataController7
DataController8 I_Customer DataController8
DataController9 I_Customer DataController9
DataController10 I_Customer DataController10
@AbapCatalog.sqlViewName: 'CGRCCUSTMSTRCHG'
@EndUserText.label: 'Customer change log'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@VDM.viewType: #CONSUMPTION
@OData.publish: true
@AbapCatalog.buffering.status: #NOT_ALLOWED
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.serviceQuality: #C
@ObjectModel.usageType.dataClass: #MIXED
@Consumption.dbHints: [ 'USE_HEX_PLAN' ]
define view C_GRC_CustomerChangeLog
  as select from I_ChangeDocumentItem
    inner join   I_Customer on I_ChangeDocumentItem.ChangeDocObject = I_Customer.Customer
{
  key I_Customer.Customer,
  key I_ChangeDocumentItem.ChangeDocument,
  key I_ChangeDocumentItem.ChangeDocDatabaseTableField,
  key I_ChangeDocumentItem.ChangeDocItemChangeType,

      cast (I_ChangeDocumentItem._ChangeDocument.CreationDate as fis_udate)      as ChangeDocCreationDate,
      cast(I_ChangeDocumentItem._ChangeDocument.CreatedByUser as lcm_changed_by) as LastChangedByUser,
      @EndUserText.label: 'New Field Value'
      I_ChangeDocumentItem.ChangeDocNewFieldValue,
      @EndUserText.label: 'Old Field Value'
      I_ChangeDocumentItem.ChangeDocPreviousFieldValue,
      @EndUserText.label: 'New Unit'
      I_ChangeDocumentItem.ChangeDocNewUnit,
      @EndUserText.label: 'Old Unit'
      I_ChangeDocumentItem.ChangeDocPreviousUnit,
      @EndUserText.label: 'New Currency'
      I_ChangeDocumentItem.ChangeDocNewCurrency,
      @EndUserText.label: 'Old Currency'
      I_ChangeDocumentItem.ChangeDocPreviousCurrency,

      I_Customer.CustomerName,
      I_Customer.CustomerAccountGroup,
      I_Customer.CreatedByUser,
      I_Customer.CreationDate,
      I_Customer.DeliveryIsBlocked,
      I_Customer.PostingIsBlocked,
      I_Customer.BillingIsBlockedForCustomer,
      I_Customer.OrderIsBlockedForCustomer,
      I_Customer.IsBusinessPurposeCompleted,      
      I_Customer.IsOneTimeAccount,
      I_Customer.CityName,
      I_Customer.Country,
      I_Customer.AuthorizationGroup,
      I_Customer.DeletionIndicator,
      I_Customer.AlternativePayerAccount,
      I_Customer.AlternativePayeeIsAllowed,
      @ObjectModel.foreignKey.association:'_CustomerClassification'
      I_Customer.CustomerClassification,
            
      I_ChangeDocumentItem.ChangeDocObjectClass,
      I_ChangeDocumentItem.DatabaseTable,

      I_Customer._CustomerClassification,

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataControllerSet,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController1,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController2,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController3,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController4,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController5,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController6,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController7,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController8,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController9,
      //added only for DCL check

      @UI.hidden: true
      @Consumption.filter.hidden: true
      I_Customer.DataController10      
}
where
      I_ChangeDocumentItem.ChangeDocObjectClass = 'DEBI'
  and I_ChangeDocumentItem.DatabaseTable        = 'KNA1'