Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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();
            }
        }
Ejemplo n.º 3
0
        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();
        }
Ejemplo n.º 4
0
        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();
        }
Ejemplo n.º 5
0
        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);
        }