I_GLAccountForPublicSectorTP

DDL: I_GLACCOUNTFORPUBLICSECTORTP Type: view_entity TRANSACTIONAL Package: ODATA_MANAGE_GLACCOUNT

FM Settings for GL Accounts

I_GLAccountForPublicSectorTP is a Transactional CDS View that provides data about "FM Settings for GL Accounts" in SAP S/4HANA. It reads from 1 data source (I_GLAccountForPublicSector) and exposes 24 fields with key fields ChartOfAccounts, GLAccount. It has 5 associations to related views. Part of development package ODATA_MANAGE_GLACCOUNT.

Data Sources (1)

SourceAliasJoin Type
I_GLAccountForPublicSector _PublicSector from

Associations (5)

CardinalityTargetAliasCondition
[0..*] I_PubSecBdgtCnsmpnTypeText _BudgetCnsmpnTypeText $projection.PubSecBudgetCnsmpnType = _BudgetCnsmpnTypeText.PubSecBudgetCnsmpnType
[0..*] I_PubSecBdgtAcctRevnExpnText _BdgtAcctRevnExpnText $projection.PubSecBdgtAcctRevnExpnCode = _BdgtAcctRevnExpnText.PubSecBdgtAcctRevnExpnCode
[0..*] I_GLAccountText _CashLedgerAccountText $projection.ChartOfAccounts = _CashLedgerAccountText.ChartOfAccounts and $projection.CashLedgerAccount = _CashLedgerAccountText.GLAccount
[0..*] I_GLAccountText _BdgtAcctCarryFwdToText $projection.ChartOfAccounts = _BdgtAcctCarryFwdToText.ChartOfAccounts and $projection.PubSecBdgtAcctCarryFwdTo = _BdgtAcctCarryFwdToText.GLAccount
[1..1] I_GLAcctInChtAcctsTP _GLAcctInChtAcctsTP $projection.ChartOfAccounts = _GLAcctInChtAcctsTP.ChartOfAccounts and $projection.GLAccount = _GLAcctInChtAcctsTP.GLAccount

Annotations (9)

NameValueLevelField
AccessControl.authorizationCheck #CHECK view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label FM Settings for GL Accounts view
ObjectModel.writeDraftPersistence GLACTX_DRAFT_20 view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
Search.searchable true view
VDM.viewType #TRANSACTIONAL view

Fields (24)

KeyFieldSource TableSource FieldDescription
KEY ChartOfAccounts I_GLAccountForPublicSector ChartOfAccounts
KEY GLAccount I_GLAccountForPublicSector GLAccount
PubSecBudgetCnsmpnType I_GLAccountForPublicSector PubSecBudgetCnsmpnType
PubSecBdgtAcctRevnExpnCode I_GLAccountForPublicSector PubSecBdgtAcctRevnExpnCode
PubSecBudgetIsRelevant I_GLAccountForPublicSector PubSecBudgetIsRelevant
PubSecBdgtAcctIsPostgAllowed I_GLAccountForPublicSector PubSecBdgtAcctIsPostgAllowed
PubSecBdgtAcctIsBdgtAllowed I_GLAccountForPublicSector PubSecBdgtAcctIsBdgtAllowed
PubSecBdgtAcctIsCarryFwd I_GLAccountForPublicSector PubSecBdgtAcctIsCarryFwd
PubSecBdgtAcctCarryFwdTo I_GLAccountForPublicSector PubSecBdgtAcctCarryFwdTo
CashLedgerAccount I_GLAccountForPublicSector CashLedgerAccount
SponsoredClass I_GLAccountForPublicSector SponsoredClass
_ChartOfAccounts I_GLAccountForPublicSector _ChartOfAccounts
_GLAccountHierarchyNode I_GLAccountForPublicSector _GLAccountHierarchyNode
_PubSecBdgtCnsmpnType I_GLAccountForPublicSector _PubSecBdgtCnsmpnType
_PubSecBdgtAcctRevnExpnCode I_GLAccountForPublicSector _PubSecBdgtAcctRevnExpnCode
_PubSecBdgtAcctCarryFwdTo I_GLAccountForPublicSector _PubSecBdgtAcctCarryFwdTo
_CarryForwardBudgetAccount I_GLAccountForPublicSector _CarryForwardBudgetAccount
_CashLedgerAccount I_GLAccountForPublicSector _CashLedgerAccount
_Text I_GLAccountForPublicSector _Text
_BudgetCnsmpnTypeText _BudgetCnsmpnTypeText
_BdgtAcctRevnExpnText _BdgtAcctRevnExpnText
_CashLedgerAccountText _CashLedgerAccountText
_BdgtAcctCarryFwdToText _BdgtAcctCarryFwdToText
_GLAcctInChtAcctsTP _GLAcctInChtAcctsTP
@AccessControl.authorizationCheck: #CHECK
@Metadata.ignorePropagatedAnnotations: true  
@EndUserText.label: 'FM Settings for GL Accounts'
@ObjectModel: {
  semanticKey: [ 'GLAccount'],
  writeDraftPersistence: 'GLACTX_DRAFT_20',
  createEnabled,
  deleteEnabled,
  updateEnabled,
   usageType: {
       dataClass: #MASTER,
       serviceQuality: #C,
       sizeCategory: #L
   }
}    
@Search.searchable: true 
@VDM.viewType: #TRANSACTIONAL
define view entity I_GLAccountForPublicSectorTP
  as select from I_GLAccountForPublicSector as _PublicSector
  association [0..*] to I_PubSecBdgtCnsmpnTypeText   as _BudgetCnsmpnTypeText   on  $projection.PubSecBudgetCnsmpnType = _BudgetCnsmpnTypeText.PubSecBudgetCnsmpnType
  association [0..*] to I_PubSecBdgtAcctRevnExpnText as _BdgtAcctRevnExpnText   on  $projection.PubSecBdgtAcctRevnExpnCode = _BdgtAcctRevnExpnText.PubSecBdgtAcctRevnExpnCode
  association [0..*] to I_GLAccountText              as _CashLedgerAccountText  on  $projection.ChartOfAccounts   = _CashLedgerAccountText.ChartOfAccounts
                                                                                and $projection.CashLedgerAccount = _CashLedgerAccountText.GLAccount
  association [0..*] to I_GLAccountText              as _BdgtAcctCarryFwdToText on  $projection.ChartOfAccounts          = _BdgtAcctCarryFwdToText.ChartOfAccounts
                                                                                and $projection.PubSecBdgtAcctCarryFwdTo = _BdgtAcctCarryFwdToText.GLAccount
  /* BO nodes associations */
  association [1..1] to I_GLAcctInChtAcctsTP         as _GLAcctInChtAcctsTP     on  $projection.ChartOfAccounts = _GLAcctInChtAcctsTP.ChartOfAccounts
                                                                                and $projection.GLAccount       = _GLAcctInChtAcctsTP.GLAccount
{
      @ObjectModel.readOnly: true
      @ObjectModel.foreignKey.association: '_ChartOfAccounts'
  key _PublicSector.ChartOfAccounts,
      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 0.8
      @Search.ranking: #HIGH
      @ObjectModel.text.association: '_Text'
      @ObjectModel.hierarchy.association: '_GLAccountHierarchyNode'
      @ObjectModel.readOnly: true
  key _PublicSector.GLAccount,
      @ObjectModel.foreignKey.association: '_PubSecBdgtCnsmpnType'
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      @ObjectModel.text.association: '_BudgetCnsmpnTypeText'
      _PublicSector.PubSecBudgetCnsmpnType,
      @ObjectModel.foreignKey.association: '_PubSecBdgtAcctRevnExpnCode'
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      @ObjectModel.text.association: '_BdgtAcctRevnExpnText'
      _PublicSector.PubSecBdgtAcctRevnExpnCode,
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      _PublicSector.PubSecBudgetIsRelevant,
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      _PublicSector.PubSecBdgtAcctIsPostgAllowed,
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      _PublicSector.PubSecBdgtAcctIsBdgtAllowed,
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      _PublicSector.PubSecBdgtAcctIsCarryFwd,
      
//      @ObjectModel.foreignKey.association: '_PubSecBdgtAcctCarryFwdTo'

      @ObjectModel.foreignKey.association: '_CarryForwardBudgetAccount'
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      @ObjectModel.text.association: '_BdgtAcctCarryFwdToText'
      _PublicSector.PubSecBdgtAcctCarryFwdTo,
      @ObjectModel.foreignKey.association: '_CashLedgerAccount'
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      @ObjectModel.text.association: '_CashLedgerAccountText'
      //_PublicSector.PubSecBdgtAcctCashOrigin,

      _PublicSector.CashLedgerAccount,
      
      @ObjectModel.mandatory: #('EXTERNAL_CALCULATION')
      _PublicSector.SponsoredClass,
      _PublicSector._ChartOfAccounts,
      _PublicSector._GLAccountHierarchyNode,
      _PublicSector._PubSecBdgtCnsmpnType,
      _PublicSector._PubSecBdgtAcctRevnExpnCode,
      _PublicSector._PubSecBdgtAcctCarryFwdTo,
      _PublicSector._CarryForwardBudgetAccount,
      _PublicSector._CashLedgerAccount,
      _PublicSector._Text,
      _BudgetCnsmpnTypeText,
      _BdgtAcctRevnExpnText,
      _CashLedgerAccountText,
      _BdgtAcctCarryFwdToText,
      @ObjectModel.association.type: [#TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT]
      _GLAcctInChtAcctsTP

}