示例#1
0
        private void BT_OpenWorkForm_Click(object sender, EventArgs e)
        {
            Stser  = 0;
            EndSer = 0;

            if (DG_LOTList.CurrentRow.Index == -1 || DG_LOTList.Rows.Count == 0)
            {
                MessageBox.Show("Лот не выбран!"); return;
            }

            int LOTID = int.Parse(DG_LOTList[6, DG_LOTList.CurrentRow.Index].Value.ToString());

            if (DG_LOTList[7, DG_LOTList.CurrentRow.Index].Value == null) //Если нет диапозона
            {
                GridLoadSNNotRange(LOTID);
                SNGrid.Select();
                return;
            }

            FixedRange FR     = new FixedRange(LOTID);
            var        Result = FR.ShowDialog();

            if (Result == DialogResult.Cancel)//Если нажали отмена, выходим из метода
            {
                return;
            }

            Stser  = FR.STSer;
            EndSer = FR.EndSer;
            GridLoadSN(LOTID);
            SNGrid.Select();
        }
示例#2
0
        void OpenForm(BaseClass BC)
        {
            //Передаем свойства всех элементов формы (Control)  в базовый класс
            BaseC.control = this;
            var I = DG_LOTList.CurrentRow.Index;

            if (BaseC.GetType() == typeof(FAS_Weight_control))
            {
                WorkForm workForms = new WorkForm(BC);
                BaseC.GetPortName();
                workForms.ShowDialog();
                return;
            }
            //очистка данных после 3 индекса в ArrayList
            if (BaseC.ArrayList.Count > 3)
            {
                BaseC.ArrayList.RemoveRange(3, BaseC.ArrayList.Count - 3);
            }

            //Добавление LOTID из грида по выделенной строке
            int LOTID = int.Parse(DG_LOTList[6, I].Value.ToString());

            //Добавление LOTCode из грида по выделенной строке
            BaseC.LotCode = int.Parse(DG_LOTList[0, I].Value.ToString());

            //Условие, если базовый класс приведен к типу FASStart
            if (BaseC.GetType() == typeof(FASStart))
            {
                BaseC.DateFas_Start = false;
                BaseC.labelCount    = int.Parse(TB_LabelSNCount.Text); //Указываем сколько этикеток печатать
                BaseC.UpPrintSN     = CheckBoxSN.Checked;              //Указываем надо ли печатать этикетку
                                                                       //Условие выбора сетевого времени или локального указанного вручную
                if (DG_LOTList[10, I].Value != null)
                {
                    if (DG_LOTList[10, I].Value.ToString() == "True")
                    {
                        FixedRange FR     = new FixedRange(LOTID, BC);
                        var        Result = FR.ShowDialog();
                        if (Result == DialogResult.Cancel)//Если нажали отмена, выходим из метода
                        {
                            return;
                        }
                        else if (Result == DialogResult.Retry)//Если нажали None(Работа без диапазона)
                        {
                            BaseC.DateFas_Start = false;
                        }
                        else
                        {
                            BaseC.DateFas_Start = true; //Выбрали диапазон
                        }
                    }
                }
                #region
                //if (RB_Server_Time.Checked)
                //    BaseC.DateFas_Start = true; //Сетевое
                //else
                //{ BaseC.DateFas_Start = false; BaseC.DateFas_ST_Text = DateTimePicker.Value.ToString("dd.MM.yyyy"); } //Локальное
                #endregion
            }
            //Условие, если базовый класс приведен к типу UploadStation
            if (BaseC.GetType() == typeof(UploadStation))
            {
                BaseC.UpPrintID             = CHID.Checked;                    //Указываем надо ли печатать этикетку ID номер
                BaseC.UpPrintSN             = CHSN.Checked;                    //Указываем надо ли печатать этикетку SN номер
                BaseC.UpPrintCountID        = int.Parse(TB_LabelIDCount.Text); //Количество ID этикеток
                BaseC.UpPrintCountSN        = int.Parse(TBCHSN.Text);          //Количество SN этикеток
                BaseC.CheckBoxDublicateSCID = CheckBoxDublicateSCID.Checked;   //Проверка на дубликат в таблице Fas_Upload
                BaseC.GetPortName();
            }
            //Добавление данных в ArrayList из выделенного Лота
            for (int i = 0; i < 3; i++)
            {
                BaseC.ArrayList.Add(DG_LOTList[i, DG_LOTList.CurrentRow.Index].Value.ToString());
            }

            //Условие, если базовый класс приведен к типу FAS_END
            if (BaseC.GetType() == typeof(FAS_END))
            {
                if (DG_LOTList[12, I].Value != null) //Выбираем диапазон у лота
                {
                    if (DG_LOTList[12, I].Value.ToString() == "True")
                    {
                        FixedRange FR     = new FixedRange(LOTID, BC);
                        var        Result = FR.ShowDialog();
                        if (Result == DialogResult.Cancel)//Если нажали отмена, выходим из метода
                        {
                            return;
                        }
                        else if (Result == DialogResult.Retry)//Если нажали None(Работа без диапазона)
                        {
                            BaseC.DateFas_Start = false;
                        }
                        else
                        {
                            BaseC.DateFas_Start = true; //Выбрали диапазон
                        }
                        //BaseC.DateFas_Start = true;
                    }
                }

                BaseC.ArrayList.Add("");
                for (int i = 4; i < 6; i++)
                {
                    BaseC.ArrayList.Add(DG_LOTList[i, DG_LOTList.CurrentRow.Index].Value.ToString());
                }
            }
            //Открытие формы
            WorkForm workForm = new WorkForm(BC, LOTID);
            workForm.ShowDialog();
        }