public int GetPrecision(string name) { if (!_IsFilledData) { PrepareDataColumnInfor(); } DataColumnInfor col = _DataColumnInfors[name]; if (col != null) { return(col.Precision); } return(-1); }
public string GetOperatorType(string columnName) { if (!_IsFilledData) { PrepareDataColumnInfor(); } DataColumnInfor col = _SummaryTypeInfors[columnName]; if (col != null) { return(col.OperatorType); } return(string.Empty); }
public bool IsSummaryColumn(string columnName) { if (!_IsFilledData) { PrepareDataColumnInfor(); } DataColumnInfor col = _SummaryTypeInfors[columnName]; if (col != null) { return(col.IsSummaryColumn); } return(false); }
// 判断是否是分组百分比 public bool IsPercentGroupColumn(string columnDescription) { if (!_IsFilledData) { PrepareDataColumnInfor(); } DataColumnInfor col = _DataColumnInfors[columnDescription]; if (col != null) { return(col.IsPercentGroupColumn); } return(false); }
private void PrepareDataColumnInfor() { string sql = UpgradeSqlProducer.GetSqlFldDefInfors(_ReportID, _LocaleID, "0"); DataSet ds = SqlHelper.ExecuteDataSet(_UfDataConnString, sql); if (ds != null) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { DataColumnInfor col = new DataColumnInfor(); DataRow dr = ds.Tables[0].Rows[i]; col.Name = SqlHelper.GetStringFrom(dr["Expression"]); col.Description = SqlHelper.GetStringFrom(dr["Name"]); col.FormatEx = SqlHelper.GetStringFrom(dr["FormatEx"]); if (col.Name == string.Empty) { col.Name = col.Description; } _DataColumnInfors.Add(col); } _DataColumnInfors.Sort(); } sql = UpgradeSqlProducer.GetSqlSummaryColInfor(_ReportID); ds = SqlHelper.ExecuteDataSet(_UfDataConnString, sql); if (ds != null) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { DataColumnInfor col = new DataColumnInfor(); DataRow dr = ds.Tables[0].Rows[i]; col.Name = SqlHelper.GetStringFrom(dr["Name"]); col.OperatorType = SqlHelper.GetStringFrom(dr["OperatorTypeType"]); // 这步处理与GetSqlSummaryColInfor中ORDER BY OperatorTypeType呼应 if (_SummaryTypeInfors[col.Name] == null) { _SummaryTypeInfors.Add(col); } } } _IsFilledData = true; }
public int Compare(object x, object y) { DataColumnInfor xX = x as DataColumnInfor; DataColumnInfor yY = y as DataColumnInfor; if (xX != null && yY != null) { if (xX.Description.Length < yY.Description.Length) { return(1); } else if (xX.Description.Length > yY.Description.Length) { return(-1); } } return(0); }
public void Add(DataColumnInfor dataColumnInfor) { List.Add(dataColumnInfor); }