protected void addItem(ref IList <string> columns, ref ReportDataRow reportDataRow, ref IList <IReportRow> reportRows, IReport item) { foreach (var column in columns) { ReportDataCell reportDataCell = new ReportDataCell(); Tuple <ReportColumnType, object> field = item.getVirtualColumnValue(column.Replace(this.Parent.Name + "$" + this.Name + ".", "")); ReportColumnType type = field.Item1; switch (type) { case ReportColumnType.Integer: reportDataCell.GenericValue = Convert.ToInt32(field.Item2); break; case ReportColumnType.String: reportDataCell.GenericValue = Convert.ToString(field.Item2); break; case ReportColumnType.DateTime: reportDataCell.GenericValue = Convert.ToDateTime(field.Item2); break; case ReportColumnType.Boolean: reportDataCell.GenericValue = Convert.ToBoolean(field.Item2); break; } reportDataRow.Cells.Add(reportDataCell); } reportRows.Add(reportDataRow); }
public static string GetOrderedType(ReportColumnType type) { var result = string.Empty; switch (type) { case ReportColumnType.Header: result = "1. " + type.Description(); break; case ReportColumnType.HeaderGroup: result = "2. " + type.Description(); break; case ReportColumnType.Detail: result = "3. " + type.Description(); break; case ReportColumnType.FooterGroup: result = "4. " + type.Description(); break; case ReportColumnType.Footer: result = "5. " + type.Description(); break; } return(result); }
/// <summary> /// /// </summary> /// <param name="reportColumns"></param> /// <param name="columnType"></param> /// <returns></returns> public static int ReportConlumnTypeWidth(List <ReportColumn> reportColumns, ReportColumnType columnType) { return(reportColumns.Where(r => r.ParentId == 0 && r.Type == columnType).Sum(r => r.Width) + Constant.IndexColumnWidth); }