﻿function buildReportTree()
{
    d = new dTree('d');

    // Categories
    d.add(0, -1, ' Reports');
    d.add(1, 0, 'Basic Reports');
    d.add(2, 0, 'Reports with Columns');
    d.add(3, 0, 'Master-Detail Reports');
    d.add(4, 0, 'Reports with Groups');
    d.add(5, 0, 'Hierarchical Reports');
    d.add(6, 0, 'Interactive Reports');
    d.add(7, 0, 'Invoices');
    d.add(8, 0, 'Charts');
    d.add(9, 0, 'Cross-Tabs Reports');
    d.add(10, 0, 'Reports with EmptyBand');
    d.add(11, 0, 'Containers');
    d.add(12, 0, 'SubReports');

    // Basic Reports
    d.add(13, 1, 'Simple List', '?reportname=SimpleList');
    d.add(14, 1, 'Two Simple Lists', '?reportname=TwoSimpleLists');
    d.add(15, 1, 'Highlight Condition', '?reportname=HighlightCondition');
    d.add(16, 1, 'Shapes', '?reportname=Shapes');
    d.add(17, 1, 'Images', '?reportname=Images');
    d.add(18, 1, 'RichText', '?reportname=RichText');
    d.add(19, 1, 'Watermark', '?reportname=Watermark');
    d.add(20, 1, 'BarCodes', '?reportname=BarCodes');
    
    // Reports with Columns
    d.add(21, 2, 'Multi-Column List', '?reportname=MultiColumnList');
    d.add(22, 2, 'Multi-Column Bands, Across-Down', '?reportname=MultiColumnBandsAcrossThenDown');
    d.add(23, 2, 'Multi-Column Bands, Down-Across', '?reportname=MultiColumnBandsDownThenAcross');
    d.add(24, 2, 'Labels', '?reportname=Labels');
    
    // Master-Detail Reports
	d.add(25, 3, 'Master-Detail', '?reportname=MasterDetail');
	d.add(26, 3, 'Master-Detail-Subdetail', '?reportname=MasterDetailSubdetail');
	d.add(27, 3, 'Master-Detail with Columns', '?reportname=MasterDetailWithColumns');
    d.add(28, 3, 'Two Masters on One Detail', '?reportname=TwoMastersOnOneDetail');
    d.add(29, 3, 'Master-Detail with zero Height', '?reportname=MasterDetailWithZeroHeight');
    d.add(30, 3, 'Master-Detail on DataBand', '?reportname=MasterDetailOnDataBand');
    
    // Reports with Groups
    d.add(31, 4, 'Simple Group', '?reportname=SimpleGroup');
    d.add(32, 4, 'Nested Groups', '?reportname=NestedGroups');
    d.add(33, 4, 'Master-Detail with Groups', '?reportname=MasterDetailWithGroups');
    d.add(34, 4, 'Multi-Column Group', '?reportname=MultiColumnGroup');
    d.add(35, 4, 'Groups with Ranges', '?reportname=GroupsWithRanges');
    d.add(36, 4, 'Simple Group with Columns', '?reportname=SimpleGroupWithColumns');
    d.add(37, 4, 'All Group Footers at End', '?reportname=AllGroupFootersAtEnd');
    
    // Hierarchical Reports
    d.add(38, 5, 'Tree', '?reportname=Tree');
    d.add(39, 5, 'Tree with Headers and Footers', '?reportname=TreeWithHeadersFooters');
    d.add(40, 5, 'Tree with Totals', '?reportname=TreeWithTotals');
    d.add(41, 5, 'Tree with Totals, All Levels', '?reportname=TreeWithTotalsAllLevels');
    d.add(42, 5, 'Tree with Locked Components', '?reportname=TreeWithLockedComponents');
    
    // Interactive Reports
    d.add(43, 6, 'Interactive Sorting', '?reportname=DrillDownSorting');
    d.add(44, 6, 'Bookmarks, Hyperlinks', '?reportname=BookmarksHyperlinks');
    d.add(45, 6, 'Anchors', '?reportname=Anchors');
    
    // Invoices
    d.add(46, 7, 'Invoice', '?reportname=Invoice');
    d.add(47, 7, 'Sales Invoice', '?reportname=SalesInvoice');
    d.add(48, 7, 'Invoice with Groups', '?reportname=InvoiceWithGroups');
    
    // Charts
    d.add(49, 8, 'Chart Columns and Bars', '?reportname=ChartColumnsAndBars');
    d.add(50, 8, 'Chart Lines and Splines', '?reportname=ChartLinesAndSplines');
    d.add(51, 8, 'Chart Areas', '?reportname=ChartAreas');
    d.add(52, 8, 'Chart Pie and Doughnut', '?reportname=ChartPieAndDoughnut');
    d.add(53, 8, 'Chart Styles', '?reportname=ChartStyles');
    d.add(54, 8, 'Chart on Databand', '?reportname=ChartOnDataband');
    
    // Cross-Tabs Reports
    d.add(55, 9, 'Standard Cross-Tab', '?reportname=StandardCrossTab');
    d.add(56, 9, 'Cross-Tab without Columns', '?reportname=CrossTabWithoutColumns');
    d.add(57, 9, 'Cross-Tab without Rows', '?reportname=CrossTabWithoutRows');
    d.add(58, 9, 'Cross-Tab with Highlight Condition', '?reportname=CrossTabWithHighlightCondition');
    d.add(59, 9, 'Cross-Tab with Two Summaries', '?reportname=CrossTabWithTwoSummaries');
    d.add(60, 9, 'Two Cross-Tabs', '?reportname=TwoCrossTabs');
    d.add(61, 9, 'Wrapped Cross-Tabs', '?reportname=WrappedCrossTab');
    d.add(62, 9, 'Large Cross-Tab', '?reportname=LargeCrossTab');
    d.add(63, 9, 'Cross-Tab on DataBand', '?reportname=CrossTabOnDataBand');
    
    // Reports with EmptyBand
    d.add(64, 10, 'Simple List with Empty Lines', '?reportname=SimpleListWithEmptyLines');
    d.add(65, 10, 'Master-Detail with Empty Lines', '?reportname=MasterDetailWithEmptyLines');
    
    // Containers
    d.add(66, 11, 'Side by Side List', '?reportname=SideBySideListWithContainers');
    d.add(67, 11, 'Side by Side Group', '?reportname=SideBySideGroupWithContainers');
    d.add(68, 11, 'Multi-Column List', '?reportname=MultiColumnListContainers');
    d.add(69, 11, 'Master-Detail Cards', '?reportname=MasterDetailCards');
    
    // SubReports
    d.add(70, 12, 'Side by Side List', '?reportname=SideBySideListWithSubReports');
    d.add(71, 12, 'Side by Side Group', '?reportname=SideBySideGroupWithSubReports');
    d.add(72, 12, 'Master-Detail', '?reportname=MasterDetailWithSubReports');

    document.write(d);
}