I_CustomerChangeLog
Customer change log
I_CustomerChangeLog is a Composite 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 46 fields with key fields Customer, ChangeDocument, DatabaseTable, ChangeDocTableKey, ChangeDocDatabaseTableField.
Data Sources (2)
| Source | Alias | Join Type |
|---|---|---|
| I_ChangeDocumentItem | I_ChangeDocumentItem | from |
| I_Customer | I_Customer | inner |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | ICUSTOMERCHNGLOG | view | |
| EndUserText.label | Customer change log | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AbapCatalog.preserveKey | true | view | |
| VDM.viewType | #COMPOSITE | 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 | #D | view | |
| ObjectModel.usageType.dataClass | #MIXED | view |
Fields (46)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | Customer | I_Customer | Customer | |
| KEY | ChangeDocument | I_ChangeDocumentItem | ChangeDocument | |
| KEY | DatabaseTable | I_ChangeDocumentItem | DatabaseTable | |
| KEY | ChangeDocTableKey | I_ChangeDocumentItem | ChangeDocTableKey | |
| 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 | ||
| BPCustomerName | I_Customer | BPCustomerName | ||
| 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 | ||
| BPAddrCityName | I_Customer | BPAddrCityName | ||
| Country | I_Customer | Country | ||
| AuthorizationGroup | I_Customer | AuthorizationGroup | ||
| DeletionIndicator | I_Customer | DeletionIndicator | ||
| AlternativePayerAccount | I_Customer | AlternativePayerAccount | ||
| AlternativePayeeIsAllowed | I_Customer | AlternativePayeeIsAllowed | ||
| CustomerClassification | I_Customer | CustomerClassification | ||
| 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 | ||
| DataControllerSet | I_Customer | DataControllerSet | ||
| ChangeDocObjectClass | I_ChangeDocumentItem | ChangeDocObjectClass | ||
| _CustomerClassification | I_Customer | _CustomerClassification |
@AbapCatalog.sqlViewName: 'ICUSTOMERCHNGLOG'
@EndUserText.label: 'Customer change log'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@VDM.viewType: #COMPOSITE
@AbapCatalog.buffering.status: #NOT_ALLOWED
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.authorizationCheck: #CHECK
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel.usageType.sizeCategory: #XXL
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.dataClass: #MIXED
define view I_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.DatabaseTable,
key I_ChangeDocumentItem.ChangeDocTableKey,
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.BPCustomerName,
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.BPAddrCityName,
I_Customer.Country,
I_Customer.AuthorizationGroup,
I_Customer.DeletionIndicator,
I_Customer.AlternativePayerAccount,
I_Customer.AlternativePayeeIsAllowed,
@ObjectModel.foreignKey.association:'_CustomerClassification'
I_Customer.CustomerClassification,
//Adding 10 fields for DCP 10+1 development
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController1,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController2,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController3,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController4,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController5,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController6,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController7,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController8,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController9,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataController10,
@UI.hidden: true
@Consumption.hidden: true
I_Customer.DataControllerSet,
I_ChangeDocumentItem.ChangeDocObjectClass,
I_Customer._CustomerClassification
}
where
I_ChangeDocumentItem.ChangeDocObjectClass = 'DEBI'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CHANGEDOCUMENT",
"I_CHANGEDOCUMENTITEM",
"I_CUSTOMER"
],
"ASSOCIATED":
[
"I_CUSTOMERCLASSIFICATION"
],
"BASE":
[
"I_CUSTOMER"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA