August 8, 2007 at 10:29 am
Hi,
Can someone help us in fine-tuning this SQL which is giving us sleepless nights because it fills the whole tempdb when executed. The estimated execution plan shows that it spends 31% cost on Hash Match/Inner Join and 50% on Hash Match (Partial Aggregate). The Hash Match outputs 150 million+ rows.
Here is the DDL for the important tables involved:
================================================================================
CREATE TABLE [dbo].[GL_Star_Facts2006](
[AccountID] [nchar](20) NOT NULL,
[BusinessUnitID] [nchar](20) NOT NULL,
[CompanyNumberID] [nchar](20) NOT NULL,
[DateID] [bigint] NOT NULL,
[FactsDetailID] [nchar](20) NOT NULL,
[FiscalYearID] [nchar](20) NOT NULL,
[LedgerID] [nchar](20) NOT NULL,
[SubLedgerID] [nchar](20) NOT NULL,
[SourceID] [int] NOT NULL,
[AID] [nchar](8) NOT NULL,
[FiscalYear] [int] NOT NULL,
[Account] [nchar](15) NOT NULL,
[LedgerTypeCode] [nchar](2) NOT NULL,
[Object] [nchar](6) NOT NULL,
[Subsidiary] [nchar](8) NOT NULL,
[CompanyNumber] [nchar](5) NOT NULL,
[BusinessUnitCode] [nchar](12) NOT NULL,
[SubLedger] [nchar](8) NOT NULL,
[SubLedgerType] [nchar](1) NOT NULL,
[CurrentMTD] [decimal](20, 7) NOT NULL,
[CurrentYTD] [decimal](20, 7) NOT NULL,
[PriorYearCloseBalance] [decimal](20, 7) NOT NULL,
[NetPosting01] [decimal](20, 7) NOT NULL,
[Balance01] [decimal](20, 7) NOT NULL,
[NetPosting02] [decimal](20, 7) NOT NULL,
[Balance02] [decimal](20, 7) NOT NULL,
[NetPosting03] [decimal](20, 7) NOT NULL,
[Balance03] [decimal](20, 7) NOT NULL,
[NetPosting04] [decimal](20, 7) NOT NULL,
[Balance04] [decimal](20, 7) NOT NULL,
[NetPosting05] [decimal](20, 7) NOT NULL,
[Balance05] [decimal](20, 7) NOT NULL,
[NetPosting06] [decimal](20, 7) NOT NULL,
[Balance06] [decimal](20, 7) NOT NULL,
[NetPosting07] [decimal](20, 7) NOT NULL,
[Balance07] [decimal](20, 7) NOT NULL,
[NetPosting08] [decimal](20, 7) NOT NULL,
[Balance08] [decimal](20, 7) NOT NULL,
[NetPosting09] [decimal](20, 7) NOT NULL,
[Balance09] [decimal](20, 7) NOT NULL,
[NetPosting10] [decimal](20, 7) NOT NULL,
[Balance10] [decimal](20, 7) NOT NULL,
[NetPosting11] [decimal](20, 7) NOT NULL,
[Balance11] [decimal](20, 7) NOT NULL,
[NetPosting12] [decimal](20, 7) NOT NULL,
[Balance12] [decimal](20, 7) NOT NULL,
[NetPosting13] [decimal](20, 7) NOT NULL,
[Balance13] [decimal](20, 7) NOT NULL,
[NetPosting14] [decimal](20, 7) NOT NULL,
[Balance14] [decimal](20, 7) NOT NULL,
[RequestedBudget] [decimal](20, 7) NOT NULL,
[ApprovedBudget] [decimal](20, 7) NOT NULL,
[OriginalBeginningBudget] [decimal](20, 7) NOT NULL,
[CurrencyCodeFrom] [nchar](3) NOT NULL,
[CurrencyCodeIn] [nchar](3) NOT NULL,
[Source] [nchar](20) NOT NULL,
[ITDPriorYearCloseBalance] [decimal](20, 7) NOT NULL,
[ITDBalance01] [decimal](20, 7) NOT NULL,
[ITDBalance02] [decimal](20, 7) NOT NULL,
[ITDBalance03] [decimal](20, 7) NOT NULL,
[ITDBalance04] [decimal](20, 7) NOT NULL,
[ITDBalance05] [decimal](20, 7) NOT NULL,
[ITDBalance06] [decimal](20, 7) NOT NULL,
[ITDBalance07] [decimal](20, 7) NOT NULL,
[ITDBalance08] [decimal](20, 7) NOT NULL,
[ITDBalance09] [decimal](20, 7) NOT NULL,
[ITDBalance10] [decimal](20, 7) NOT NULL,
[ITDBalance11] [decimal](20, 7) NOT NULL,
[ITDBalance12] [decimal](20, 7) NOT NULL,
[ITDBalance13] [decimal](20, 7) NOT NULL,
[ITDBalance14] [decimal](20, 7) NOT NULL,
[InsertIndicator] [int] NOT NULL,
[InsertDate] [datetime] NOT NULL,
[ChangeIndicator] [int] NOT NULL,
[ChangeDate] [datetime] NOT NULL,
[DeleteIndicator] [int] NOT NULL,
[DeleteDate] [datetime] NOT NULL,
[PurgeDate] [datetime] NOT NULL,
CONSTRAINT [PK_GL_Star_Facts2006] PRIMARY KEY CLUSTERED
(
[AID] ASC,
[SubLedger] ASC,
[SubLedgerType] ASC,
[FiscalYear] ASC,
[LedgerTypeCode] ASC,
[CurrencyCodeFrom] ASC,
[CurrencyCodeIn] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, FILLFACTOR = 80) ON [GLDATA]
) ON [GLDATA]
END
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_Account')
CREATE NONCLUSTERED INDEX [IX_Account] ON [dbo].[GL_Star_Facts2006]
(
[Account] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_Balances')
CREATE NONCLUSTERED INDEX [IX_Balances] ON [dbo].[GL_Star_Facts2006]
(
[SourceID] ASC,
[LedgerTypeCode] ASC,
[BusinessUnitCode] ASC,
[Account] ASC
)
INCLUDE ( [Object],
[Balance01],
[Balance02],
[Balance03],
[Balance04],
[Balance05],
[Balance06],
[Balance07],
[Balance08],
[Balance09],
[Balance10],
[Balance11],
[Balance12]) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_BusinessUnit')
CREATE NONCLUSTERED INDEX [IX_BusinessUnit] ON [dbo].[GL_Star_Facts2006]
(
[BusinessUnitCode] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_Company')
CREATE NONCLUSTERED INDEX [IX_Company] ON [dbo].[GL_Star_Facts2006]
(
[CompanyNumber] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_FiscalYear')
CREATE NONCLUSTERED INDEX [IX_FiscalYear] ON [dbo].[GL_Star_Facts2006]
(
[FiscalYear] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_LedgerType')
CREATE NONCLUSTERED INDEX [IX_LedgerType] ON [dbo].[GL_Star_Facts2006]
(
[LedgerTypeCode] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[GL_Star_Facts2006]') AND name = N'IX_SubLedger')
CREATE NONCLUSTERED INDEX [IX_SubLedger] ON [dbo].[GL_Star_Facts2006]
(
[SubLedger] ASC,
[SubLedgerType] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [GLDATA]
GO
----------------------------------------------------------------------------------------------
CREATE TABLE [dbo].[Star_BusinessUnit](
[BusinessUnitID] [char](20) NOT NULL,
[SourceID] [int] NOT NULL,
[BusinessUnitCode] [char](12) NOT NULL,
[Type] [char](2) NOT NULL,
[BusinessUnitTypeDescription] [char](30) NOT NULL,
[BusinessUnit] [char](30) NOT NULL,
[PostingEditCode] [char](1) NOT NULL,
[PostingEditCodeDescription] [char](30) NOT NULL,
[CompanyNumber] [char](5) NOT NULL,
[AddressNumber] [int] NOT NULL,
[Category01Code] [char](3) NOT NULL,
[Category01] [varchar](255) NOT NULL,
[Category02Code] [char](3) NOT NULL,
[Category02] [varchar](255) NOT NULL,
[Category03Code] [char](3) NOT NULL,
[Category03] [varchar](255) NOT NULL,
[Category04Code] [char](3) NOT NULL,
[Category04] [varchar](255) NOT NULL,
[Category05Code] [char](3) NOT NULL,
[Category05] [varchar](255) NOT NULL,
[Category06Code] [char](3) NOT NULL,
[Category06] [varchar](255) NOT NULL,
[Category07Code] [char](3) NOT NULL,
[Category07] [varchar](255) NOT NULL,
[Category08Code] [char](3) NOT NULL,
[Category08] [varchar](255) NOT NULL,
[Category09Code] [char](3) NOT NULL,
[Category09] [varchar](255) NOT NULL,
[Category10Code] [char](3) NOT NULL,
[Category10] [varchar](255) NOT NULL,
[Category11Code] [char](3) NOT NULL,
[Category11] [varchar](255) NOT NULL,
[Category12Code] [char](3) NOT NULL,
[Category12] [varchar](255) NOT NULL,
[Category13Code] [char](3) NOT NULL,
[Category13] [varchar](255) NOT NULL,
[Category14Code] [char](3) NOT NULL,
[Category14] [varchar](255) NOT NULL,
[Category15Code] [char](3) NOT NULL,
[Category15] [varchar](255) NOT NULL,
[Category16Code] [char](3) NOT NULL,
[Category16] [varchar](255) NOT NULL,
[Category17Code] [char](3) NOT NULL,
[Category17] [varchar](255) NOT NULL,
[Category18Code] [char](3) NOT NULL,
[Category18] [varchar](255) NOT NULL,
[Category19Code] [char](3) NOT NULL,
[Category19] [varchar](255) NOT NULL,
[Category20Code] [char](3) NOT NULL,
[Category20] [varchar](255) NOT NULL,
[Category21Code] [char](10) NOT NULL,
[Category21] [varchar](255) NOT NULL,
[Category22Code] [char](10) NOT NULL,
[Category22] [varchar](255) NOT NULL,
[Category23Code] [char](10) NOT NULL,
[Category23] [varchar](255) NOT NULL,
[Category24Code] [char](10) NOT NULL,
[Category24] [varchar](255) NOT NULL,
[Category25Code] [char](10) NOT NULL,
[Category25] [varchar](255) NOT NULL,
[Category26Code] [char](10) NOT NULL,
[Category26] [varchar](255) NOT NULL,
[Category27Code] [char](10) NOT NULL,
[Category27] [varchar](255) NOT NULL,
[Category28Code] [char](10) NOT NULL,
[Category28] [varchar](255) NOT NULL,
[Category29Code] [char](10) NOT NULL,
[Category29] [varchar](255) NOT NULL,
[Category30Code] [char](10) NOT NULL,
[Category30] [varchar](255) NOT NULL,
[Source] [char](20) NOT NULL,
[OwnerReceivableAddress] [int] NOT NULL,
[County] [char](3) NOT NULL,
[StateCode] [char](3) NOT NULL,
[StateCodeDescription] [char](30) NOT NULL,
[ContractType] [char](4) NOT NULL,
[CertifiedJobYN] [char](1) NOT NULL,
[ProjectNumber] [char](12) NOT NULL,
[PercentComplete] [decimal](20, 7) NOT NULL,
[CostToComplete] [decimal](20, 7) NOT NULL,
[PlannedStartDateID] [bigint] NOT NULL,
[ActualStartDateID] [bigint] NOT NULL,
[PlannedCompletionDateID] [bigint] NOT NULL,
[ActualCompletionDateID] [bigint] NOT NULL,
[FinalPaymentDateID] [bigint] NOT NULL,
[CostAtCompletion] [decimal](20, 7) NOT NULL,
[ProfitAtCompletion] [decimal](20, 7) NOT NULL,
[InsertIndicator] [int] NOT NULL,
[InsertDate] [datetime] NOT NULL,
[ChangeIndicator] [int] NOT NULL,
[ChangeDate] [datetime] NOT NULL,
[DeleteIndicator] [int] NOT NULL,
[DeleteDate] [datetime] NOT NULL,
[PurgeDate] [datetime] NOT NULL,
CONSTRAINT [PK_Star_BusinessUnit] PRIMARY KEY CLUSTERED
(
[BusinessUnitCode] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, FILLFACTOR = 90) ON [PRIMARY]
) ON [PRIMARY]
END
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[Star_BusinessUnit]') AND name = N'IX_BusinessUnit_Category')
CREATE NONCLUSTERED INDEX [IX_BusinessUnit_Category] ON [dbo].[Star_BusinessUnit]
(
[Category15Code] ASC,
[Category15] ASC,
[Category20] ASC,
[Category21Code] ASC,
[SourceID] ASC
)
INCLUDE ( [BusinessUnitCode],
[Category20Code]) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [COMMONDATA]
GO
--------------------------------------------------------------------------------------------------------
CREATE TABLE [dbo].[Star_Account](
[AccountID] [char](20) NOT NULL,
[SourceID] [int] NOT NULL,
[AID] [char](8) NOT NULL,
[Account] [char](15) NOT NULL,
[AccountDesc] [char](30) NOT NULL,
[BusinessUnitCode] [char](12) NOT NULL,
[Company] [char](5) NOT NULL,
[Object] [char](6) NOT NULL,
[Subsidiary] [char](8) NOT NULL,
[LevelOfDetail] [char](1) NOT NULL,
[PostingEditCode] [char](1) NOT NULL,
[PostingEditCodeDescription] [char](60) NOT NULL,
[AccountParent] [char](15) NULL,
[AccountParentDesc] [char](30) NULL,
[AccountLOD3] [char](15) NULL,
[AccountLOD3Desc] [char](30) NULL,
[AccountLOD4] [char](15) NULL,
[AccountLOD4Desc] [char](30) NULL,
[AccountLOD5] [char](15) NULL,
[AccountLOD5Desc] [char](30) NULL,
[AccountLOD6] [char](15) NULL,
[AccountLOD6Desc] [char](30) NULL,
[AccountLOD7] [char](15) NULL,
[AccountLOD7Desc] [char](30) NULL,
[AccountLOD8] [char](15) NULL,
[AccountLOD8Desc] [char](30) NULL,
[AccountLOD9] [char](15) NULL,
[AccountLOD9Desc] [char](30) NULL,
[Category01Code] [char](3) NOT NULL,
[Category01] [varchar](255) NOT NULL,
[Category02Code] [char](3) NOT NULL,
[Category02] [varchar](255) NOT NULL,
[Category03Code] [char](3) NOT NULL,
[Category03] [varchar](255) NOT NULL,
[Category04Code] [char](3) NOT NULL,
[Category04] [varchar](255) NOT NULL,
[Category05Code] [char](3) NOT NULL,
[Category05] [varchar](255) NOT NULL,
[Category06Code] [char](3) NOT NULL,
[Category06] [varchar](255) NOT NULL,
[Category07Code] [char](3) NOT NULL,
[Category07] [varchar](255) NOT NULL,
[Category08Code] [char](3) NOT NULL,
[Category08] [varchar](255) NOT NULL,
[Category09Code] [char](3) NOT NULL,
[Category09] [varchar](255) NOT NULL,
[Category10Code] [char](3) NOT NULL,
[Category10] [varchar](255) NOT NULL,
[Category11Code] [char](3) NOT NULL,
[Category11] [varchar](255) NOT NULL,
[Category12Code] [char](3) NOT NULL,
[Category12] [varchar](255) NOT NULL,
[Category13Code] [char](3) NOT NULL,
[Category13] [varchar](255) NOT NULL,
[Category14Code] [char](3) NOT NULL,
[Category14] [varchar](255) NOT NULL,
[Category15Code] [char](3) NOT NULL,
[Category15] [varchar](255) NOT NULL,
[Category16Code] [char](3) NOT NULL,
[Category16] [varchar](255) NOT NULL,
[Category17Code] [char](3) NOT NULL,
[Category17] [varchar](255) NOT NULL,
[Category18Code] [char](3) NOT NULL,
[Category18] [varchar](255) NOT NULL,
[Category19Code] [char](3) NOT NULL,
[Category19] [varchar](255) NOT NULL,
[Category20Code] [char](3) NOT NULL,
[Category20] [varchar](255) NOT NULL,
[Category21Code] [char](10) NOT NULL,
[Category21] [varchar](255) NOT NULL,
[Category22Code] [char](10) NOT NULL,
[Category22] [varchar](255) NOT NULL,
[Category23Code] [char](10) NOT NULL,
[Category23] [varchar](255) NOT NULL,
[Source] [char](20) NOT NULL,
[InsertIndicator] [int] NOT NULL,
[InsertDate] [datetime] NOT NULL,
[ChangeIndicator] [int] NOT NULL,
[ChangeDate] [datetime] NOT NULL,
[DeleteIndicator] [int] NOT NULL,
[DeleteDate] [datetime] NOT NULL,
[PurgeDate] [datetime] NOT NULL,
CONSTRAINT [PK_Star_Account] PRIMARY KEY CLUSTERED
(
[AID] ASC,
[SourceID] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, FILLFACTOR = 90) ON [COMMONDATA]
) ON [COMMONDATA]
END
GO
IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[Star_Account]') AND name = N'IX_Object')
CREATE NONCLUSTERED INDEX [IX_Object] ON [dbo].[Star_Account]
(
[Object] ASC
)
INCLUDE ( [SourceID],
[Account]) WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [COMMONDATA]
GO
==================================================================================
Here is the SQL Query giving us trouble:
SELECT
Business_Unit.Category15Code,
Business_Unit.Category15,
Business_Unit.Category20,
Business_Unit.Category21Code,
CASE
when ( Business_Unit.Category15Code ) In ( 'NA','KI','EH','KO','UM','H') then 'NAR'
when ( Business_Unit.Category20Code ) In ( 'I','E') then 'ER'
when ( Business_Unit.Category20Code ) In ( 'A') then 'AL'
when ( Business_Unit.Category15Code ) In ( 'U') then 'UUU'
when ( Business_Unit.Category15Code ) In ( 'T') then 'TTT'
when ( Business_Unit.Category15Code ) In ( 'HE') then 'HEQ'
when ( Business_Unit.Category15Code ) In ( 'E') then 'ELL'
else 'Other'
end,
CASE
when ( Business_Unit.Category15Code ) In ( 'NA','KI','EH','KO','UM','H') then 'NAR'
when ( Business_Unit.Category20Code ) In ( 'I','E') then 'ER'
when ( Business_Unit.Category20Code ) In ( 'A') then 'AL'
else 'Other'
end,
CASE
when ( Business_Unit.Category15Code ) In ( 'U') then 'UUU'
when ( Business_Unit.Category15Code ) In ( 'T') then 'TTT'
when ( Business_Unit.Category15Code ) In ( 'HE') then 'HEQ'
when ( Business_Unit.Category15Code ) In ( 'E') then 'ELL'
else 'Other'
end,
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1000' AND '1036') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1037' AND '1049') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1050' AND '1052' or ( Facts.Object ) = '1057') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '1056' OR ( Facts.Object ) = '1059') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '1058') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '1058') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '1058') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '1058') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '1058') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '1058') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '1058') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '1058') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '1058') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '1058') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '1058') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '1058') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '1054') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '1054') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '1054') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '1054') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '1054') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '1054') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '1054') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '1054') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '1054') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '1054') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '1054') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '1054') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1100' AND '1392') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '1053' OR ( Facts.Object ) = '1055' OR ( Facts.Object ) BETWEEN
'1060' AND '1099') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1400' AND '1449') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1500' AND '1521') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1570' AND '1579') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1550' AND '1569' OR ( Facts.Object ) BETWEEN '1580' AND
'1582') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1600' AND '1602') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1610' AND '1613') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1620' AND '1621') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1630' AND '1634') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '1640') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '1640') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '1640') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '1640') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '1640') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '1640') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '1640') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '1640') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '1640') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '1640') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '1640') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '1640') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1650' AND '1652') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1700' AND '1740') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1900' AND '1902') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1911' AND '1912') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1913' AND '1916') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1920' AND '1923') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1930' AND '1936') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1940' AND '1942') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1950' AND '1998') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2000' AND '2013') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2050' AND '2070') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2100' AND '2149') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2200' AND '2241' OR ( Facts.Object ) BETWEEN '2243' AND
'2299') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '2242') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '2242') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '2242') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '2242') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '2242') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '2242') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '2242') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '2242') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '2242') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '2242') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '2242') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '2242') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2300' AND '2340') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2400' AND '2421') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2500' AND '2515') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2700' AND '2710') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2720' AND '2723') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2730' AND '2749') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '2800') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '2800') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '2800') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '2800') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '2800') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '2800') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '2800') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '2800') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '2800') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '2800') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '2800') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '2800') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2750' AND '2755') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '3000' AND '3001') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '3050' AND '3070') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) = '3211') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) = '3211') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) = '3211') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) = '3211') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) = '3211') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) = '3211') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) = '3211') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) = '3211') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) = '3211') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) = '3211') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) = '3211') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) = '3211') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '3100' AND '3101') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '3150' AND '3151') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '3200' AND '3201') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '3900' AND '3999') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '4000' AND '7999') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '1000' AND '1999') then
( Facts.Balance12)
else 0
END),
sum(CASE
when FiscalYear.FiscalYear= 2006 and 5 = '01' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance01)
when FiscalYear.FiscalYear= 2006 and 5 = '02' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance02)
when FiscalYear.FiscalYear= 2006 and 5 = '03' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance03)
when FiscalYear.FiscalYear= 2006 and 5 = '04' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance04)
when FiscalYear.FiscalYear= 2006 and 5 = '05' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance05)
when FiscalYear.FiscalYear= 2006 and 5 = '06' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance06)
when FiscalYear.FiscalYear= 2006 and 5 = '07' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance07)
when FiscalYear.FiscalYear= 2006 and 5 = '08' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance08)
when FiscalYear.FiscalYear= 2006 and 5 = '09' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance09)
when FiscalYear.FiscalYear= 2006 and 5 = '10' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance10)
when FiscalYear.FiscalYear= 2006 and 5 = '11' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance11)
when FiscalYear.FiscalYear= 2006 and 5 = '12' and (( Facts.Object ) BETWEEN '2000' AND '8999') then
( Facts.Balance12)
else 0
END)
FROM
dbo.GL_Star_Facts2006 Facts,
dbo.GL_Star_Account Account, -- This is a view on Star_account table above
dbo.GL_Star_BusinessUnit Business_Unit, -- This is a view on Star_BusinessUnit table above.
dbo.GL_Star_FiscalYear FiscalYear,
dbo.GL_Star_Ledger Ledger
WHERE
( Facts.FiscalYear=FiscalYear.FiscalYear and Facts.SourceID=FiscalYear.SourceID )
AND ( Facts.Account=Account.Account and Facts.SourceID=Account.SourceID )
AND ( Facts.BusinessUnitCode=Business_Unit.BusinessUnitCode and Facts.SourceID=Business_Unit.SourceID )
AND ( Facts.LedgerTypeCode=Ledger.LedgerTypeCode and Facts.SourceID=Ledger.SourceID )
AND ( FiscalYear.FiscalDatePattern= 'R' )
AND
(
Ledger.LedgerTypeCode In ( 'AC' )
AND
Account.Object BETWEEN '1000' AND '8999'
AND
FiscalYear.FiscalYear = 2006
)
GROUP BY
Business_Unit.Category15Code,
Business_Unit.Category15,
Business_Unit.Category20,
Business_Unit.Category21Code,
CASE
when ( Business_Unit.Category15Code ) In ( 'NA','KI','EH','KO','UM','H') then 'NAR'
when ( Business_Unit.Category20Code ) In ( 'I','E') then 'ER'
when ( Business_Unit.Category20Code ) In ( 'A') then 'AL'
when ( Business_Unit.Category15Code ) In ( 'U') then 'UUU'
when ( Business_Unit.Category15Code ) In ( 'T') then 'TTT'
when ( Business_Unit.Category15Code ) In ( 'HE') then 'HEQ'
when ( Business_Unit.Category15Code ) In ( 'E') then 'ELL'
else 'Other'
end,
CASE
when ( Business_Unit.Category15Code ) In ( 'NA','KI','EH','KO','UM','H') then 'NAR'
when ( Business_Unit.Category20Code ) In ( 'I','E') then 'ER'
when ( Business_Unit.Category20Code ) In ( 'A') then 'AL'
else 'Other'
end,
CASE
when ( Business_Unit.Category15Code ) In ( 'U') then 'UUU'
when ( Business_Unit.Category15Code ) In ( 'T') then 'TTT'
when ( Business_Unit.Category15Code ) In ( 'HE') then 'HEQ'
when ( Business_Unit.Category15Code ) In ( 'E') then 'ELL'
else 'Other'
end
=================================================================================
Note: GL_Star_Facts2006 has 7.6 million rows and Star_Account table has 7.9 million rows. Other tables have substantially very less (25000) rows.
We are using BusinessObjects' Universes for reporting purposes and this query was generated by BusinessObjects.
Pls help !
=================================================================================
August 8, 2007 at 10:30 am
I have tried to tune this Query in Database Engine Tuning Advisor and it shows 0% improvement.
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply