I_CompanyCode
Company Code
I_CompanyCode is a Basic CDS View (Dimension) that provides data about "Company Code" in SAP S/4HANA. It reads from 1 data source (t001) and exposes 39 fields with key field CompanyCode. It has 17 associations to related views. It is exposed through 29 OData services (C_BILLGDOCREDACTED_SD, C_SALESORDERMANAGE_SD, FARR_BUSINESS_RECNCLN, ...). It is used in 8 Fiori applications: Billing Document, Approve Timesheets (S/4HANA / Version 4), My Timesheet (S/4HANA / Version 4), ....
Data Sources (1)
| Source | Alias | Join Type |
|---|---|---|
| t001 | t001 | from |
Associations (17)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..*] | I_ChartOfAccountsText | _ChartOfAccountsText | $projection.ChartOfAccounts = _ChartOfAccountsText.ChartOfAccounts |
| [0..*] | I_ChartOfAccountsText | _CountryChartOfAccountsText | $projection.CountryChartOfAccounts = _CountryChartOfAccountsText.ChartOfAccounts |
| [0..1] | I_ControllingArea | _ControllingAreaText | $projection.ControllingArea = _ControllingAreaText.ControllingArea |
| [0..*] | I_CreditControlAreaText | _CreditControlAreaText | $projection.CreditControlArea = _CreditControlAreaText.CreditControlArea |
| [0..1] | I_Currency | _Currency | $projection.Currency = _Currency.Currency |
| [0..1] | I_Country | _Country | $projection.Country = _Country.Country |
| [0..1] | I_Address | _Address | $projection.AddressID = _Address.AddressID |
| [0..1] | I_OrgAddressDefaultRprstn | _OrgAddressDefaultRprstn | $projection.AddressID = _OrgAddressDefaultRprstn.AddressID |
| [0..1] | I_Language | _Language | $projection.Language = _Language.Language |
| [0..1] | I_ChartOfAccounts | _ChartOfAccounts | $projection.ChartOfAccounts = _ChartOfAccounts.ChartOfAccounts |
| [0..1] | I_FiscalYearVariant | _FiscalYearVariant | $projection.FiscalYearVariant = _FiscalYearVariant.FiscalYearVariant |
| [0..1] | I_ChartOfAccounts | _CountryChartOfAccounts | $projection.CountryChartOfAccounts = _CountryChartOfAccounts.ChartOfAccounts |
| [0..1] | I_ControllingArea | _ControllingArea | $projection.ControllingArea = _ControllingArea.ControllingArea |
| [0..1] | I_CreditControlArea | _CreditControlArea | $projection.CreditControlArea = _CreditControlArea.CreditControlArea |
| [0..1] | I_FieldStatusVariant | _FieldStatusVariant | $projection.FieldStatusVariant = _FieldStatusVariant.FieldStatusVariant |
| [0..1] | I_Globalcompany | _GlobalCompany | $projection.Company = _GlobalCompany.Company |
| [0..*] | I_CompanyCodeHierNode | _CompanyCodeHierNode | $projection.CompanyCode = _CompanyCodeHierNode.CompanyCode |
Annotations (17)
| Name | Value | Level | Field |
|---|---|---|---|
| EndUserText.label | Company Code | view | |
| Analytics.dataCategory | #DIMENSION | view | |
| Analytics.dataExtraction.enabled | true | view | |
| VDM.viewType | #BASIC | view | |
| AbapCatalog.sqlViewName | IFICOMPANYCODE | view | |
| AbapCatalog.preserveKey | true | view | |
| ObjectModel.representativeKey | CompanyCode | view | |
| AccessControl.authorizationCheck | #NOT_REQUIRED | view | |
| AbapCatalog.buffering.status | #NOT_ALLOWED | view | |
| ObjectModel.usageType.sizeCategory | #S | view | |
| ObjectModel.usageType.dataClass | #ORGANIZATIONAL | view | |
| ObjectModel.usageType.serviceQuality | #A | view | |
| ObjectModel.modelingPattern | #ANALYTICAL_DIMENSION | view | |
| ObjectModel.sapObjectNodeType.name | CompanyCode | view | |
| ClientHandling.algorithm | #SESSION_VARIABLE | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| Search.searchable | true | view |
OData Services (29)
| Service | Binding | Version | Contract | Release |
|---|---|---|---|---|
| C_BILLGDOCREDACTED_SD | C_BILLGDOCREDACTED | V2 | C1 | NOT_RELEASED |
| C_SALESORDERMANAGE_SD | C_SALESORDERMANAGE_SRV | V4 | C1 | NOT_RELEASED |
| FARR_BUSINESS_RECNCLN | FARR_BUSINESS_RECNCLN | V2 | C1 | NOT_RELEASED |
| FARR_SD_REV_CATCHUP | FARR_SDB_REV_CATCHUP | V2 | C1 | NOT_RELEASED |
| SD_GLACCOUNTINOPERATINGCOA | UI_GLACCOUNTINOPERATCOA_02 | V2 | C1 | NOT_RELEASED |
| UI_BANKSTATEMENT_MONITOR | UI_BANKSTATEMENT_MONITOR | V4 | C1 | NOT_RELEASED |
| UI_BILLINGDOCUMENTFS | UI_BILLINGDOCUMENTFS | V2 | C1 | NOT_RELEASED |
| UI_CADOCUMENT_MNG | UI_CADOCUMENT_MNG | V4 | C1 | NOT_RELEASED |
| UI_CREDITMEMOREQUESTMANAGE | UI_CREDITMEMOREQUESTMANAGE | V4 | C1 | NOT_RELEASED |
| UI_CUSTOMERRETURNMANAGE | UI_CUSTOMERRETURNMANAGE | V4 | C1 | NOT_RELEASED |
| UI_FIN_MNGACCNOTIF | UI_FIN_MNGACCNOTIF | V4 | C1 | NOT_RELEASED |
| UI_FRTORDEXECUTION | UI_FRTORDEXECUTION | V2 | C1 | NOT_RELEASED |
| UI_HCMAPPROVETIMESHEET | UI_HCMAPPROVETIMESHEET | V2 | C1 | NOT_RELEASED |
| UI_HCMCOMPLIANCE | UI_HCMCOMPLIANCE_V2 | V2 | C1 | NOT_RELEASED |
| UI_HCMCOMPLIANCE_EMP | UI_HCMCOMPLIANCE_EMP_V2 | V2 | C1 | NOT_RELEASED |
| UI_HCMMYTIMESHEET | API_HCMMYTIMESHEET | V2 | C2 | NOT_RELEASED |
| UI_HCMMYTIMESHEET | UI_HCMMYTIMESHEET | V2 | C1 | NOT_RELEASED |
| UI_HCMPROCESS | UI_HCMPROCESS | V2 | C1 | NOT_RELEASED |
| UI_INTERESTDETAILSDATAMANAGE | UI_INTRSTDETAILSDATAMANAGE | V2 | C1 | NOT_RELEASED |
| UI_INTERESTPAIDSMMRYMANAGE | UI_INTERESTPAIDSMMRYMANAGE | V2 | C1 | NOT_RELEASED |
| UI_INTORDSETTLEMENTRULE_MANAGE | UI_INTORDSETTLRULE_MANAGE | V2 | C1 | NOT_RELEASED |
| UI_INTRSTOWNRDETSDATAMANAGE | UI_INTRSTOWNRDETSMANAGE | V2 | C1 | NOT_RELEASED |
| UI_MANUALACCRS_MNG | UI_MANUALACCRS_MNG | V2 | C1 | NOT_RELEASED |
| UI_PRELIMBILLINGDOCUMENT_F6990 | UI_PRELIMBILLINGDOCUMENT_F6990 | V4 | C1 | NOT_RELEASED |
| UI_RFM_PO_MNG | UI_RFM_PO_MNG | V2 | C1 | NOT_RELEASED |
| UI_SALESCONTRACTMANAGE | UI_SALESCONTRACTMANAGE | V4 | C1 | NOT_RELEASED |
| UI_SALESQUOTATIONMANAGE | UI_SALESQUOTATIONMANAGE | V4 | C1 | NOT_RELEASED |
| UI_SOURCING_PROJECT_COMPARE | UI_SRCGPROJ_COMPARE | V2 | C1 | NOT_RELEASED |
| UI_TRDGCONTR_MANAGEV4 | UI_TRDGCONTR_MANAGEV4 | V4 | C1 | NOT_RELEASED |
Fiori Apps (8)
| App ID | App Name | Type | Description |
|---|---|---|---|
| F1901 | Billing Document | Fact sheet | The billing document object page displays contextual information about the billing document business object, bringing together all of the object's relevant attributes to provide you with an overview of the selected billing document. |
| F2585A | Approve Timesheets (S/4HANA / Version 4) | Analytical | With this app, you as a manager can quickly view all pending approvals of your direct reports and approve timesheets using desktop or mobile devices. |
| F3074A | My Timesheet (S/4HANA / Version 4) | Transactional | You, as an employee, can use this app to manage your time entries quickly and efficiently using a desktop or a mobile device. |
| F4830 | Business Reconciliation | Transactional | Revenue Accountant can use this application to do reconciliation between sender components and revenue accounting engine side. |
| F5391 | Manage Purchase Orders - Fashion | Transactional | |
| F5423 | Manage Manual Accruals | Transactional | With this app, you can create, import, edit, and copy accrual objects as well as change their status. You can use this app to: - Display and edit accrual objects. - Create new accrual objects. - Copy accrual objects. - Import accrual objects from a spreadsheet file. - Change the status of an accrual object by pausing, suspending, or resuming its accrual subobjects. - Prematurely finish accrual subobjects by terminating them or undo premature termination. - View the parameters assigned to an accrual object. - View a detailed summary of changes made to the accrual object, comparing the old and new values of the accrual object fields. |
| F6644 | Summary Interest Paid Report | Transactional | This application can be used to review the company wise interest paid summary over the last 12 months. |
| F6686 | HCM Processes (S/4HANA) | Analytical | Analytical app that allows Manager or Time Administrator to drill down on activities by various dimensions |
Billing Document
Business Role: Billing Clerk
You can access this object page from the Enterprise Search for billing documents search results. It displays contextual information about the billing document business object, bringing together all of the object"s relevant attributes to provide you with an overview of the selected billing document. At the bottom of the page, you can choose the name of involved business partners to display their contact details.
Approve Timesheets (S/4HANA / Version 4)
Business Role: Manager - HR Info
With this app, you as a manager can quickly view all pending approvals of your direct reports and approve timesheets using desktop, tablet or mobile devices. This app provides the following key features: Review timesheets for all your employees and view time entry compliance at a glance. View all time entries pending approval or that have already been approved. Filter time entries based on a date range, on specific attributes, or per employee. View designation and contact information of each employee. Approve or reject records by week.
My Timesheet (S/4HANA / Version 4)
Business Role: Employee - HR Info
You, as an employee, can use this app to manage your time entries quickly and efficiently using a desktop or a mobile device. You can use this app to do the following: enter time records for the chosen personnel assignment using form entry or assignments. create or import assignments and manage them. create and manage assignment groups. use horizontal or grid view for time entries. view the calendar for a chosen month on a desktop device, and for a given week on a mobile device. copy and paste time records. access the to-do list. switch between the allowed data entry profiles for a given time entry.
Business Reconciliation
Business Role: Revenue Accountant
You can have close integration with the universal journal by posting directly to the universal journal without persistence of the Revenue Accounting (RAR) subledger. The benefits of direct posting are the following:A simplified process for small- and medium-volume business scenarios When direct posting is used, no RAR subledger is used, and this leads to reduced reconciliation effort. A reduction in the number of period-end batch jobs required to execute the Transfer Revenue transaction for time-based revenues and the Calculate Contract Liabilities and Contract Assets transaction
Manage Purchase Orders - Fashion
Business Role: Purchaser (Retail)
With this app, you can now consolidate purchase order items into an existing purchase order based on the settings in the rule maintained using the Configure Purchase Order Consolidation Rule app.
Fields (39)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | CompanyCode | t001 | bukrs | |
| CompanyCodeName | t001 | butxt | ||
| CityName | t001 | ort01 | ||
| Country | t001 | land1 | ||
| Currency | t001 | waers | ||
| Language | t001 | spras | ||
| ChartOfAccounts | t001 | ktopl | ||
| FiscalYearVariant | t001 | periv | ||
| Company | t001 | rcomp | ||
| CreditControlArea | t001 | kkber | ||
| CountryChartOfAccounts | t001 | ktop2 | ||
| FinancialManagementArea | t001 | fikrs | ||
| AddressID | t001 | adrnr | ||
| TaxableEntity | t001 | umkrs | ||
| VATRegistration | t001 | stceg | ||
| ExtendedWhldgTaxIsActive | t001 | wt_newwt | ||
| ControllingArea | tka02 | kokrs | ||
| FieldStatusVariant | t001 | fstva | ||
| NonTaxableTransactionTaxCode | t001 | mwska | ||
| DocDateIsUsedForTaxDetn | t001 | xstdt | ||
| TaxRptgDateIsActive | t001 | xvatdate | ||
| CashDiscountBaseAmtIsNetAmt | t001 | xskfn | ||
| _Currency | _Currency | |||
| _Country | _Country | |||
| _Address | _Address | |||
| _OrgAddressDefaultRprstn | _OrgAddressDefaultRprstn | |||
| _Language | _Language | |||
| _ChartOfAccounts | _ChartOfAccounts | |||
| _CountryChartOfAccounts | _CountryChartOfAccounts | |||
| _FiscalYearVariant | _FiscalYearVariant | |||
| _ControllingArea | _ControllingArea | |||
| _CreditControlArea | _CreditControlArea | |||
| _FieldStatusVariant | _FieldStatusVariant | |||
| _GlobalCompany | _GlobalCompany | |||
| _CompanyCodeHierNode | _CompanyCodeHierNode | |||
| _ChartOfAccountsText | _ChartOfAccountsText | |||
| _CountryChartOfAccountsText | _CountryChartOfAccountsText | |||
| _ControllingAreaText | _ControllingAreaText | |||
| _CreditControlAreaText | _CreditControlAreaText |
@EndUserText.label: 'Company Code'
@Analytics:{
dataCategory: #DIMENSION,
dataExtraction: {
enabled: true,
delta.changeDataCapture: {
mapping:
[ { table: 'T001',
role: #MAIN,
viewElement: ['CompanyCode'],
tableElement: ['bukrs']
},
{ table: 'tka02',
role: #LEFT_OUTER_TO_ONE_JOIN,
viewElement: ['CompanyCode'],
tableElement: ['bukrs']
}
]
}
}
}
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IFICOMPANYCODE'
@AbapCatalog.preserveKey:true
//@AbapCatalog.compiler.compareFilter: true // Not possible as it will register as incompatible change
@ObjectModel.representativeKey: 'CompanyCode'
@AccessControl.authorizationCheck: #NOT_REQUIRED
@AbapCatalog.buffering.status: #NOT_ALLOWED
@ObjectModel: { usageType.sizeCategory: #S,
usageType.dataClass: #ORGANIZATIONAL,
usageType.serviceQuality: #A,
supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #EXTRACTION_DATA_SOURCE, #SEARCHABLE_ENTITY],
modelingPattern: #ANALYTICAL_DIMENSION,
sapObjectNodeType.name: 'CompanyCode' }
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations: true
@Search.searchable: true
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
//@AccessControl.privilegedAssociations: ['_ChartOfAccountsText','_CountryChartOfAccountsText']
// ]--GENERATED
@AccessControl.privilegedAssociations: ['_Address','_OrgAddressDefaultRprstn']
define view I_CompanyCode
as select from t001
left outer to one join tka02 on tka02.bukrs = t001.bukrs
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
association [0..*] to I_ChartOfAccountsText as _ChartOfAccountsText on $projection.ChartOfAccounts = _ChartOfAccountsText.ChartOfAccounts
association [0..*] to I_ChartOfAccountsText as _CountryChartOfAccountsText on $projection.CountryChartOfAccounts = _CountryChartOfAccountsText.ChartOfAccounts
association [0..1] to I_ControllingArea as _ControllingAreaText on $projection.ControllingArea = _ControllingAreaText.ControllingArea
association [0..*] to I_CreditControlAreaText as _CreditControlAreaText on $projection.CreditControlArea = _CreditControlAreaText.CreditControlArea
// ]--GENERATED
association [0..1] to I_Currency as _Currency on $projection.Currency = _Currency.Currency
association [0..1] to I_Country as _Country on $projection.Country = _Country.Country
association [0..1] to I_Address as _Address on $projection.AddressID = _Address.AddressID
association [0..1] to I_OrgAddressDefaultRprstn as _OrgAddressDefaultRprstn on $projection.AddressID = _OrgAddressDefaultRprstn.AddressID
association [0..1] to I_Language as _Language on $projection.Language = _Language.Language
association [0..1] to I_ChartOfAccounts as _ChartOfAccounts on $projection.ChartOfAccounts = _ChartOfAccounts.ChartOfAccounts
association [0..1] to I_FiscalYearVariant as _FiscalYearVariant on $projection.FiscalYearVariant = _FiscalYearVariant.FiscalYearVariant
association [0..1] to I_ChartOfAccounts as _CountryChartOfAccounts on $projection.CountryChartOfAccounts = _CountryChartOfAccounts.ChartOfAccounts
association [0..1] to I_ControllingArea as _ControllingArea on $projection.ControllingArea = _ControllingArea.ControllingArea
association [0..1] to I_CreditControlArea as _CreditControlArea on $projection.CreditControlArea = _CreditControlArea.CreditControlArea
association [0..1] to I_FieldStatusVariant as _FieldStatusVariant on $projection.FieldStatusVariant = _FieldStatusVariant.FieldStatusVariant
association [0..1] to I_Globalcompany as _GlobalCompany on $projection.Company = _GlobalCompany.Company
association [0..*] to I_CompanyCodeHierNode as _CompanyCodeHierNode on $projection.CompanyCode = _CompanyCodeHierNode.CompanyCode
{
@ObjectModel.text.element: ['CompanyCodeName']
@ObjectModel.hierarchy.association: '_CompanyCodeHierNode'
@Search.defaultSearchElement:true
@Search.fuzzinessThreshold:0.8
@Search.ranking:#HIGH
key t001.bukrs as CompanyCode,
@Semantics.text: true
t001.butxt as CompanyCodeName,
t001.ort01 as CityName,
@ObjectModel.foreignKey.association: '_Country'
t001.land1 as Country,
@ObjectModel.foreignKey.association: '_Currency'
t001.waers as Currency,
@ObjectModel.foreignKey.association: '_Language'
t001.spras as Language,
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
// @Consumption.valueHelpDefinition: [
// { entity: { name: 'I_ChartOfAccountsStdVH',
// element: 'ChartOfAccounts' }
// }]
// @ObjectModel.text.association: '_ChartOfAccountsText'
// // ]--GENERATED
// @ObjectModel.foreignKey.association: '_ChartOfAccounts'
t001.ktopl as ChartOfAccounts,
@ObjectModel.foreignKey.association: '_FiscalYearVariant'
t001.periv as FiscalYearVariant,
t001.rcomp as Company,
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
@Consumption.valueHelpDefinition: [
{ entity: { name: 'I_CreditControlAreaStdVH',
element: 'CreditControlArea' }
}]
@ObjectModel.text.association: '_CreditControlAreaText'
// ]--GENERATED
@ObjectModel.foreignKey.association: '_CreditControlArea'
t001.kkber as CreditControlArea,
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
// @Consumption.valueHelpDefinition: [
// { entity: { name: 'I_ChartOfAccountsStdVH',
// element: 'ChartOfAccounts' }
// }]
// @ObjectModel.text.association: '_CountryChartOfAccountsText'
// // ]--GENERATED
// @ObjectModel.foreignKey.association: '_CountryChartOfAccounts'
t001.ktop2 as CountryChartOfAccounts,
t001.fikrs as FinancialManagementArea,
@ObjectModel.foreignKey.association: '_OrgAddressDefaultRprstn'
t001.adrnr as AddressID,
t001.umkrs as TaxableEntity,
t001.stceg as VATRegistration,
t001.wt_newwt as ExtendedWhldgTaxIsActive,
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
@Consumption.valueHelpDefinition: [
{ entity: { name: 'I_ControllingAreaStdVH',
element: 'ControllingArea' }
}]
@ObjectModel.text.association: '_ControllingAreaText'
// ]--GENERATED
@ObjectModel.foreignKey.association: '_ControllingArea'
tka02.kokrs as ControllingArea,
@ObjectModel.foreignKey.association: '_FieldStatusVariant'
t001.fstva as FieldStatusVariant,
t001.mwska as NonTaxableTransactionTaxCode,
t001.xstdt as DocDateIsUsedForTaxDetn,
t001.xvatdate as TaxRptgDateIsActive,
t001.xskfn as CashDiscountBaseAmtIsNetAmt,
_Currency,
_Country,
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: '_OrgAddressDefaultRprstn'
_Address,
_OrgAddressDefaultRprstn,
_Language,
_ChartOfAccounts,
_CountryChartOfAccounts,
_FiscalYearVariant,
_ControllingArea,
_CreditControlArea,
_FieldStatusVariant,
_GlobalCompany,
_CompanyCodeHierNode,
//--[ GENERATED:012:29JlHNUf7jY4ioM8lnJMdG
@Consumption.hidden: true
_ChartOfAccountsText,
@Consumption.hidden: true
_CountryChartOfAccountsText,
@Consumption.hidden: true
_ControllingAreaText,
@Consumption.hidden: true
_CreditControlAreaText
// ]--GENERATED
};
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