public AddProductNameRowForm(FormType ftype, string tag, ProductNameRow 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); }
public static ProductNameRow ConvertRowInfoToProductNameRow(GridViewRowInfo row) { ProductNameRow res = new ProductNameRow(); res.Code = (long)row.Cells[0].Value; res.Name = row.Cells[1].Value.ToString(); res.Designation = row.Cells[2].Value.ToString(); res.ProductCode = Convert.ToInt32(row.Cells[3].Value); res.TypeCode = Convert.ToInt32(row.Cells[4].Value); res.SignCode = Convert.ToInt32(row.Cells[5].Value); return res; }
public static DatabaseLib.ParametersCollection ConvertProductNameRowToParameters(ProductNameRow row) { DatabaseLib.ParametersCollection par = new DatabaseLib.ParametersCollection(); par.Add("ProductKey", row.Code, DbType.UInt64); par.Add("Name", row.Name, DbType.String); par.Add("Designation", row.Designation, DbType.String); par.Add("ViewCode", row.ProductCode, DbType.Byte); par.Add("TypeCode", row.TypeCode, DbType.Byte); par.Add("SignCode", row.SignCode, DbType.Byte); return par; }
public static ProductNameRow ConvertDataTableRowToProductNameRow(DataTable dt) { ProductNameRow res = new ProductNameRow(); res.Code = dt.Rows[0].Field<long>(0); res.Name = dt.Rows[0].Field<string>(1); res.Designation = dt.Rows[0].Field<string>(2); res.ProductCode = Convert.ToInt32(dt.Rows[0].ItemArray.GetValue(3)); res.TypeCode = Convert.ToInt32(dt.Rows[0].ItemArray.GetValue(4)); res.SignCode = Convert.ToInt32(dt.Rows[0].ItemArray.GetValue(5)); return res; }
/// <summary> /// Загрузка данных из файла для таблицы "Справочник наименований продукции" /// </summary> /// <param name="fname">Полный путь к тектовому файлу с данными для заполнения</param> /// <returns>Возвращает массив структур struct ProductNameRow</returns> public static ProductNameRow[] LoadDataForProductNames(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(); ProductNameRow[] Prod = new ProductNameRow[count]; for (int i = 0; i < count; i++) { string[] tmp = mas[i].Split('\t'); Prod[i].Code = Convert.ToInt64(tmp[0]); Prod[i].Designation = tmp[1]; Prod[i].Name = tmp[2]; Prod[i].ProductCode = Convert.ToInt32(tmp[3]); Prod[i].TypeCode = Convert.ToInt32(tmp[4]); Prod[i].SignCode = Convert.ToInt32(tmp[5]); } return Prod; }
private void okButton_Click(object sender, EventArgs e) { if (radTextBox1.Text != "" && radTextBox1.Text != " " && radTextBox2.Text != "" && radTextBox2.Text != " " && radTextBox3.Text != "" && radTextBox3.Text != " " && radMultiColumnComboBox1.SelectedIndex >= 0 && radMultiColumnComboBox2.SelectedIndex >= 0 && radMultiColumnComboBox3.SelectedIndex >= 0) { ProductNameRow row = new ProductNameRow(); row.Code = Convert.ToInt64(radTextBox1.Text); row.Name = radTextBox2.Text; row.Designation = radTextBox3.Text; row.ProductCode = Convert.ToInt32(radMultiColumnComboBox1.EditorControl.Rows[radMultiColumnComboBox1.SelectedIndex].Cells[0].Value); row.TypeCode = Convert.ToInt32(radMultiColumnComboBox2.EditorControl.Rows[radMultiColumnComboBox2.SelectedIndex].Cells[0].Value); row.SignCode = Convert.ToInt32(radMultiColumnComboBox3.EditorControl.Rows[radMultiColumnComboBox3.SelectedIndex].Cells[0].Value); switch (FType) { case FormType.ADDFORM: // вставка данных в ТБД // проверка кода продукции на совпадение с уже имеющимися (pramary key) if (CheckProductCode(Convert.ToInt64(radTextBox1.Text))) { MessageBox.Show("Введеный код продукции уже есть! Ключ продукта должен быть уникален!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DBWorker.InsertDataRowToTable(TableTag, row); break; case FormType.EDITFORM: // обновление записи в таблице DBWorker.UpdateDataInRow(TableTag, Key, Converter.ConvertProductNameRowToParameters(row)); break; } this.DialogResult = DialogResult.OK; this.Close(); } else MessageBox.Show("Не верно введены данные или не заданы совсем!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); }
// заполнение данными контрола private void LoadDataToControls(ProductNameRow data) { radTextBox1.Text = data.Code.ToString(); radTextBox2.Text = data.Name; radTextBox3.Text = data.Designation; int i; for (i = 0; i < radMultiColumnComboBox1.EditorControl.Rows.Count; i++) { if (Convert.ToInt64(radMultiColumnComboBox1.EditorControl.Rows[i].Cells[0].Value) == data.ProductCode) { radMultiColumnComboBox1.SelectedIndex = i; continue; } } for (i = 0; i < radMultiColumnComboBox2.EditorControl.Rows.Count; i++) { if (Convert.ToInt64(radMultiColumnComboBox2.EditorControl.Rows[i].Cells[0].Value) == data.TypeCode) { radMultiColumnComboBox2.SelectedIndex = i; continue; } } for (i = 0; i < radMultiColumnComboBox3.EditorControl.Rows.Count; i++) { if (Convert.ToInt64(radMultiColumnComboBox3.EditorControl.Rows[i].Cells[0].Value) == data.SignCode) { radMultiColumnComboBox3.SelectedIndex = i; continue; } } }