I_LdgrCompanyCodeCurrencyRole

DDL: I_LDGRCOMPANYCODECURRENCYROLE Type: view_entity COMPOSITE

Currency Role in Ledger and Company Code

I_LdgrCompanyCodeCurrencyRole is a Composite CDS View that provides data about "Currency Role in Ledger and Company Code" in SAP S/4HANA. It reads from 10 data sources and exposes 191 fields with key fields Ledger, CompanyCode, CurrencyRole, CompanyCode, CurrencyRole.

Data Sources (10)

SourceAliasJoin Type
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles from
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all
I_LedgerCompanyCodeCrcyRoles I_LedgerCompanyCodeCrcyRoles union_all

Annotations (11)

NameValueLevelField
VDM.viewType #COMPOSITE view
AccessControl.authorizationCheck #MANDATORY view
Analytics.technicalName IFILDCCCRCY view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.representativeKey CurrencyRole view
ObjectModel.modelingPattern #NONE view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Currency Role in Ledger and Company Code view
Metadata.allowExtensions true view

Fields (191)

KeyFieldSource TableSource FieldDescription
KEY Ledger Ledger
KEY CompanyCode CompanyCode
KEY CurrencyRole
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole GlobalCurrencyRole
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency1Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency2Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency3Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency4Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency5Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency6Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency7Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
CurrencyFieldkeyLedger
KEY CompanyCode CompanyCode
KEY CurrencyRole FreeDefinedCurrency8Role
CurrencyField
CompanyCodeCurrencyRole I_LedgerCompanyCodeCrcyRoles CompanyCodeCurrencyRole
GlobalCurrencyRole I_LedgerCompanyCodeCrcyRoles GlobalCurrencyRole
FreeDefinedCurrency1Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency1Role
FreeDefinedCurrency2Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency2Role
FreeDefinedCurrency3Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency3Role
FreeDefinedCurrency4Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency4Role
FreeDefinedCurrency5Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency5Role
FreeDefinedCurrency6Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency6Role
FreeDefinedCurrency7Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency7Role
FreeDefinedCurrency8Role I_LedgerCompanyCodeCrcyRoles FreeDefinedCurrency8Role
AccountingValuationView _CurrencyRole AccountingValuationView
AccountingValuationSubview _CurrencyRole AccountingValuationSubview
_Ledger _Ledger
_CompanyCode _CompanyCode
_CurrencyRole _CurrencyRole
_CurrencyField _CurrencyField
@VDM.viewType: #COMPOSITE
@AbapCatalog.viewEnhancementCategory: [#NONE]
@AccessControl.authorizationCheck: #MANDATORY
@Analytics.technicalName: 'IFILDCCCRCY'
@ObjectModel: {usageType.sizeCategory: #M,
               usageType.dataClass:  #MASTER,
               usageType.serviceQuality: #C,
               representativeKey: 'CurrencyRole',
                supportedCapabilities: [#CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE],
                modelingPattern: #NONE }                      
@Metadata.ignorePropagatedAnnotations: true  
@EndUserText.label: 'Currency Role in Ledger and Company Code'
@Metadata.allowExtensions:true

define view entity I_LdgrCompanyCodeCurrencyRole
  as select from I_LedgerCompanyCodeCrcyRoles
  
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField  
{
  @ObjectModel.foreignKey.association: '_Ledger'
  key Ledger,
  @ObjectModel.foreignKey.association: '_CompanyCode'
  key CompanyCode,
  key cast(CompanyCodeCurrencyRole as fis_currencyrole preserving type ) as CurrencyRole,
  
  cast(  'CCC '  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
//// not required as always available

//where

//  CompanyCodeCurrencyRole <> ''


union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key GlobalCurrencyRole as CurrencyRole,
  cast(  'GC  '  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
      GlobalCurrencyRole <> ''
  and GlobalCurrencyRole <> CompanyCodeCurrencyRole

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency1Role as CurrencyRole,
  cast(  'FDC1'  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency1Role <> ''
  and FreeDefinedCurrency1Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency1Role <> GlobalCurrencyRole

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency2Role as CurrencyRole,
  cast(  'FDC2'  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency2Role <> ''
  and FreeDefinedCurrency2Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency2Role <> GlobalCurrencyRole
  and FreeDefinedCurrency2Role <> FreeDefinedCurrency1Role
  

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency3Role as CurrencyRole,
  cast(  'FDC3'  as fis_crcy_role_field preserving type ) as CurrencyField,

  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency3Role <> ''
  and FreeDefinedCurrency3Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency3Role <> GlobalCurrencyRole
  and FreeDefinedCurrency3Role <> FreeDefinedCurrency2Role  

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency4Role as CurrencyRole,
  cast(  'FDC4'  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency4Role <> ''
  and FreeDefinedCurrency4Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency4Role <> GlobalCurrencyRole
  and FreeDefinedCurrency4Role <> FreeDefinedCurrency2Role
  and FreeDefinedCurrency4Role <> FreeDefinedCurrency3Role

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency5Role as CurrencyRole,
  cast(  'FDC5'  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency5Role <> ''
  and FreeDefinedCurrency5Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency5Role <> GlobalCurrencyRole
  and FreeDefinedCurrency5Role <> FreeDefinedCurrency2Role
  and FreeDefinedCurrency5Role <> FreeDefinedCurrency3Role
  and FreeDefinedCurrency5Role <> FreeDefinedCurrency4Role

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency6Role as CurrencyRole,
  cast(  'FDC6'  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency6Role <> ''
  and FreeDefinedCurrency6Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency6Role <> GlobalCurrencyRole
  and FreeDefinedCurrency6Role <> FreeDefinedCurrency2Role
  and FreeDefinedCurrency6Role <> FreeDefinedCurrency3Role
  and FreeDefinedCurrency6Role <> FreeDefinedCurrency4Role
  and FreeDefinedCurrency6Role <> FreeDefinedCurrency5Role

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency7Role as CurrencyRole,
  cast(  'FDC7'  as fis_crcy_role_field preserving type ) as CurrencyField,
  
  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency7Role <> ''
  and FreeDefinedCurrency7Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency7Role <> GlobalCurrencyRole
  and FreeDefinedCurrency7Role <> FreeDefinedCurrency2Role
  and FreeDefinedCurrency7Role <> FreeDefinedCurrency3Role
  and FreeDefinedCurrency7Role <> FreeDefinedCurrency4Role
  and FreeDefinedCurrency7Role <> FreeDefinedCurrency5Role
  and FreeDefinedCurrency7Role <> FreeDefinedCurrency6Role

union all select from I_LedgerCompanyCodeCrcyRoles
association of many to exact one I_CurrencyRole  as _CurrencyRole   on $projection.CurrencyRole   = _CurrencyRole.CurrencyRole
association of many to exact one I_CurrencyField as _CurrencyField  on $projection.CurrencyField  = _CurrencyField.CurrencyField 
{
  key Ledger,
  key CompanyCode,
  key FreeDefinedCurrency8Role as CurrencyRole,
  cast(  'FDC8'  as fis_crcy_role_field preserving type ) as CurrencyField,

  I_LedgerCompanyCodeCrcyRoles.CompanyCodeCurrencyRole,   
  I_LedgerCompanyCodeCrcyRoles.GlobalCurrencyRole,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency1Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency2Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency3Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency4Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency5Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency6Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency7Role,
  I_LedgerCompanyCodeCrcyRoles.FreeDefinedCurrency8Role,  
  _CurrencyRole.AccountingValuationView,
  _CurrencyRole.AccountingValuationSubview,
/* Associations */
      _Ledger,
      _CompanyCode,
      _CurrencyRole,
      _CurrencyField
}
where
  FreeDefinedCurrency8Role <> ''
  and FreeDefinedCurrency8Role <> CompanyCodeCurrencyRole
  and FreeDefinedCurrency8Role <> GlobalCurrencyRole
  and FreeDefinedCurrency8Role <> FreeDefinedCurrency2Role
  and FreeDefinedCurrency8Role <> FreeDefinedCurrency3Role
  and FreeDefinedCurrency8Role <> FreeDefinedCurrency4Role
  and FreeDefinedCurrency8Role <> FreeDefinedCurrency5Role
  and FreeDefinedCurrency8Role <> FreeDefinedCurrency6Role
  and FreeDefinedCurrency8Role <> FreeDefinedCurrency7Role
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CURRENCYROLE",
"I_LEDGERCOMPANYCODECRCYROLES"
],
"ASSOCIATED":
[
"I_COMPANYCODE",
"I_CURRENCYFIELD",
"I_CURRENCYROLE",
"I_LEDGER"
],
"BASE":
[
"I_LEDGERCOMPANYCODECRCYROLES"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/