public static void Import(string serverIP, string database, string siteFilter, string networkListName) { string fn = @"C:\temp\mcf.xml"; Performance perf = new Performance(); var pnMcf = new McfDataSet(); if (File.Exists(fn) && File.GetLastWriteTime(fn).Date != DateTime.Now.Date) { // read existing file. Logger.WriteLine("Reading existing XML"); pnMcf.ReadXml(fn); } else { Logger.WriteLine("Reading csv files from MCF"); pnMcf = McfUtility.GetDataSetFromCsvFiles(Globals.LocalConfigurationDataPath); pnMcf.WriteXml(fn); } DumpInfo(pnMcf); Application.DoEvents(); Logger.WriteLine(serverIP); var cs = PostgreSQL.CreateADConnectionString(serverIP, database, "decodes"); PostgreSQL svr = new PostgreSQL(cs); var decodes = DecodesUtility.GetDataSet(svr); McfDecodesConverter c = new McfDecodesConverter(svr, pnMcf, decodes); c.importMcf(siteFilter.Split(','), networkListName); UpdateSequences(svr); }
private static void AddToPisces(DataTable tbl, TimeSeriesDatabase db) { Console.WriteLine("Reading mcf "); var mcf = McfUtility.GetDataSetFromCsvFiles(Globals.LocalConfigurationDataPath); var site = mcf.sitemcf; var siteCatalog = db.GetSiteCatalog(); PiscesSeriesLoader loader = new PiscesSeriesLoader(db); foreach (DataRow row in tbl.Rows) { var cbtt = row[0].ToString().ToLower().Trim(); Console.Write(cbtt + " "); //var dbSite = siteCatalog.First(x => x.siteid == cbtt.Trim()); var site1 = site.First(x => x.SITE.Trim() == cbtt.ToUpper().Trim()); if (site1.CTYPE.Trim() != "P") // parameter based { throw new Exception("not parameter based processing"); } int folderID = loader.SeriesCatalog.GetOrCreateFolder("hydromet", cbtt, "instant"); var pcodes = mcf.pcodemcf.Where(x => x.PCODE.IndexOf(cbtt.ToUpper()) >= 0 && x.ACTIVE == 1); AddPcodesToPisces(loader, folderID, cbtt, pcodes); db.Server.SaveTable(loader.SeriesCatalog); Console.WriteLine(); } }
static void Main(string[] args) { Logger.EnableLogger(); var svr = PostgreSQL.GetPostgresServer("timeseries", "lrgs1"); var db = new TimeSeriesDatabase(svr, Reclamation.TimeSeries.Parser.LookupOption.TableName); var sc = db.GetSeriesCatalog(); var prop = db.GetSeriesProperties(true); var mcf = McfUtility.GetDataSetFromCsvFiles(Globals.LocalConfigurationDataPath); Console.WriteLine("processing "); for (int i = 0; i < idwrSiteList.Length; i++) { var cbtt = idwrSiteList[i]; Console.WriteLine(cbtt); var rows = mcf.pcodemcf.Select("PCODE='" + cbtt.PadRight(8) + "CH'"); if (rows.Length == 1) { var shift = Convert.ToDouble(rows[0]["SHIFT"]); Console.WriteLine(shift); TimeSeriesName tn = new TimeSeriesName(cbtt.ToLower() + "_" + "ch", "instant"); Reclamation.TimeSeries.TimeSeriesDatabaseDataSet.seriespropertiesDataTable.Set("shift", shift.ToString("F4"), tn, svr); } } return; foreach (var pcode in mcf.pcodemcf) { if (pcode.IsRTCPROCNull()) { continue; } Console.WriteLine(pcode.PCODE); string cbtt = pcode.PCODE.Substring(0, 8).Trim().ToLower(); string pc = pcode.PCODE.Substring(8).Trim().ToLower(); var width_factor = pcode.SCALE.ToString("F4"); var exponent = pcode.BASE.ToString("F4"); var offset = pcode.OFFSET.ToString("F4"); var shift = pcode.SHIFT.ToString("F4"); } Console.WriteLine(); }
static void Main(string[] args) { var svr = PostgreSQL.GetPostgresServer("timeseries", "lrgs3"); var db = new TimeSeriesDatabase(svr, Reclamation.TimeSeries.Parser.LookupOption.TableName); var sc = db.GetSeriesCatalog(); var prop = db.GetSeriesProperties(true); var hydromet = db.GetOrCreateFolder("hydromet"); Console.WriteLine("Reading mcf "); var mcf = McfUtility.GetDataSetFromCsvFiles(Globals.LocalConfigurationDataPath); Console.WriteLine("processing "); foreach (var pcode in mcf.pcodemcf) { if (pcode.IsRTCPROCNull()) { continue; } Console.WriteLine(pcode.PCODE); string cbtt = pcode.PCODE.Substring(0, 8).Trim().ToLower(); string pc = pcode.PCODE.Substring(8).Trim().ToLower(); var width_factor = pcode.SCALE.ToString("F4"); var exponent = pcode.BASE.ToString("F4"); var offset = pcode.OFFSET.ToString("F4"); var shift = pcode.SHIFT.ToString("F4"); string[] genericWeir = { "ch_weir", "gh_weir", "gh_weirx" }; if (Array.IndexOf(genericWeir, pcode.RTCPROC.ToLower()) >= 0) { AddGenericWeir(sc, prop, cbtt, pc, width_factor, exponent, offset, shift); } else if (pcode.RTCPROC.ToLower() == "r_weir") { // Rectangular Weir } } Console.WriteLine(); }
public static void Import(string serverIP, string database, string password, string networkListName, string[] siteList, string mrdbPath) { string fn = @"C:\temp\mcf.xml"; Performance perf = new Performance(); var pnMcf = new McfDataSet(); if (File.Exists(fn) && File.GetLastWriteTime(fn).Date == DateTime.Now.Date) { // read existing file. Logger.WriteLine("Reading existing XML"); pnMcf.ReadXml(fn); } else { Logger.WriteLine("Reading csv files from MCF"); pnMcf = McfUtility.GetDataSetFromCsvFiles(mrdbPath); pnMcf.WriteXml(fn); } DumpInfo(pnMcf); Application.DoEvents(); Logger.WriteLine(serverIP); var svr = PostgreSQL.GetPostgresServer(database, serverIP, "decodes", password) as PostgreSQL; DecodesUtility.UpdateSequences(svr); DecodesUtility.GenerateDataSet(@"c:\temp\decodes.xsd", svr); var decodes = DecodesUtility.GetDataSet(svr); McfDecodesConverter c = new McfDecodesConverter(svr, pnMcf, decodes, siteList); c.importMcf(networkListName); }