예제 #1
0
 internal ListInstance(ReportProcessing.ProcessingContext pc, List reportItemDef, ListContentInstanceList listContentInstances, RenderingPagesRangesList renderingPages)
     : base(pc.CreateUniqueName(), reportItemDef)
 {
     m_instanceInfo         = new ListInstanceInfo(pc, reportItemDef, this);
     m_listContentInstances = listContentInstances;
     m_renderingPages       = renderingPages;
 }
예제 #2
0
 internal TableInstance(ReportProcessing.ProcessingContext pc, Table reportItemDef)
     : base(pc.CreateUniqueName(), reportItemDef)
 {
     ConstructorHelper(pc, reportItemDef);
     if (reportItemDef.TableGroups == null && reportItemDef.TableDetail != null)
     {
         m_tableDetailInstances = new TableDetailInstanceList();
     }
     m_renderingPages          = new RenderingPagesRangesList();
     m_currentPage             = reportItemDef.StartPage;
     reportItemDef.CurrentPage = reportItemDef.StartPage;
 }
예제 #3
0
 internal TableInstance(ReportProcessing.ProcessingContext pc, Table reportItemDef, TableDetailInstanceList tableDetailInstances, RenderingPagesRangesList renderingPages)
     : base(pc.CreateUniqueName(), reportItemDef)
 {
     ConstructorHelper(pc, reportItemDef);
     if (reportItemDef.TableGroups == null && reportItemDef.TableDetail != null)
     {
         m_tableDetailInstances = tableDetailInstances;
         m_renderingPages       = renderingPages;
     }
     m_currentPage                 = reportItemDef.StartPage;
     reportItemDef.CurrentPage     = reportItemDef.StartPage;
     reportItemDef.BottomInEndPage = pc.Pagination.CurrentPageHeight;
 }
예제 #4
0
 internal MatrixInstance(ReportProcessing.ProcessingContext pc, Matrix reportItemDef)
     : base(pc.CreateUniqueName(), reportItemDef)
 {
     m_instanceInfo = new MatrixInstanceInfo(pc, reportItemDef, this);
     pc.Pagination.EnterIgnoreHeight(reportItemDef.StartHidden);
     m_columnInstances         = new MatrixHeadingInstanceList();
     m_rowInstances            = new MatrixHeadingInstanceList();
     m_cells                   = new MatrixCellInstancesList();
     m_renderingPages          = new RenderingPagesRangesList();
     reportItemDef.CurrentPage = reportItemDef.StartPage;
     m_startPage               = reportItemDef.StartPage;
     if (reportItemDef.FirstCellInstances == null)
     {
         int count = reportItemDef.CellReportItems.Count;
         reportItemDef.FirstCellInstances = new BoolList(count);
         for (int i = 0; i < count; i++)
         {
             reportItemDef.FirstCellInstances.Add(true);
         }
     }
     m_inFirstPage = pc.ChunkManager.InFirstPage;
 }
예제 #5
0
 internal MatrixHeadingInstance(ReportProcessing.ProcessingContext pc, int headingCellIndex, MatrixHeading matrixHeadingDef, bool isSubtotal, int reportItemDefIndex, VariantList groupExpressionValues, out NonComputedUniqueNames nonComputedUniqueNames)
 {
     m_uniqueName = pc.CreateUniqueName();
     if (isSubtotal && matrixHeadingDef.Subtotal.StyleClass != null)
     {
         m_instanceInfo = new MatrixSubtotalHeadingInstanceInfo(pc, headingCellIndex, matrixHeadingDef, this, isSubtotal, reportItemDefIndex, groupExpressionValues, out nonComputedUniqueNames);
         if (matrixHeadingDef.GetInnerStaticHeading() != null)
         {
             m_subHeadingInstances = new MatrixHeadingInstanceList();
         }
     }
     else
     {
         m_instanceInfo = new MatrixHeadingInstanceInfo(pc, headingCellIndex, matrixHeadingDef, this, isSubtotal, reportItemDefIndex, groupExpressionValues, out nonComputedUniqueNames);
         if (matrixHeadingDef.SubHeading != null)
         {
             m_subHeadingInstances = new MatrixHeadingInstanceList();
         }
     }
     m_renderingPages   = new RenderingPagesRangesList();
     m_matrixHeadingDef = matrixHeadingDef;
     m_isSubtotal       = isSubtotal;
     m_headingDefIndex  = reportItemDefIndex;
     if (!matrixHeadingDef.IsColumn)
     {
         pc.Pagination.EnterIgnoreHeight(matrixHeadingDef.StartHidden);
     }
     if (matrixHeadingDef.FirstHeadingInstances == null)
     {
         int count = matrixHeadingDef.ReportItems.Count;
         matrixHeadingDef.FirstHeadingInstances = new BoolList(count);
         for (int i = 0; i < count; i++)
         {
             matrixHeadingDef.FirstHeadingInstances.Add(true);
         }
     }
 }
예제 #6
0
        internal TableGroupInstance(ReportProcessing.ProcessingContext pc, TableGroup tableGroupDef)
        {
            Table table = (Table)tableGroupDef.DataRegionDef;

            m_uniqueName   = pc.CreateUniqueName();
            m_instanceInfo = new TableGroupInstanceInfo(pc, tableGroupDef, this);
            pc.Pagination.EnterIgnoreHeight(tableGroupDef.StartHidden);
            m_tableGroupDef = tableGroupDef;
            IndexedExprHost visibilityHiddenExprHost = (tableGroupDef.ExprHost != null) ? tableGroupDef.ExprHost.TableRowVisibilityHiddenExpressions : null;

            m_renderingPages = new RenderingPagesRangesList();
            if (tableGroupDef.HeaderRows != null)
            {
                m_headerRowInstances = new TableRowInstance[tableGroupDef.HeaderRows.Count];
                for (int i = 0; i < m_headerRowInstances.Length; i++)
                {
                    m_headerRowInstances[i] = new TableRowInstance(pc, tableGroupDef.HeaderRows[i], table, visibilityHiddenExprHost);
                }
            }
            if (tableGroupDef.FooterRows != null)
            {
                m_footerRowInstances = new TableRowInstance[tableGroupDef.FooterRows.Count];
                for (int j = 0; j < m_footerRowInstances.Length; j++)
                {
                    m_footerRowInstances[j] = new TableRowInstance(pc, tableGroupDef.FooterRows[j], table, visibilityHiddenExprHost);
                }
            }
            if (tableGroupDef.SubGroup != null)
            {
                m_subGroupInstances = new TableGroupInstanceList();
            }
            else if (table.TableDetail != null)
            {
                m_tableDetailInstances = new TableDetailInstanceList();
            }
        }