/// <summary> /// Lê um único campo do relatório. /// </summary> /// <param name="p_reader">Objeto XML.</param> private void ReadField(System.Xml.XmlReader p_reader) { Spartacus.Reporting.Field v_field; System.Xml.XmlReader v_item; v_field = new Spartacus.Reporting.Field(); while (p_reader.Read()) { if (p_reader.IsStartElement()) { switch (p_reader.Name) { case "title": v_field.v_title = p_reader.ReadString(); break; case "column": v_field.v_column = p_reader.ReadString(); break; case "align": switch (p_reader.ReadString()) { case "LEFT": v_field.v_align = Spartacus.Reporting.FieldAlignment.LEFT; break; case "RIGHT": v_field.v_align = Spartacus.Reporting.FieldAlignment.RIGHT; break; case "CENTER": v_field.v_align = Spartacus.Reporting.FieldAlignment.CENTER; break; default: break; } break; case "fill": v_field.v_fill = double.Parse(p_reader.ReadString()); break; case "type": v_field.SetType(p_reader.ReadString()); break; case "row": v_field.v_row = System.Convert.ToInt32(p_reader.ReadString()); break; case "format": v_field.v_format = p_reader.ReadString(); break; case "border": v_field.v_border = new Spartacus.Reporting.Border(p_reader.ReadString()); break; case "blank": v_field.v_blank = p_reader.ReadString(); break; case "font": v_field.v_font = new Spartacus.Reporting.Font(); v_item = p_reader.ReadSubtree(); this.ReadFont(v_field.v_font, v_item); v_item.Close(); break; default: break; } } } if ((v_field.v_row + 1) > this.v_numrowsdetail) { this.v_numrowsdetail = v_field.v_row + 1; } this.v_fields.Add(v_field); }
/// <summary> /// Lê um único campo de um cabeçalho de grupo. /// </summary> /// <param name="p_reader">Objeto XML.</param> /// <param name="p_group">Grupo do relatório.</param> private void ReadGroupHeaderField(System.Xml.XmlReader p_reader, Spartacus.Reporting.Group p_group) { Spartacus.Reporting.Field v_field; System.Xml.XmlReader v_item; v_field = new Spartacus.Reporting.Field(); while (p_reader.Read()) { if (p_reader.IsStartElement()) { switch (p_reader.Name) { case "title": v_field.v_title = p_reader.ReadString(); break; case "column": v_field.v_column = p_reader.ReadString(); break; case "align": switch (p_reader.ReadString()) { case "LEFT": v_field.v_align = Spartacus.Reporting.FieldAlignment.LEFT; break; case "RIGHT": v_field.v_align = Spartacus.Reporting.FieldAlignment.RIGHT; break; case "CENTER": v_field.v_align = Spartacus.Reporting.FieldAlignment.CENTER; break; default: break; } break; case "fill": v_field.v_fill = double.Parse(p_reader.ReadString()); break; case "type": v_field.SetType(p_reader.ReadString()); break; case "groupedvalue": if (p_reader.ReadString() == "FALSE") v_field.v_groupedvalue = false; else v_field.v_groupedvalue = true; break; case "row": v_field.v_row = System.Convert.ToInt32(p_reader.ReadString()); break; case "format": v_field.v_format = p_reader.ReadString(); break; case "border": v_field.v_border = new Spartacus.Reporting.Border(p_reader.ReadString()); break; case "blank": v_field.v_blank = p_reader.ReadString(); break; case "font": v_field.v_font = new Spartacus.Reporting.Font(); v_item = p_reader.ReadSubtree(); this.ReadFont(v_field.v_font, v_item); v_item.Close(); break; default: break; } } } if ((v_field.v_row + 1) > p_group.v_numrowsheader) p_group.v_numrowsheader = v_field.v_row + 1; p_group.v_headerfields.Add(v_field); }
/// <summary> /// Lê um único campo de rodapé de grupo. /// </summary> /// <param name="p_reader">Objeto XML.</param> /// <param name="p_group">Grupo do relatório.</param> private void ReadGroupFooterField(System.Xml.XmlReader p_reader, Spartacus.Reporting.Group p_group) { Spartacus.Reporting.Field v_field; System.Xml.XmlReader v_item; v_field = new Spartacus.Reporting.Field(); while (p_reader.Read()) { if (p_reader.IsStartElement()) { switch (p_reader.Name) { case "title": v_field.v_title = p_reader.ReadString(); break; case "column": v_field.v_column = p_reader.ReadString(); break; case "align": switch (p_reader.ReadString()) { case "LEFT": v_field.v_align = Spartacus.Reporting.FieldAlignment.LEFT; break; case "RIGHT": v_field.v_align = Spartacus.Reporting.FieldAlignment.RIGHT; break; case "CENTER": v_field.v_align = Spartacus.Reporting.FieldAlignment.CENTER; break; default: break; } break; case "fill": v_field.v_fill = double.Parse(p_reader.ReadString()); break; case "type": v_field.SetType(p_reader.ReadString()); break; case "groupedvalue": if (p_reader.ReadString() == "FALSE") { v_field.v_groupedvalue = false; } else { v_field.v_groupedvalue = true; } break; case "row": v_field.v_row = System.Convert.ToInt32(p_reader.ReadString()); break; case "format": v_field.v_format = p_reader.ReadString(); break; case "border": v_field.v_border = new Spartacus.Reporting.Border(p_reader.ReadString()); break; case "blank": v_field.v_blank = p_reader.ReadString(); break; case "font": v_field.v_font = new Spartacus.Reporting.Font(); v_item = p_reader.ReadSubtree(); this.ReadFont(v_field.v_font, v_item); v_item.Close(); break; default: break; } } } if ((v_field.v_row + 1) > p_group.v_numrowsfooter) { p_group.v_numrowsfooter = v_field.v_row + 1; } p_group.v_footerfields.Add(v_field); }