public override void CustomExport(DataTable source) { if (source != null) { var sites = GetSites(source); var setting = _ExportSetting as SiteExportSetting; foreach (var site in sites) { var series = new ObservationSeries() { SiteID = site.ID, VariableID = setting.VariableID }; var ts = ODM.GetTimeSereis(series); if (ts != null) { var filename = Path.Combine(setting.Directory, site.Name + ".csv"); var var_odm = ODM.GetVariable(setting.VariableID); ts.Name = var_odm.Name; CSVFileStream csv = new CSVFileStream(filename); csv.Save(ts); } } } }
public DataTable GetValues(ObservationSeries series) { string sql = string.Format("select DateTimeUTC, DataValue from DataValues where SiteID={0} and VariableID={1} order by DateTimeUTC", series.SiteID, series.VariableID); DataTable dt = ODMDB.QueryDataTable(sql); return(dt); }
public StatisticsInfo GetValueStatistics(ObservationSeries series) { string sql = string.Format("select DateTimeUTC, DataValue from DataValues where SiteID={0} and VariableID={1} order by DateTimeUTC", series.SiteID, series.VariableID); var dt = ODMDB.QueryDataTable(sql).AsEnumerable(); var dates = from dr in dt select dr.Field <DateTime>("DateTimeUTC"); var values = from dr in dt select dr.Field <double>("DataValue"); var filtered = from vv in values where vv != 0 select vv; var info = MyStatisticsMath.SimpleStatistics(filtered.ToArray()); return(info); }
public DataCube <double> GetTimeSereis(ObservationSeries series) { string sql = string.Format("select DateTimeUTC, DataValue from DataValues where SiteID={0} and VariableID={1} order by DateTimeUTC", series.SiteID, series.VariableID); var dt = ODMDB.QueryDataTable(sql); if (dt != null) { var ds = dt.AsEnumerable(); var dates = from dr in ds select dr.Field <DateTime>("DateTimeUTC"); var values = from dr in ds select dr.Field <double>("DataValue"); DataCube <double> ts = new DataCube <double>(values.ToArray(), dates.ToArray()); return(ts); } else { return(null); } }