예제 #1
0
        TableRows _TableRows; // The header rows for the table or group

        #endregion Fields

        #region Constructors

        // each page that the table (or group) is displayed
        internal Header(ReportDefn r, ReportLink p, XmlNode xNode)
            : base(r, p)
        {
            _TableRows=null;
            _RepeatOnNewPage=false;

            // Loop thru all the child nodes
            foreach(XmlNode xNodeLoop in xNode.ChildNodes)
            {
                if (xNodeLoop.NodeType != XmlNodeType.Element)
                    continue;
                switch (xNodeLoop.Name)
                {
                    case "TableRows":
                        _TableRows = new TableRows(r, this, xNodeLoop);
                        break;
                    case "RepeatOnNewPage":
                        _RepeatOnNewPage = XmlUtil.Boolean(xNodeLoop.InnerText, OwnerReport.rl);
                        break;
                    default:
                        break;
                }
            }
            if (_TableRows == null)
                OwnerReport.rl.LogError(8, "Header requires the TableRows element.");
        }
예제 #2
0
        bool _RepeatOnNewPage;          // Indicates this header should be displayed on
        // each page that the table (or group) is displayed

        internal Header(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
        {
            _TableRows       = null;
            _RepeatOnNewPage = false;

            // Loop thru all the child nodes
            foreach (XmlNode xNodeLoop in xNode.ChildNodes)
            {
                if (xNodeLoop.NodeType != XmlNodeType.Element)
                {
                    continue;
                }
                switch (xNodeLoop.Name)
                {
                case "TableRows":
                    _TableRows = new TableRows(r, this, xNodeLoop);
                    break;

                case "RepeatOnNewPage":
                    _RepeatOnNewPage = XmlUtil.Boolean(xNodeLoop.InnerText, OwnerReport.rl);
                    break;

                default:
                    break;
                }
            }
            if (_TableRows == null)
            {
                OwnerReport.rl.LogError(8, "Header requires the TableRows element.");
            }
        }
예제 #3
0
        TableRows _TableRows; // The footer rows for the table or group

        #endregion Fields

        #region Constructors

        // each page that the table (or group) is displayed
        internal Footer(ReportDefn r, ReportLink p, XmlNode xNode)
            : base(r, p)
        {
            _TableRows=null;
            _RepeatOnNewPage=false;

            // Loop thru all the child nodes
            foreach(XmlNode xNodeLoop in xNode.ChildNodes)
            {
                if (xNodeLoop.NodeType != XmlNodeType.Element)
                    continue;
                switch (xNodeLoop.Name)
                {
                    case "TableRows":
                        _TableRows = new TableRows(r, this, xNodeLoop);
                        break;
                    case "RepeatOnNewPage":
                        _RepeatOnNewPage = XmlUtil.Boolean(xNodeLoop.InnerText, OwnerReport.rl);
                        break;
                    default:
                        // don't know this element - log it
                        OwnerReport.rl.LogError(4, "Unknown Footer element '" + xNodeLoop.Name + "' ignored.");
                        break;
                }
            }
            if (_TableRows == null)
                OwnerReport.rl.LogError(8, "TableRows element is required with a Footer but not specified.");
        }
예제 #4
0
        bool _RepeatOnNewPage;          // Indicates this footer should be displayed on
        // each page that the table (or group) is displayed

        internal Footer(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
        {
            _TableRows       = null;
            _RepeatOnNewPage = false;

            // Loop thru all the child nodes
            foreach (XmlNode xNodeLoop in xNode.ChildNodes)
            {
                if (xNodeLoop.NodeType != XmlNodeType.Element)
                {
                    continue;
                }
                switch (xNodeLoop.Name)
                {
                case "TableRows":
                    _TableRows = new TableRows(r, this, xNodeLoop);
                    break;

                case "RepeatOnNewPage":
                    _RepeatOnNewPage = XmlUtil.Boolean(xNodeLoop.InnerText, OwnerReport.rl);
                    break;

                default:
                    // don't know this element - log it
                    OwnerReport.rl.LogError(4, "Unknown Footer element '" + xNodeLoop.Name + "' ignored.");
                    break;
                }
            }
            if (_TableRows == null)
            {
                OwnerReport.rl.LogError(8, "TableRows element is required with a Footer but not specified.");
            }
        }
예제 #5
0
 private void VerifyCCTableRows(string label, TableRows trs, int colCount)
 {
     foreach (TableRow tr in trs.Items)
     {
         int cols = 0;
         foreach (TableCell tc in tr.TableCells.Items)
         {
             cols += tc.ColSpan;
         }
         if (cols != colCount)
         {
             OwnerReport.rl.LogError(8, String.Format("{0} must have the same number of columns as TableColumns.", label));
         }
     }
     return;
 }
예제 #6
0
        Textbox _ToggleTextbox;         //  resolved TextBox for toggling visibility

        internal Details(ReportDefn r, ReportLink p, XmlNode xNode) : base(r, p)
        {
            _TableRows     = null;
            _Grouping      = null;
            _Sorting       = null;
            _Visibility    = null;
            _ToggleTextbox = null;

            // Loop thru all the child nodes
            foreach (XmlNode xNodeLoop in xNode.ChildNodes)
            {
                if (xNodeLoop.NodeType != XmlNodeType.Element)
                {
                    continue;
                }
                switch (xNodeLoop.Name)
                {
                case "TableRows":
                    _TableRows = new TableRows(r, this, xNodeLoop);
                    break;

                case "Grouping":
                    _Grouping = new Grouping(r, this, xNodeLoop);
                    break;

                case "Sorting":
                    _Sorting = new Sorting(r, this, xNodeLoop);
                    break;

                case "Visibility":
                    _Visibility = new Visibility(r, this, xNodeLoop);
                    break;

                default:
                    // don't know this element - log it
                    OwnerReport.rl.LogError(4, "Unknown Details element " + xNodeLoop.Name + " ignored.");
                    break;
                }
            }
            if (_TableRows == null)
            {
                OwnerReport.rl.LogError(8, "Details requires the TableRows element.");
            }
        }
예제 #7
0
        Visibility _Visibility; // Indicates if the details should be hidden

        #endregion Fields

        #region Constructors

        internal Details(ReportDefn r, ReportLink p, XmlNode xNode)
            : base(r, p)
        {
            _TableRows=null;
            _Grouping=null;
            _Sorting=null;
            _Visibility=null;
            _ToggleTextbox = null;

            // Loop thru all the child nodes
            foreach(XmlNode xNodeLoop in xNode.ChildNodes)
            {
                if (xNodeLoop.NodeType != XmlNodeType.Element)
                    continue;
                switch (xNodeLoop.Name)
                {
                    case "TableRows":
                        _TableRows = new TableRows(r, this, xNodeLoop);
                        break;
                    case "Grouping":
                        _Grouping = new Grouping(r, this, xNodeLoop);
                        break;
                    case "Sorting":
                        _Sorting = new Sorting(r, this, xNodeLoop);
                        break;
                    case "Visibility":
                        _Visibility = new Visibility(r, this, xNodeLoop);
                        break;
                    default:
                        // don't know this element - log it
                        OwnerReport.rl.LogError(4, "Unknown Details element " + xNodeLoop.Name + " ignored.");
                        break;
                }
            }
            if (_TableRows == null)
                OwnerReport.rl.LogError(8, "Details requires the TableRows element.");
        }