I_GLAcctTextTP

DDL: I_GLACCTTEXTTP SQL: IGLATTP Type: view TRANSACTIONAL Package: ODATA_MANAGE_GLACCOUNT

G/L Account Text (Draft 2.0)

I_GLAcctTextTP is a Transactional CDS View that provides data about "G/L Account Text (Draft 2.0)" in SAP S/4HANA. It reads from 1 data source (skat) and exposes 10 fields with key fields ChartOfAccounts, GLAccount, Language. It has 2 associations to related views. Part of development package ODATA_MANAGE_GLACCOUNT.

Data Sources (1)

SourceAliasJoin Type
skat skat from

Associations (2)

CardinalityTargetAliasCondition
[1..1] I_GLAcctInChtAcctsTP _GLAcctInChtAcctsTP $projection.ChartOfAccounts = _GLAcctInChtAcctsTP.ChartOfAccounts and $projection.GLAccount = _GLAcctInChtAcctsTP.GLAccount
[0..1] I_Language _Language $projection.LanguageForEdit = _Language.Language

Annotations (12)

NameValueLevelField
AbapCatalog.compiler.compareFilter true view
AbapCatalog.sqlViewName IGLATTP view
AccessControl.authorizationCheck #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label G/L Account Text (Draft 2.0) view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.writeDraftPersistence SKAT_DRAFT_20 view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.serviceQuality #D view
ObjectModel.usageType.sizeCategory #XL view
Search.searchable true view
VDM.viewType #TRANSACTIONAL view

Fields (10)

KeyFieldSource TableSource FieldDescription
KEY ChartOfAccounts ktopl
KEY GLAccount saknr
KEY Language spras
LanguageForEdit spras
LanguageName
GLAccountName txt20
GLAccountLongName txt50
LanguageISOCode _Language LanguageISOCode
_Language _Language
_GLAcctInChtAcctsTP _GLAcctInChtAcctsTP
@AbapCatalog.compiler.compareFilter: true 
@AbapCatalog.sqlViewName: 'IGLATTP' 
@AccessControl.authorizationCheck: #NOT_REQUIRED
@ClientHandling.algorithm: #SESSION_VARIABLE 
@EndUserText.label: 'G/L Account Text (Draft 2.0)'
@Metadata.ignorePropagatedAnnotations: true  
@ObjectModel: {
  semanticKey: ['ChartOfAccounts', 'GLAccount', 'Language'],
  //Only used for root view   

//  transactionalProcessingEnabled: true, 

  writeDraftPersistence: 'SKAT_DRAFT_20',     
  createEnabled, 
  deleteEnabled,   
  updateEnabled, 
  usageType: {
    dataClass: #MIXED,
    serviceQuality: #D, 
    sizeCategory: #XL  
  } 
}   
@Search.searchable: true  
@VDM.viewType: #TRANSACTIONAL  

define view I_GLAcctTextTP        
  as select from skat   

  /* BO node associations */
  association [1..1] to I_GLAcctInChtAcctsTP as _GLAcctInChtAcctsTP on  $projection.ChartOfAccounts = _GLAcctInChtAcctsTP.ChartOfAccounts
                                                                    and $projection.GLAccount       = _GLAcctInChtAcctsTP.GLAccount

  /* Associations */
  association [0..1] to I_Language           as _Language           on  $projection.LanguageForEdit = _Language.Language

{ 
  key ktopl as ChartOfAccounts,
      // not readonly because when created we must copy value from parent 

  key saknr as GLAccount,
      // not readonly because we allow user to edit Language

  key spras as Language,

      @Search.defaultSearchElement: true
      @Search.fuzzinessThreshold: 1.0
      @Search.ranking: #HIGH
      @ObjectModel.foreignKey.association: '_Language'
      @ObjectModel.text.element:  [ 'LanguageName' ]
      @ObjectModel.mandatory: true
      spras as LanguageForEdit, // for external edit

      _Language._Text[1:Language = $session.system_language].LanguageName,
      @Semantics.text: true
      txt20 as GLAccountName,
      @Semantics.text: true
      txt50 as GLAccountLongName,

      /* Fields expanded along associations, due to a limitation that we cannot introduce new fields in BO consumption view (@ObjectModel.type: #CONSUMPTION) */
      _Language.LanguageISOCode,

      /* Associations */
      _Language,
      @ObjectModel.association.type: [#TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT]
      _GLAcctInChtAcctsTP
}