예제 #1
0
 //Загрузка параметров и подготовка формы, если ввод абсолютных значений _isAbsolute=true, иначе ручной ввод
 public void LoadForInput(ThreadController thread, bool isAbsolute)
 {
     DataContext = thread;
     _isAbsolute = isAbsolute;
     if (isAbsolute)
     {
         thread.State = State.AbsoluteEdit;
         gridParams.Columns[5].Visibility = Visibility.Visible;   //Время
         gridParams.Columns[6].Visibility = Visibility.Visible;   //Значение
         gridParams.Columns[7].Visibility = Visibility.Visible;   //Старое время
         gridParams.Columns[8].Visibility = Visibility.Visible;   //Старое значение
         gridParams.Columns[9].Visibility = Visibility.Collapsed; //По умолчанию
         Title = "Поток " + thread.Id + ". Редактирование абсолютных значений";
         thread.LoadAbsolute();
         thread.CurrentOperation = "Редактирование абсолютных значений";
     }
     else
     {
         thread.State = State.HandInput;
         gridParams.Columns[5].Visibility = Visibility.Collapsed; //Время
         gridParams.Columns[6].Visibility = Visibility.Collapsed; //Значение
         gridParams.Columns[7].Visibility = Visibility.Collapsed; //Старое время
         gridParams.Columns[8].Visibility = Visibility.Collapsed; //Старое значение
         gridParams.Columns[9].Visibility = Visibility.Visible;   //По умолчанию
         Title = "Поток " + thread.Id + ". Параметры ручного ввода";
         thread.StartAtom(Atom.LoadHandInput, thread.LoadHandInput);
         thread.CurrentOperation = "Ручной ввод значений";
     }
 }
예제 #2
0
        //Загрузка потока контроллера
        public void AddThread(IRecordRead rec)
        {
            var t = new ThreadController(rec)
            {
                App = this, Synchro = Synchro
            };

            ThreadsDic.Add(t.Id, t);
            Threads.Add(t);
            MonitorHistory.AddHistoryTables(t.Id);
        }
예제 #3
0
 //Добавить ошибку
 public void AddError(ThreadController thread, //Поток
                      ErrorCommand er,         //Ошибка
                      DateTime time,           //Время возникновения
                      CommandLog command)      //Текущая команда
 {
     try
     {
         SqlDb.Execute(SqlProps,
                       "INSERT INTO ErrorsList" + thread.Id + "(ThreadId, ThreadDescription, ThreadProjects, PeriodBegin, PeriodEnd, Description, Params, Time, Command, Context) " +
                       "VALUES (" + thread.Id + ",'" + thread.Comment + "', '" + thread.ProjectsString + "', " + thread.PeriodBegin.ToSqlString() + ", " + thread.PeriodEnd.ToSqlString() + ",'"
                       + er.Text + "',  '" + er.Params + "', " + time.ToSqlString() + ", '" + command.Name + "' ,'" + er.Context + "')");
     }
     catch { }
 }
예제 #4
0
 //Экспорт проекта в другой поток
 public void ExportProject(ThreadController thread, Project project)
 {
     DeleteProject(project);
     if (thread.State == State.Setup)
     {
         thread.PasteProject(project);
     }
     else
     {
         using (thread.StartAtom(Atom.PasteProject, 0, 100, "Проект " + project.Code, project.Code))
         {
             thread.PasteProject(project);
             thread.SaveSetup();
         }
     }
 }