Example #1
0
        private void butCompile_Click(object sender, EventArgs e)
        {
            string itd = Different.GetInfoTaskDir();
            var    t   = new TablikCompiler {
                ShowIndicator = true
            };

            t.SetHistoryFile(itd + @"Constructor\TablikHistory\TablikHistory.accdb");
            t.SetCompiledDir(itd + @"Compiled");
            //t.LoadProject(itd + @"ProjectsReal\Тутаев\TutElectro.accdb");
            //t.LoadProject(itd + @"ProjectsReal\Сургут2-3\Electro3.accdb");
            //t.LoadProject(itd + @"ProjectsReal\Курган\Ktec2_Tep.accdb");
            //t.LoadProject(itd + @"Projects\PrSignals.accdb");
            //t.LoadProject(itd + @"Analyzer\ArhAnalyzerProject.accdb");
            t.LoadProject(itd + @"Projects\ClassTest.accdb");
            //t.LoadProject(itd + @"ProjectsReal\СУГРЭС-11\Sugres11_PN.accdb");
            //t.LoadProject(itd + @"Projects\ApdControl.accdb");
            //MessageBox.Show(t.ProjectFile + " " + t.ProjectCode + " " + t.ProjectName);
            t.LoadSignals();
            string res = t.CompileProject();

            if (!res.IsEmpty())
            {
                MessageBox.Show(res);
            }
            t.Close();
        }
Example #2
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            using (var rec = new RecDao(Different.GetInfoTaskDir() + @"General\Config.accdb",
                                        "SELECT SysSubTabl.SubParamRowSource FROM SysTabl INNER JOIN SysSubTabl ON SysTabl.ParamId = SysSubTabl.ParamId " +
                                        "WHERE ((SysTabl.ParamValue='Приемник') AND (SysSubTabl.SubParamName='OPCServerName'));"))
                while (rec.Read())
                {
                    var set = rec.GetString("SubParamRowSource").ToPropertyHashSet();
                    foreach (var s in set.Values)
                    {
                        if (!OpcServerName.Items.Contains(s))
                        {
                            OpcServerName.Items.Add(s);
                        }
                    }
                }
            OpcServerName.Items.Add("Matrikon.OPC.Simulation.1");

            using (var sys = new SysTabl(Different.GetInfoTaskDir() + @"Controller\ControllerData.accdb"))
            {
                OpcServerName.Text = sys.SubValue("DebugWriteOPC", "OpcServerName");
                Node.Text          = sys.SubValue("DebugWriteOPC", "Node");
                OpcTag.Text        = sys.SubValue("DebugWriteOPC", "OpcTag");
                DataType.Text      = sys.SubValue("DebugWriteOPC", "DataType");
                TagValue.Text      = sys.SubValue("DebugWriteOPC", "TagValue");
            }
        }
Example #3
0
 public TablikGenerator()
 {
     _infoTaskDir = Different.GetInfoTaskDir();
     OpenHistory(_infoTaskDir + @"Constructor\TablikHistory\GeneratorHistory.accdb",
                 _infoTaskDir + @"General\HistoryTemplate.accdb");
     using (StartLog("Открытие"))
         _isClosed = false;
 }
Example #4
0
 private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
 {
     using (var sys = new SysTabl(Different.GetInfoTaskDir() + @"Controller\ControllerData.accdb"))
     {
         sys.PutSubValue("DebugWriteOPC", "OpcServerName", OpcServerName.Text);
         sys.PutSubValue("DebugWriteOPC", "Node", Node.Text);
         sys.PutSubValue("DebugWriteOPC", "OpcTag", OpcTag.Text);
         sys.PutSubValue("DebugWriteOPC", "DataType", DataType.Text);
         sys.PutSubValue("DebugWriteOPC", "TagValue", TagValue.Text);
     }
 }
Example #5
0
        static void Main()
        {
            ControllerDataFile = Different.GetInfoTaskDir() + @"Controller\ControllerData.accdb";
            using (var sys = new SysTabl(ControllerDataFile))
            {
                MonitorHistory = new MonitorHistory
                {
                    Inf = sys.Value("MonitorHistoryProps")
                };
                CheckTime = sys.Value("MonitorHistoryCheckTime").ToDateTime();
            }

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(ThreadsForm = new ThreadsForm());
        }
Example #6
0
        private void ButCheckSignals_Click(object sender, EventArgs e)
        {
            string itd = Different.GetInfoTaskDir();
            var    t   = new TablikCompiler {
                ShowIndicator = true
            };

            t.SetHistoryFile(itd + @"Constructor\TablikHistory\TablikHistory.accdb");
            t.SetCompiledDir(itd + @"Compiled");
            //t.LoadProject(itd + @"ProjectsReal\Тутаев\TutElectro.accdb");
            //t.LoadProject(itd + @"Projects\CalcTest.accdb");
            //t.LoadProject(itd + @"ProjectsReal\Сургут2-3\Electro3.accdb");
            t.LoadProject(itd + @"ProjectsTest\Super2.accdb");
            //t.LoadProject(itd + @"Projects\P1.accdb");
            MessageBox.Show(t.CheckSignals());
            t.Close();
        }
Example #7
0
        //Определяет _fileTypeStr и _templatePath
        private void DefineConstants(DbMode dbMode)
        {
            string itd = Different.GetInfoTaskDir();

            switch (dbMode)
            {
            case DbMode.Project:
                _fileTypeStr  = "Проект";
                _templatePath = itd + @"General\ProjectTemplate.accdb";
                break;

            case DbMode.Imit:
                _fileTypeStr  = "Файл имитационных данных";
                _templatePath = itd + @"General\ImitDataTemplate.accdb";
                break;

            case DbMode.Archive:
            case DbMode.ArchiveSQL:
                _fileTypeStr  = "Архив";
                _templatePath = itd + @"Providers\Archives\CalcArchiveTemplate.accdb";
                break;

            case DbMode.ControllerData:
                _fileTypeStr  = "Файл данных контроллера";
                _templatePath = itd + @"Tmp\ControllerDataTemplate.accdb";
                break;

            case DbMode.ReporterData:
                _fileTypeStr  = "Файл данных построителя отчетов";
                _templatePath = itd + @"Tmp\ReporterDataTemplate.accdb";
                break;

            case DbMode.AnalyzerAppData:
                _fileTypeStr  = "Файл данных анализатора";
                _templatePath = itd + @"Tmp\AppDataTemplate.accdb";
                break;

            case DbMode.ConstructorAppData:
                _fileTypeStr  = "Файл данных конструктора расчетов";
                _templatePath = itd + @"Tmp\AppDataTemplate.accdb";
                break;
            }
        }
Example #8
0
 public static void Initialize()
 {
     if (_isInitialized)
     {
         return;
     }
     try
     {
         InfoTaskDir        = Different.GetInfoTaskDir();
         GeneralDir         = InfoTaskDir + @"General\";
         TmpDir             = InfoTaskDir + @"Tmp\";
         DocsDir            = InfoTaskDir + @"Docs\";
         ControllerDir      = InfoTaskDir + @"Controller\";
         ReporterDir        = InfoTaskDir + @"Reporter\";
         ConfigFile         = GeneralDir + "Config.accdb";
         HistryTemplateFile = GeneralDir + "HistoryTemplate.accdb";
         if (!DaoDb.Check(GeneralDir + "General.accdb", new[] { "Functions", "FunctionsOverloads" }))
         {
             Different.MessageError("Не допустимый General.accdb");
         }
         if (!DaoDb.Check(ConfigFile, new[] { "SysTabl", "SysSubTabl" }))
         {
             Different.MessageError("Не допустимый Config.accdb");
         }
         ControllerFile = ControllerDir + "ControllerData.accdb";
         if (!DaoDb.Check(ControllerFile, new[] { "Threads", "Projects", "Providers" }))
         {
             Different.MessageError("Не допустимый ControllerData.accdb");
         }
         ReporterFile       = ReporterDir + "ReporterData.accdb";
         ReportTemplateFile = ReporterDir + "ReportTemplate.accdb";
         DebugMode          = SysTabl.ValueS(ControllerFile, "DebugMode") == "True";
         Oka.Register();
         ReadProvidersLists();
         _isInitialized = true;
     }
     catch (Exception ex)
     {
         ex.MessageError("Настроечный файл имеет недопустимый формат");
     }
 }
Example #9
0
        //Список совместимых кодов провайдеров для выбранного кода провайдера
        public static List <string> JointProviderCodes(this string code)
        {
            var list = new List <string> {
                code
            };

            using (var rec = new RecDao(Different.GetInfoTaskDir() + @"General\Config.accdb", "SysTabl"))
            {
                if (code == "CloneSource")
                {
                    while (rec.Read())
                    {
                        if (rec.GetString("ParamValue") == "Источник" && rec.GetString("ParamName") != "CloneSource")
                        {
                            list.Add(rec.GetString("ParamName"));
                        }
                    }
                }
                else
                {
                    rec.FindFirst("ParamName", code);
                    if (!rec.NoMatch())
                    {
                        var set = rec.GetString("ParamTag").ToPropertyDicS()["JointProviders"].ToPropertyHashSet();
                        foreach (var c in set.Values)
                        {
                            rec.FindFirst("ParamName", c);
                            if (!rec.NoMatch())
                            {
                                list.Add(c);
                            }
                        }
                    }
                }
            }
            return(list);
        }
Example #10
0
 //Конструктор для работы из других приложений
 public TablikCompiler()
 {
     try
     {
         ThreadName    = "Tablik";
         State         = State.Empty;
         ShowIndicator = true;
         var screen = Screen.PrimaryScreen;
         Form          = new TablikForm();
         Form.Location = new Point(screen.WorkingArea.Width - Form.Width - 1, screen.WorkingArea.Height - Form.Height - 2);
         _infoTaskDir  = Different.GetInfoTaskDir();
         _tmpDir       = _infoTaskDir + @"\Tmp";
         var d = new DirectoryInfo(_tmpDir);
         if (!d.Exists)
         {
             d.Create();
         }
         LoadFunctions();
     }
     catch (Exception ex)
     {
         ex.MessageError("Ошибка загрузки копилятора", "Системная ошибка компилятора");
     }
 }
Example #11
0
        //Задание комманд, вызываемых из меню
        protected override void AddMenuCommands()
        {
            var m = new Dictionary <string, IMenuCommand>();

            m.Add("Выбрать файл", new DialogCommand(DialogType.OpenFile)
            {
                DialogTitle  = "Файл архива результатов расчета",
                ErrorMessage = "Указан недопустимый файл архива",
                FileTables   = new[] { "Projects", "Reports", "Params", "ReportParams", "Ranges", "SingleValues", "BaseValues" }
            });
            m.Add("Создать архив", new DialogCommand(DialogType.CreateFile)
            {
                DialogTitle  = "Создание нового файла архива результатов",
                TemplateFile = Different.GetInfoTaskDir() + @"Providers\Archives\CalcArchiveTemplate.accdb"
            });
            MenuCommands.Add("DatabaseFile", m);

            m = new Dictionary <string, IMenuCommand>();
            m.Add("Выбрать каталог", new DialogCommand(DialogType.OpenDir)
            {
                DialogTitle = "Каталог для резервных копий архива"
            });
            MenuCommands.Add("ReserveDir", m);
        }