@AbapCatalog.sqlViewName: 'PCSCUOVERVIEW'
@AbapCatalog.compiler.compareFilter: true@AbapCatalog.preserveKey: true@VDM.viewType: #COMPOSITE@VDM.private:true@ObjectModel.usageType: {
dataClass: #MASTER,
serviceQuality: #D,
sizeCategory: #M
}@ClientHandling: {
type: #CLIENT_DEPENDENT,
algorithm: #SESSION_VARIABLE
}@AccessControl.authorizationCheck: #NOT_REQUIREDdefineview P_CnsldtnUnitOverview
asselectfrom I_CnsldtnUnit_3 as _CnsldtnUnit
crossjoin I_CnsldtnVersion as _ConsolidationVersion
// retrieve all assignments
leftouter to many join I_CnsldtnUnitByTime as _CnsldtnUnitByTime on _CnsldtnUnit.ConsolidationDimension = _CnsldtnUnitByTime.ConsolidationDimension
and _CnsldtnUnit.ConsolidationUnit = _CnsldtnUnitByTime.ConsolidationUnit
leftouter to many join I_CnsldtnUnitByTimeVersion as _CnsldtnUnitByTimeVersion on _CnsldtnUnit.ConsolidationDimension = _CnsldtnUnitByTimeVersion.ConsolidationDimension
and _CnsldtnUnit.ConsolidationUnit = _CnsldtnUnitByTimeVersion.ConsolidationUnit
and _ConsolidationVersion.CnsldtnUnitAttributeVersion = _CnsldtnUnitByTimeVersion.CnsldtnUnitAttributeVersion
leftouter to many join P_CnsldtnAcctgIntegSetting as _CnsldtnAcctgIntegSetting on _CnsldtnAcctgIntegSetting.SequenceNumber = '1'
or _CnsldtnAcctgIntegSetting.SequenceNumber = '2'
{
key _CnsldtnUnit.ConsolidationDimension,
key _CnsldtnUnit.ConsolidationUnit,
key _ConsolidationVersion.ConsolidationVersion,
// case statements required for items without assignment
keycasewhen _CnsldtnUnitByTime.FromFiscalYearPeriod isnulland _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod isnulland _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod isnullthencast( '0000000' as fincs_fsi_fiscalyearper_from)
when _CnsldtnUnitByTime.FromFiscalYearPeriod isnulland _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod isnullthen _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
when _CnsldtnUnitByTime.FromFiscalYearPeriod isnulland _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod isnullthen _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod
when _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod isnulland _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod isnullthen _CnsldtnUnitByTime.FromFiscalYearPeriod
when _CnsldtnUnitByTime.FromFiscalYearPeriod isnullthencasewhen _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod >= _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
then _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod
else _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
endwhen _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod isnullthencasewhen _CnsldtnUnitByTime.FromFiscalYearPeriod >= _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
then _CnsldtnUnitByTime.FromFiscalYearPeriod
else _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
endwhen _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod isnullthencasewhen _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod >= _CnsldtnUnitByTime.FromFiscalYearPeriod
then _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod
else _CnsldtnUnitByTime.FromFiscalYearPeriod
endwhen _CnsldtnUnitByTime.FromFiscalYearPeriod >= _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod and _CnsldtnUnitByTime.FromFiscalYearPeriod >= _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
then _CnsldtnUnitByTime.FromFiscalYearPeriod
when _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod >= _CnsldtnUnitByTime.FromFiscalYearPeriod and _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod >= _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
then _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod
else _CnsldtnAcctgIntegSetting.FromFiscalYearPeriod
endas FromFiscalYearPeriod,
casewhen _CnsldtnUnitByTime.ToFiscalYearPeriod isnulland _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod isnulland _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod isnullthencast( '9999999' as fincs_fsi_fiscalyearper_to)
when _CnsldtnUnitByTime.ToFiscalYearPeriod isnulland _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod isnullthen _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
when _CnsldtnUnitByTime.ToFiscalYearPeriod isnulland _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod isnullthen _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod
when _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod isnulland _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod isnullthen _CnsldtnUnitByTime.ToFiscalYearPeriod
when _CnsldtnUnitByTime.ToFiscalYearPeriod isnullthencasewhen _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod <= _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
then _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod
else _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
endwhen _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod isnullthencasewhen _CnsldtnUnitByTime.ToFiscalYearPeriod <= _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
then _CnsldtnUnitByTime.ToFiscalYearPeriod
else _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
endwhen _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod isnullthencasewhen _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod <= _CnsldtnUnitByTime.ToFiscalYearPeriod
then _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod
else _CnsldtnUnitByTime.ToFiscalYearPeriod
endwhen _CnsldtnUnitByTime.ToFiscalYearPeriod <= _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod and _CnsldtnUnitByTime.ToFiscalYearPeriod <= _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
then _CnsldtnUnitByTime.ToFiscalYearPeriod
when _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod <= _CnsldtnUnitByTime.ToFiscalYearPeriod and _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod <= _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
then _CnsldtnUnitByTimeVersion.ToFiscalYearPeriod
else _CnsldtnAcctgIntegSetting.ToFiscalYearPeriod
endas ToFiscalYearPeriod,
_ConsolidationVersion.CnsldtnUnitAttributeVersion,
_CnsldtnUnit.Country,
_CnsldtnUnit.ConsolidationUnitLink,
_CnsldtnUnit.ConsolidationUnitLinkLabel,
_CnsldtnUnitByTime.Company,
_CnsldtnUnitByTime.ConsolidationUnitLocalCurrency,
cast ( coalesce( _CnsldtnUnitByTimeVersion.DocumentEntryIsInGroupCurrency, '' ) as fincs_gcind preserving type ) as DocumentEntryIsInGroupCurrency,
cast ( coalesce( _CnsldtnUnitByTimeVersion.CnsldtnUnitLocalCrcySource, '' ) as fincs_local_curr_source preserving type ) as CnsldtnUnitLocalCrcySource,
cast ( coalesce( _CnsldtnUnitByTimeVersion.CnsldtnUnitGroupCrcySource, '' ) as fincs_group_curr_source preserving type ) as CnsldtnUnitGroupCrcySource,
cast ( coalesce( _CnsldtnUnitByTimeVersion.FiscalYearVariant, '' ) as fincs_bunit_periv preserving type ) as FiscalYearVariant,
cast ( coalesce( _CnsldtnUnitByTimeVersion.CnsldtnDataTransferMethod, '' ) as fincs_datatransfermethod preserving type ) as CnsldtnDataTransferMethod,
cast ( coalesce( _CnsldtnUnitByTimeVersion.CnsldtnUploadMethod, '' ) as fincs_upload_method preserving type ) as CnsldtnUploadMethod,
cast ( coalesce( _CnsldtnUnitByTimeVersion.CnsldtnCrcyTranslationMethod, '' ) as fincs_crcy_trnsltn_method preserving type ) as CnsldtnCrcyTranslationMethod,
cast ( coalesce( _CnsldtnUnitByTimeVersion.TaxRate, 0 ) as fc_taxrt preserving type ) as TaxRate,
cast ( coalesce( _CnsldtnUnitByTimeVersion.ConsolidationUnitIsPartnerOnly, '' ) as fincs_bunit_partner_only preserving type ) as ConsolidationUnitIsPartnerOnly,
cast ( coalesce( _CnsldtnUnitByTimeVersion.CnsldtnUnitDataCollection, '' ) as fincs_unitdatacollection preserving type ) as CnsldtnUnitDataCollection,
cast ( coalesce( _CnsldtnUnitByTimeVersion.ConsolidationUnitPartner, '' ) as fincs_unitpartner preserving type ) as ConsolidationUnitPartner,
cast ( coalesce( _CnsldtnUnitByTimeVersion.ConsolidationUnitPostingRule, '' ) as fincs_unitpostingrule preserving type ) as ConsolidationUnitPostingRule,
cast ( coalesce( _CnsldtnUnitByTimeVersion.ConsolidationUnitValidation, '' ) as fincs_unitvalidation preserving type ) as ConsolidationUnitValidation,
_CnsldtnAcctgIntegSetting.CnsldtnFrmYrForAcctgInteg,
// purpose: association to extension include viewin higher layers of view stack
cast( _CnsldtnUnitByTimeVersion.FromFiscalYearPeriod as fins_fyearperiod) as FiscalYearPeriod
}