Esempio n. 1
0
 public AddMaterialRowForm(FormType ftype, string tag, MaterialsRow data, long key)
 {
     InitializeComponent();
     switch (ftype)
     {
         case FormType.ADDFORM:
             this.Text = "Добавление записи в таблицу";
             break;
         case FormType.EDITFORM:
             this.Text = "Редактирование записи";
             break;
     }
     TableTag = tag;
     FType = ftype;
     Key = key;
     InitializeData();
     LoadDataToControls(data);
 }
Esempio n. 2
0
        public static MaterialsRow ConvertRowInfoToMaterialRow(GridViewRowInfo row)
        {
            MaterialsRow res = new MaterialsRow();

            res.Code = (long)row.Cells[0].Value;
            res.Designation = row.Cells[1].Value.ToString();
            res.UnitCode = Convert.ToInt32(row.Cells[2].Value);

            return res;
        }
Esempio n. 3
0
 public static DatabaseLib.ParametersCollection ConvertMaterialRowToParameters(MaterialsRow row)
 {
     DatabaseLib.ParametersCollection par = new DatabaseLib.ParametersCollection();
     par.Add("MaterialCode", row.Code, DbType.UInt64);
     par.Add("Name", row.Designation, DbType.String);
     par.Add("UnitType", row.UnitCode, DbType.Byte);
     return par;
 }
Esempio n. 4
0
        public static MaterialsRow ConvertDataTableRowToMaterialRow(DataTable dt)
        {
            MaterialsRow res = new MaterialsRow();

            res.Code = dt.Rows[0].Field<long>(0);
            res.Designation = dt.Rows[0].Field<string>(1);
            res.UnitCode = Convert.ToInt32(dt.Rows[0].ItemArray.GetValue(2));

            return res;
        }
Esempio n. 5
0
        /// <summary>
        /// Загрузка данных из файла для таблицы "Справочник технических материалов"
        /// </summary>
        /// <param name="fname">Полный путь к тектовому файлу с данными для заполнения</param>
        /// <returns>Возвращает массив структур struct MaterialsRow, описывающий строки таблицы "Справочник материалов"</returns>
        public static MaterialsRow[] LoadDataForReferenceMaterials(string fname)
        {
            StreamReader file = new StreamReader(fname);
            int count = 0;
            string[] mas = new string[0];
            while (!file.EndOfStream)
            {
                string str = file.ReadLine();
                count++;
                Array.Resize(ref mas, count);
                mas[count - 1] = str;
            }
            file.Close();

            MaterialsRow[] Mat = new MaterialsRow[count];
            for (int i = 0; i < count; i++)
            {
                string[] tmp = mas[i].Split('\t');
                Mat[i].Code = Convert.ToInt64(tmp[0]);
                Mat[i].Designation = tmp[1];
                Mat[i].UnitCode = Convert.ToInt32(tmp[2]);
            }

            return Mat;
        }
Esempio n. 6
0
 // кнопка ОК
 private void okButton_Click(object sender, System.EventArgs e)
 {
     if (radTextBox1.Text != "" && radTextBox1.Text != " " &&
         radTextBox2.Text != "" && radTextBox2.Text != " " &&
         radMultiColumnComboBox1.SelectedIndex < 0)
     {
         MaterialsRow row = new MaterialsRow();
         row.Code = Convert.ToInt64(radTextBox1.Text);
         row.Designation = radTextBox2.Text;
         row.UnitCode = radMultiColumnComboBox1.SelectedIndex + 1;
         switch (FType)
         {
             case FormType.ADDFORM: // вставка данных в ТБД
                 // проверка кода продукции на совпадение с уже имеющимися (pramary key)
                 if (CheckMaterialCode(Convert.ToInt64(radTextBox1.Text)))
                 {
                     MessageBox.Show("Введеный код материала уже есть! Ключ материала должен быть уникален!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     return;
                 }
                 DBWorker.InsertDataRowToTable(TableTag, row);
                 break;
             case FormType.EDITFORM: // обновление записи в таблице
                 DBWorker.UpdateDataInRow(TableTag, Key, Converter.ConvertMaterialRowToParameters(row));
                 break;
         }
         this.DialogResult = DialogResult.OK;
         this.Close();
     }
     else
         MessageBox.Show("Не верно введены данные или не заданы совсем!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
 }
Esempio n. 7
0
 // загрузка данных для редактируемой записи
 private void LoadDataToControls(MaterialsRow data)
 {
     radTextBox1.Text = data.Code.ToString();
     radTextBox2.Text = data.Designation;
     radMultiColumnComboBox1.SelectedIndex = data.UnitCode - 1;
 }