I_ProfitCenter

DDL: I_PROFITCENTER SQL: IFIPROFITCENTER Type: view BASIC

Profit Center

I_ProfitCenter is a Basic CDS View (Dimension) that provides data about "Profit Center" in SAP S/4HANA. It reads from 1 data source (cepc) and exposes 48 fields with key fields ControllingArea, ProfitCenter, ValidityEndDate. It has 12 associations to related views. It is exposed through 6 OData services (C_SALESORDERMANAGE_SD, UI_CADOCUMENT_MNG, UI_CREDITMEMOREQUESTMANAGE, ...). It is used in 2 Fiori applications: Manage Manual Accruals, Review Service Entry Sheet Accruals.

Data Sources (1)

SourceAliasJoin Type
cepc cepc from

Associations (12)

CardinalityTargetAliasCondition
[1..1] I_ControllingArea _ControllingAreaText $projection.ControllingArea = _ControllingAreaText.ControllingArea
[0..*] I_SegmentText _SegmentText $projection.Segment = _SegmentText.Segment
[1..1] I_ControllingArea _ControllingArea $projection.ControllingArea = _ControllingArea.ControllingArea
[0..*] I_ProfitCenterText _Text $projection.ControllingArea = _Text.ControllingArea and $projection.ProfitCenter = _Text.ProfitCenter and $projection.ValidityEndDate = _Text.ValidityEndDate
[0..*] I_ProfitCenterHierarchyNode _ProfitCenterHierarchyNode $projection.ControllingArea = _ProfitCenterHierarchyNode.ControllingArea and $projection.ProfitCenter = _ProfitCenterHierarchyNode.ProfitCenter
[0..1] I_Country _Country $projection.Country = _Country.Country
[0..1] I_CompanyCode _Company $projection.CompanyCode = _Company.CompanyCode
[0..1] I_Segment _Segment $projection.Segment = _Segment.Segment
[0..1] I_Region _Region $projection.Country = _Region.Country and $projection.Region = _Region.Region
[0..*] I_PrftCtrCompanyCodeAssignment _PrftCtrCompanyCodeAssignment $projection.ControllingArea = _PrftCtrCompanyCodeAssignment.ControllingArea and $projection.ProfitCenter = _PrftCtrCompanyCodeAssignment.ProfitCenter
[0..1] I_Language _Language $projection.Language = _Language.Language
[1..1] E_ProfitCenter _Extension $projection.ControllingArea = _Extension.ControllingArea and $projection.ProfitCenter = _Extension.ProfitCenter and $projection.ValidityEndDate = _Extension.ValidityEndDate

Annotations (18)

NameValueLevelField
EndUserText.label Profit Center view
VDM.viewType #BASIC view
AbapCatalog.sqlViewName IFIPROFITCENTER view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.representativeKey ProfitCenter view
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #M view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
Analytics.dataExtraction.delta.changeDataCapture.automatic true view
Search.searchable true view
Consumption.filter.businessDate.at true view

OData Services (6)

ServiceBindingVersionContractRelease
C_SALESORDERMANAGE_SD C_SALESORDERMANAGE_SRV V4 C1 NOT_RELEASED
UI_CADOCUMENT_MNG UI_CADOCUMENT_MNG V4 C1 NOT_RELEASED
UI_CREDITMEMOREQUESTMANAGE UI_CREDITMEMOREQUESTMANAGE V4 C1 NOT_RELEASED
UI_MANUALACCRS_MNG UI_MANUALACCRS_MNG V2 C1 NOT_RELEASED
UI_SALESCONTRACTMANAGE UI_SALESCONTRACTMANAGE V4 C1 NOT_RELEASED
UI_SSACPERDCAMOUNTS_REVIEW UI_SSACPERDCAMOUNTS_REVIEW V2 C1 NOT_RELEASED

Fiori Apps (2)

App IDApp NameTypeDescription
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.
F6108 Review Service Entry Sheet Accruals Transactional Review service entry sheet accrual amount for each period.

Manage Manual Accruals

Business Role: General Ledger Accountant

With this app, you can create, import, edit, and copy accrual objects as well as change their status.

Review Service Entry Sheet Accruals

Business Role: Cost Accountant - Overhead

For service purchasing, you need to post accruals for costs that come from unapproved service entry sheets. A purchase order item could have multiple service entry sheets with different account assignments. The Service Entry Sheet Accruals application enables you to calculate and post accruals in General Ledger Accounting automatically. The relevant data can be transferred from Service Purchasing and Recording of the Materials Management component to the Accrual Engine and automatically converted from purchase order items into accrual subobjects. The system calculates the accruals for each account assignment specified in the items of service entry sheets. In each period, you can start an accrual run, which posts all accruals for the service transactions.

Fields (48)

KeyFieldSource TableSource FieldDescription
KEY ControllingArea kokrs
KEY ProfitCenter prctr
KEY ValidityEndDate datbi
ProfitCtrResponsiblePersonName verak
CompanyCode bukrs
ProfitCtrResponsibleUser verak_user
ValidityStartDate datab
Department abtei
ProfitCenterStandardHierarchy khinr
Segment segment
ProfitCenterIsBlocked lock_ind
FormulaPlanningTemplate pca_template
FormOfAddress anred
AddressName name1
AdditionalName name2
ProfitCenterAddrName3 name3
ProfitCenterAddrName4 name4
StreetAddressName stras
POBox pfach
CityName ort01
PostalCode pstlz
POBoxPostalCode pstl2
District ort02
Country land1
Region regio
TaxJurisdiction txjcd
Language spras
PhoneNumber1 telf1
PhoneNumber2 telf2
TeleboxNumber telbx
TelexNumber telx1
FaxNumber telfx
TeletexNumber teltx
DataCommunicationPhoneNumber datlt
ProfitCenterPrinterName drnam
ProfitCenterCreatedByUser usnam
ProfitCenterCreationDate ersda
_Text _Text
_Country _Country
_ControllingArea _ControllingArea
_ProfitCenterHierarchyNode _ProfitCenterHierarchyNode
_Language _Language
_Company _Company
_Segment _Segment
_Region _Region
_PrftCtrCompanyCodeAssignment _PrftCtrCompanyCodeAssignment
_ControllingAreaText _ControllingAreaText
_SegmentText _SegmentText
@EndUserText.label: 'Profit Center'
@VDM.viewType: #BASIC
@AbapCatalog.sqlViewName: 'IFIPROFITCENTER'
@AbapCatalog.preserveKey:true

@AccessControl.authorizationCheck: #CHECK
@AccessControl.privilegedAssociations:  [ '_ProfitCenterHierarchyNode'
//--[ GENERATED:012:29JlHNUf7jY4ipE4XHfNBG

,'_ControllingAreaText','_SegmentText'
// ]--GENERATED

]
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.representativeKey: 'ProfitCenter'
@ClientHandling.algorithm: #SESSION_VARIABLE

@ObjectModel.supportedCapabilities: [ #ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE, #EXTRACTION_DATA_SOURCE ]
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION

@ObjectModel.usageType: {
  dataClass: #MASTER,
  serviceQuality: #A,
  sizeCategory: #M
}

@Analytics:{
    dataCategory: #DIMENSION,
    dataExtraction: {
        enabled: true,
        delta.changeDataCapture: {
        automatic: true
        }
    }
}

@Search.searchable: true
@Consumption.filter.businessDate.at: true
define view I_ProfitCenter
  as select from cepc


  //--[ GENERATED:012:29JlHNUf7jY4ipE4XHfNBG

  association [1..1] to I_ControllingArea              as _ControllingAreaText          on  $projection.ControllingArea = _ControllingAreaText.ControllingArea
  association [0..*] to I_SegmentText                  as _SegmentText                  on  $projection.Segment = _SegmentText.Segment
  // ]--GENERATED

  association [1..1] to I_ControllingArea              as _ControllingArea              on  $projection.ControllingArea = _ControllingArea.ControllingArea
  association [0..*] to I_ProfitCenterText             as _Text                         on  $projection.ControllingArea = _Text.ControllingArea
                                                                                        and $projection.ProfitCenter    = _Text.ProfitCenter
                                                                                        and $projection.ValidityEndDate = _Text.ValidityEndDate
  association [0..*] to I_ProfitCenterHierarchyNode    as _ProfitCenterHierarchyNode    on  $projection.ControllingArea = _ProfitCenterHierarchyNode.ControllingArea
                                                                                        and $projection.ProfitCenter    = _ProfitCenterHierarchyNode.ProfitCenter
  association [0..1] to I_Country                      as _Country                      on  $projection.Country = _Country.Country
  association [0..1] to I_CompanyCode                  as _Company                      on  $projection.CompanyCode = _Company.CompanyCode
  association [0..1] to I_Segment                      as _Segment                      on  $projection.Segment = _Segment.Segment
  association [0..1] to I_Region                       as _Region                       on  $projection.Country = _Region.Country
                                                                                        and $projection.Region  = _Region.Region

  association [0..*] to I_PrftCtrCompanyCodeAssignment as _PrftCtrCompanyCodeAssignment on  $projection.ControllingArea = _PrftCtrCompanyCodeAssignment.ControllingArea
                                                                                        and $projection.ProfitCenter    = _PrftCtrCompanyCodeAssignment.ProfitCenter

  //association[0..*] to I_TaxJurisdiction           as _TaxJurisdiction           on $projection.TaxJurisdiction   = _TaxJurisdiction.TaxJurisdiction

  association [0..1] to I_Language                     as _Language                     on  $projection.Language = _Language.Language
  association [1..1] to E_ProfitCenter                 as _Extension                    on  $projection.ControllingArea = _Extension.ControllingArea
                                                                                        and $projection.ProfitCenter    = _Extension.ProfitCenter
                                                                                        and $projection.ValidityEndDate = _Extension.ValidityEndDate

{
      //--[ GENERATED:012:29JlHNUf7jY4ipE4XHfNBG

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_ControllingArea',
                     element: 'ControllingArea' }
        }]
      @ObjectModel.text.association: '_ControllingAreaText'
      // ]--GENERATED

      @ObjectModel.foreignKey.association: '_ControllingArea'
  key kokrs        as ControllingArea,
      @ObjectModel.text.association: '_Text'
      @ObjectModel.hierarchy.association: '_ProfitCenterHierarchyNode'
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
  key prctr        as ProfitCenter,

      @Semantics.businessDate.to: true
  key datbi        as ValidityEndDate,
      verak        as ProfitCtrResponsiblePersonName,
      
///////////////////////////////////////////////////////////////////////////

// Attention

//           Please do NOT use this field CompanyCode from this view

//                (it is empty and will not be used/filled)

//

//  The assignment CompanyCode - Profitcenter is built in another way

// We cannot delete the wrong field here because of DDL guidelines

///////////////////////////////////////////////////////////////////////      

      bukrs        as CompanyCode,
      
      verak_user   as ProfitCtrResponsibleUser,
      @Semantics.businessDate.from: true
      datab        as ValidityStartDate,
      abtei        as Department,
      khinr        as ProfitCenterStandardHierarchy,
      //--[ GENERATED:012:29JlHNUf7jY4ipE4XHfNBG

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_SegmentStdVH',
                     element: 'Segment' }
        }]
      @ObjectModel.text.association: '_SegmentText'
      // ]--GENERATED

      @ObjectModel.foreignKey.association: '_Segment' //Inserted by VDM CDS Suite Plugin

      segment      as Segment,
      lock_ind     as ProfitCenterIsBlocked,
      pca_template as FormulaPlanningTemplate,
      anred        as FormOfAddress,
      name1        as AddressName,
      name2        as AdditionalName,
      name3        as ProfitCenterAddrName3,
      name4        as ProfitCenterAddrName4,
      stras        as StreetAddressName,
      pfach        as POBox,
      ort01        as CityName,
      pstlz        as PostalCode,
      pstl2        as POBoxPostalCode,
      ort02        as District,
      @ObjectModel.foreignKey.association: '_Country' //Inserted by VDM CDS Suite Plugin

      land1        as Country,
      @ObjectModel.foreignKey.association: '_Region'
      regio        as Region,
      txjcd        as TaxJurisdiction,
      @Semantics.language:true
      @ObjectModel.foreignKey.association: '_Language' //Inserted by VDM CDS Suite Plugin

      spras        as Language,
      telf1        as PhoneNumber1,
      telf2        as PhoneNumber2,
      telbx        as TeleboxNumber,
      telx1        as TelexNumber,
      telfx        as FaxNumber,
      teltx        as TeletexNumber,
      datlt        as DataCommunicationPhoneNumber,
      drnam        as ProfitCenterPrinterName,
      usnam        as ProfitCenterCreatedByUser,
      ersda        as ProfitCenterCreationDate,

      _Text,
      _Country,
      _ControllingArea,
      _ProfitCenterHierarchyNode,
      _Language,
      _Company,
      _Segment,
      _Region,
      _PrftCtrCompanyCodeAssignment,
      //--[ GENERATED:012:29JlHNUf7jY4ipE4XHfNBG

      @Consumption.hidden: true
      _ControllingAreaText,
      @Consumption.hidden: true
      _SegmentText
      // ]--GENERATED


      //_TaxJurisdiction

}