Пример #1
0
        private static void ProcessArguments(int debugLevel, Arguments arguments, DateTime t1, DateTime t2, string controlFilename)
        {
            if (arguments.Contains("uxlsfilename"))
            {
                string xlsFileName = arguments["uxlsfilename"];
                int    traceNumber = -1;
                if (arguments.Contains("strace"))
                {
                    traceNumber = Convert.ToInt32(arguments["strace"]);
                }
                else if (arguments.Contains("uwateryear"))
                {
                    if (!arguments.Contains("ufirstwateryear"))
                    {
                        System.Windows.Forms.MessageBox.Show("Error: FirstWaterYear must be defined as DMI argument");
                        return;
                    }

                    int wy1 = Convert.ToInt32(arguments["ufirstwateryear"]);
                    int wy  = Convert.ToInt32(arguments["uwateryear"]);

                    traceNumber = wy - wy1 + 1;
                    if (debugLevel > 0)
                    {
                        System.Windows.Forms.MessageBox.Show("Trace Number = " + traceNumber);
                    }
                }

                ReadFromExcel(controlFilename, xlsFileName, t1, t2, traceNumber);
            }
            else if (arguments.Contains("uhydrometserver"))
            {//"-UHydrometServer=pnhyd0"
                string serverName = arguments["uhydrometserver"];
                ReadFromHydromet(controlFilename, serverName, t1, t2);
            }
            else if (arguments.Contains("usdffilename"))
            {
                string sdfFileName = arguments["usdffilename"];
                Regex  regex       = new Regex(@"\$(.*?)\\");
                Match  match       = regex.Match(sdfFileName);
                if (match.Success)
                {
                    var envVar  = match.Groups[1].ToString();
                    var envPath = Environment.GetEnvironmentVariable(envVar);
                    sdfFileName = sdfFileName.Replace(envVar, envPath).Replace("$", "");
                }
                ReadFromPisces(sdfFileName, controlFilename, t1, t2);
            }
            else if (arguments.Contains("uembededdata") && arguments["uembededdata"].ToLower() == "true")
            {
                ControlFileWithData.ProcessFile(controlFilename);
            }
            else
            {
                Usage();
            }
        }
Пример #2
0
        private static void ProcessArguments(int debugLevel, Arguments arguments, DateTime t1, DateTime t2, string controlFilename)
        {
            if (arguments.Contains("uxlsfilename"))
            {
                string xlsFileName = arguments["uxlsfilename"];
                int    traceNumber = -1;
                if (arguments.Contains("strace"))
                {
                    traceNumber = Convert.ToInt32(arguments["strace"]);
                }
                else if (arguments.Contains("uwateryear"))
                {
                    if (!arguments.Contains("ufirstwateryear"))
                    {
                        System.Windows.Forms.MessageBox.Show("Error: FirstWaterYear must be defined as DMI argument");
                        return;
                    }

                    int wy1 = Convert.ToInt32(arguments["ufirstwateryear"]);
                    int wy  = Convert.ToInt32(arguments["uwateryear"]);

                    traceNumber = wy - wy1 + 1;
                    if (debugLevel > 0)
                    {
                        System.Windows.Forms.MessageBox.Show("Trace Number = " + traceNumber);
                    }
                }

                ReadFromExcel(controlFilename, xlsFileName, t1, t2, traceNumber);
            }
            else if (arguments.Contains("uhydrometserver"))
            {//"-UHydrometServer=pnhyd0"
                string serverName = arguments["uhydrometserver"];
                ReadFromHydromet(controlFilename, serverName, t1, t2);
            }
            else if (arguments.Contains("usdffilename"))
            {
                string sdfFileName = arguments["usdffilename"];
                ReadFromPisces(sdfFileName, controlFilename, t1, t2);
            }
            else if (arguments.Contains("uembededdata") && arguments["uembededdata"].ToLower() == "true")
            {
                ControlFileWithData.ProcessFile(controlFilename);
            }
            else
            {
                Usage();
            }
        }