Example #1
0
File: Form1.cs Project: slawer/skc
        /// <summary>
        /// вызвать окно проектов
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void проектыToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (_app.Commutator.Technology.Stages.IsWork == false)
            {
                ProjectsForm2 frm = new ProjectsForm2();
                if (frm.ShowDialog(this) == DialogResult.OK)
                {
                    // ------ выбрали новую работу! ------
                    // ------ необходимо проверить наличие БД для данной работы ------
                    // ------ в случае необходимости создать, или же загрузить ------

                    if (_app.Manager.State == DataBaseState.Saving)
                    {
                        _app.Manager.TurnOffFromSavingMode();
                    }

                    if (_app.Manager.State == DataBaseState.Loaded)
                    {
                        _app.Manager.CloseDB();
                    }

                    InsertKoefs(_app.CurrentProject);
                    InsertToListStagesWithClear(_app.CurrentProject);

                    //InsertToListStages(_app.CurrentProject);

                    CheckAndLoadBD(_app.CurrentProject);
                    ShowResultStatus(true);

                    if (_app.Manager.State != DataBaseState.Saving)
                    {
                        try
                        {
                            _app.Manager.TurnOnToSavingMode();
                        }
                        catch { }
                    }
                    timerToDBSaver.Start();

                    isFinished = false;
                    _app.Commutator.Technology.is_finished = false;
                    _app.Commutator.ClearData();
                }

                InsertToListStagesWithClear(_app.CurrentProject);
                _app.Save();
            }
            else
            {
                // ---- ведуться работы ----
                MessageBox.Show(this, "Ведется работа. Вызов дерева проектов запрещен", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }
Example #2
0
File: Form1.cs Project: slawer/skc
        private void Form1_Shown(object sender, EventArgs e)
        {
            //WindowState = FormWindowState.Maximized;
            _app.devTcpManager.OnPacket += new PacketEventHandler(devTcpManager_OnPacket);

            if (_app.Commutator.Technology.Stages.IsWork == false)
            {
                LoadAppForm frm = new LoadAppForm();
                if (frm.ShowDialog(this) == DialogResult.OK)
                {
                    if (frm.radioButtonNewWork.Checked)
                    {
                        ProjectsForm2 frm_p = new ProjectsForm2();
                        if (frm_p.CreateNewAndSelectProject(this))
                        {
                            // ------ выбрали новую работу! ------
                            // ------ необходимо проверить наличие БД для данной работы ------
                            // ------ в случае необходимости создать, или же загрузить ------

                            if (_app.Manager.State == DataBaseState.Saving)
                            {
                                _app.Manager.TurnOffFromSavingMode();
                            }

                            if (_app.Manager.State == DataBaseState.Loaded)
                            {
                                _app.Manager.CloseDB();
                            }

                            InsertKoefs(_app.CurrentProject);
                            InsertToListStagesWithClear(_app.CurrentProject);

                            //InsertToListStages(_app.CurrentProject);

                            CheckAndLoadBD(_app.CurrentProject);
                            ShowResultStatus(true);

                            if (_app.Manager.State != DataBaseState.Saving)
                            {
                                try
                                {
                                    _app.Manager.TurnOnToSavingMode();
                                }
                                catch { }
                            }
                            timerToDBSaver.Start();

                            isFinished = false;
                            _app.Commutator.Technology.is_finished = false;

                            _app.Commutator.ClearData();
                        }

                        InsertToListStagesWithClear(_app.CurrentProject);
                        _app.Save();
                    }
                    else
                        if (frm.radioButtonNewWithStages.Checked)
                        {
                            проектыToolStripMenuItem_Click(this, EventArgs.Empty);
                        }
                        else if (frm.radioButtonSelectWork.Checked)
                        {
                            проектыToolStripMenuItem_Click(this, EventArgs.Empty);
                        }
                }
                else
                {
                    закрытьПрограммуToolStripMenuItem_Click(this, EventArgs.Empty);
                }
            }
            Parameter[] parameters = _app.Commutator.Parameters;
            if (parameters != null)
            {
                PDescription[] pars;
                pars = DevManClient.Parameters;
                foreach (Parameter parameter in parameters)
                {
                    try
                    {
                        foreach (PDescription param in pars)
                        {
                            if (param.Number == parameter.Channel.Number)
                            {
                                parameter.Channel.Type = param.Type;
                                break;
                            }
                        }
                    }
                    catch
                    {
                    }
                }
            }
        }