public EpSqlGenerator(string[] inputArgs) { //:arStavy:array:'P9','K9','O9' :asProdukt:string:UO :adOd:date:4.2.2015 :anZmluva:number:505115 // Test.sql -oMyOutputfile -aarStavy:array:'P9','K9','O9' -aanStavy:array:31,32,33 -aasProdukt:string:UO -aadOd:date:4.2.2015 -aanZmluva:number:505115 foreach (var arg in inputArgs) { if (arg[0] == '-') { if (arg[1] == 'o') { outFileName = (arg[2] == ':') ? arg.Substring(3).Trim() : arg.Substring(2).Trim(); } else if (arg[1] == 'c') { repConnectString = (arg[2] == ':') ? arg.Substring(3).Trim() : arg.Substring(2).Trim(); } else if (arg[1] == 'j') { outFormat = ".json"; if (arg.Length == 3 && arg[2] == 'c') { SimpleLog.DisableConsole(true); consoleMode = true; enabledOutput = false; } } else if (arg[1] == 'e' && arg.Length == 3 && arg[2] == 'o') { enabledOutput = true; } else if (arg[1] == 'e' && arg.Length == 3 && arg[2] == 'c') { SimpleLog.DisableConsole(true); enabledConsoleLog = true; } else if (arg[1] == 'd' && arg.Length == 3 && arg[2] == 't') { enabledTimestamp = false; } else if (arg[1] == 'h') { WriteHelp(); System.Environment.Exit(0); } else if (arg[1] == 'v') { Console.WriteLine(System.AppDomain.CurrentDomain.FriendlyName + " version: " + System.Reflection.Assembly.GetEntryAssembly().GetName().Version); string osplatform; if (System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform(System.Runtime.InteropServices.OSPlatform.Windows)) { osplatform = "Windows"; } else if (System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform(System.Runtime.InteropServices.OSPlatform.OSX)) { osplatform = "OSX"; } else if (System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform(System.Runtime.InteropServices.OSPlatform.Linux)) { osplatform = "Linux"; } else { osplatform = "Unknown"; } Console.WriteLine("Enviroment OS: " + Environment.OSVersion.Platform + ", platform ID " + (int)Environment.OSVersion.Platform); Console.WriteLine("OsPlatform : " + osplatform); Console.WriteLine("Architecture : " + System.Runtime.InteropServices.RuntimeInformation.OSArchitecture); Console.WriteLine("OsDescription: " + System.Runtime.InteropServices.RuntimeInformation.OSDescription); System.Environment.Exit(0); } else if (arg[1] == 'a') { string[] argdetails = (arg[2] == ':') ? arg.Substring(3).Split(':') : arg.Substring(2).Split(':'); if (argdetails[1].ToLower() == "string" || argdetails[1].ToLower().Contains("char")) { arguments.Add(argdetails[0], argdetails[2]); } else if (argdetails[1].ToLower().Contains("date") || argdetails[1].ToLower().Contains("datetime")) { arguments.Add(argdetails[0], DateTime.Parse(argdetails[2])); } else if (argdetails[1].ToLower() == "integer" || argdetails[1].ToLower() == "int") { arguments.Add(argdetails[0], int.Parse(argdetails[2])); } else if (argdetails[1].ToLower() == "decimal" || argdetails[1].ToLower() == "number") { arguments.Add(argdetails[0], decimal.Parse(argdetails[2])); } else if (argdetails[1].ToLower().Contains("array")) { var items = argdetails[2].Split(','); if (argdetails[2].Contains("'") || argdetails[1].ToLower().Contains("string") || argdetails[1].ToLower().Contains("char")) { List <string> vals = new List <string>(); foreach (var item in items) { vals.Add(item.Replace("'", "")); } arguments.Add(argdetails[0], vals.ToArray()); } else { List <int> vals = new List <int>(); foreach (var item in items) { vals.Add(int.Parse(item)); } arguments.Add(argdetails[0], vals.ToArray()); } } } } else // ide o naazov suboru s definiciou if (arg.ToLower().IndexOf(".sql") > 0 || arg.ToLower().IndexOf(".json") > 0) { defFileName = arg; } } // Logging only after initialeze console output SimpleLog.WriteLog("Input arguments {"); foreach (var arg in inputArgs) { SimpleLog.WriteLog(arg, false); } SimpleLog.WriteLog("}", false); SimpleLog.WriteLog("", false); if (repConnectString == null) { repConnectString = "ReportConnString"; } }
public EpSqlGenerator(string[] inputArgs) { //:arStavy:array:'P9','K9','O9' :asProdukt:string:UO :adOd:date:4.2.2015 :anZmluva:number:505115 // Test.sql -oMyOutputfile -aarStavy:array:'P9','K9','O9' -aanStavy:array:31,32,33 -aasProdukt:string:UO -aadOd:date:4.2.2015 -aanZmluva:number:505115 foreach (var arg in inputArgs) { if (arg[0] == '-') { if (arg[1] == 'o') { outFileName = (arg[2] == ':') ? arg.Substring(3).Trim() : arg.Substring(2).Trim(); } else if (arg[1] == 'c') { repConnectString = (arg[2] == ':') ? arg.Substring(3).Trim() : arg.Substring(2).Trim(); } else if (arg[1] == 'j') { outFormat = ".json"; if (arg.Length == 3 && arg[2] == 'c') { SimpleLog.DisableConsole(true); consoleMode = true; enabledOutput = false; } } else if (arg[1] == 'e' && arg.Length == 3 && arg[2] == 'o') { enabledOutput = true; } else if (arg[1] == 'e' && arg.Length == 3 && arg[2] == 'c') { SimpleLog.DisableConsole(true); enabledConsoleLog = true; } else if (arg[1] == 'd' && arg.Length == 3 && arg[2] == 't') { enabledTimestamp = false; } else if (arg[1] == 'v') { //Console.WriteLine(System.Reflection.Assembly.GetExecutingAssembly().GetName().ToString()); if (System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed) { Console.WriteLine(System.Deployment.Application.ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString(4)); } else { Console.WriteLine("Debug version:" + System.Reflection.Assembly.GetExecutingAssembly().GetName().ToString()); } System.Environment.Exit(0); } else if (arg[1] == 'h') { WriteHelp(); System.Environment.Exit(0); } else if (arg[1] == 'a') { string[] argdetails = (arg[2] == ':') ? arg.Substring(3).Split(':') : arg.Substring(2).Split(':'); if (argdetails[1].ToLower() == "string" || argdetails[1].ToLower().Contains("char")) { arguments.Add(argdetails[0], argdetails[2]); } else if (argdetails[1].ToLower().Contains("date")) { arguments.Add(argdetails[0], DateTime.Parse(argdetails[2])); } else if (argdetails[1].ToLower() == "integer" || argdetails[1].ToLower() == "int") { arguments.Add(argdetails[0], int.Parse(argdetails[2])); } else if (argdetails[1].ToLower() == "decimal" || argdetails[1].ToLower() == "number") { arguments.Add(argdetails[0], decimal.Parse(argdetails[2])); } else if (argdetails[1].ToLower().Contains("array")) { var items = argdetails[2].Split(','); if (argdetails[2].Contains("'") || argdetails[1].ToLower().Contains("string") || argdetails[1].ToLower().Contains("char")) { List <string> vals = new List <string>(); foreach (var item in items) { vals.Add(item.Replace("'", "")); } arguments.Add(argdetails[0], vals.ToArray()); } else { List <int> vals = new List <int>(); foreach (var item in items) { vals.Add(int.Parse(item)); } arguments.Add(argdetails[0], vals.ToArray()); } } } } else // ide o naazov suboru s definiciou if (arg.ToLower().IndexOf(".sql") > 0 || arg.ToLower().IndexOf(".json") > 0) { defFileName = arg; } } // Logging only after initialeze console output SimpleLog.WriteLog("Input arguments {"); foreach (var arg in inputArgs) { SimpleLog.WriteLog(arg, false); } SimpleLog.WriteLog("}", false); SimpleLog.WriteLog("", false); if (repConnectString == null) { repConnectString = "ReportConnString"; } }