/// <summary> /// Заполнение ComboBox названиями должностей по их ID в таблице /// </summary> private void cbFill() { Table_Class table = new Table_Class(DBConnection.qrBank); cbBank.DataSource = table.table; cbBank.DisplayMember = "Название"; cbBank.ValueMember = "ID_Bank"; }
/// <summary> /// Проверка на существование записи в таблице /// </summary> /// <param name="ID"> ID записи</param> /// <param name="TableName">Название таблицы</param> public void Record_Checking(Int32 ID, string TableName) { Table_Class table = new Table_Class( string.Format("select COUNT(*) from [dbo].[{1}] where [ID_{1}] = {0}", ID, TableName)); if (Convert.ToInt32(table.table.Rows[0][0].ToString()) > 0) { System.Windows.Forms.MessageBox.Show("Невозможно произвести удаление записи, так как она связана с другими!", "DinoRemont"); } }
private void Button_Print_Click(object sender, EventArgs e) { Document_Class document = new Document_Class(); //SQL запрос string qr = Query; //убираю ключи из запроса qr = qr.Replace("[ID_Employee],", ""); qr = qr.Replace("[ID_Post],", ""); //Произвожу запрос Table_Class table = new Table_Class(qr); document.Document_Create(Document_Class.Document_Type.List, Document_Class.Document_Format.Word, "", table.table); }
/// <summary> /// Заполнение ComboBox названиями должностей по их ID в таблице /// </summary> private void cbFill() { Table_Class table = new Table_Class(DBConnection.qrPosition); cbPosition.DataSource = table.table; cbPosition.DisplayMember = "Должность"; cbPosition.ValueMember = "ID_Position"; Table_Class table2 = new Table_Class(DBConnection.qrAccount); cbAccount.DataSource = table2.table; cbAccount.DisplayMember = "Логин"; cbAccount.ValueMember = "ID_Account"; }
/// <summary> /// Заполнение ComboBox названиями должностей по их ID в таблице /// </summary> private void cbFill() { Table_Class table = new Table_Class(DBConnection.qrSupplier); cbPosition.DataSource = table.table; cbPosition.DisplayMember = "Поставщик"; cbPosition.ValueMember = "ID_Supplier"; Table_Class table2 = new Table_Class(DBConnection.qrEmployee); cbAccount.DataSource = table2.table; cbAccount.DisplayMember = "Фамилия"; cbAccount.ValueMember = "ID_Employee"; }
/// <summary> /// Вызов функции авторизации пользователя в системе для открытия сессии /// работы в программе /// </summary> /// <param name="Login">Значение логина пользователя</param> /// <param name="Password">Значение пароля пользователя</param> public void Authorization(string Login, string Password) { //Обращение к табличной функции Table_Class table = new Table_Class( string.Format(" select COUNT(*) from [dbo].[Account] where [Login_Account] = '{0}' and [Password_Account] = '{1}'", Login, Password)); try { //Присвоение в статическую строковую переменную значения первичного ключа Program.intID = table.table.Rows[0][0].ToString(); //Проверка на пустоту первичного ключ } catch { } }
/// <summary> /// Метод обращения к любой хранимой процедуре Microsoft SQL Server /// </summary> /// <param name="Procedure_name">Водимое название процедуры из БД</param> /// <param name="fileld_value">Не типизированная коллекция значений приложения</param> public void procedure_Execution(string Procedure_name, ArrayList fileld_value) { //Запрос на вывод списка параметров, конкретной хранимолй процедуры //в зависимости от введённого разработчиком названия Stored Procedure Table_Class table = new Table_Class(string.Format("select name from sys.parameters " + "where " + "object_id =" + " (select object_id from sys.procedures where name = '{0}')", Procedure_name)); try { //Настройка SQLCommand для работы с хранимыми процедурами command.CommandType = CommandType.StoredProcedure; //Присвоение в текст команды названия хранимой процедуры command.CommandText = string.Format("[dbo].[{0}]", Procedure_name); //Отчистка параметров command.Parameters.Clear(); for (int i = 0; i < table.table.Rows.Count; i++) { //Сопоставление значений коллекций в значения параметров command.Parameters.AddWithValue(table.table.Rows[i][0].ToString(), fileld_value[i]); } //Объявление события на перехват сообщений из БД Configuration_class.connection.InfoMessage += Connection_InfoMessage; //Открытие подключения Configuration_class.connection.Open(); //Выполнение запроса процедуры command.ExecuteNonQuery(); } catch { } finally { //Закрытие подключения Configuration_class.connection.Close(); } }
/// <summary> /// Заполнение DataGridView данными по запросу /// </summary> /// <param name="qr">Запрос</param> /// <param name="dgw">Объект класса DataGridView</param> private void dgvFill(string qr, DataGridView dgv) { Table_Class table = new Table_Class(qr); dgv.DataSource = table.table; }
/// <summary> /// Вызов перегрузки класса с функциями Microsoft SQL Server /// для функций которые имеют в себе формальные параметры /// </summary> /// <param name="Function_name">Название функции</param> /// <param name="type_function">Тип функции: /// table или scalar</param> /// <param name="parametrs">Не типизированный список /// передаваемых параметров</param> public Function_Class(string Function_name, string type_function, ArrayList parametrs) { //Объявление строковой переменной для формирования запроса string query = ""; try { //Проверка на тип функции switch (type_function) { case "scalar": //Формирование первой части скалярного запроса query = string.Format(@"select [dbo].[{0}](", Function_name); break; case "table": //Формирование первой части табличного запроса query = string.Format(@"select * from [dbo].[{0}](", Function_name); break; } //Строковая переменная колекции параметров //Вторая часть любого запроса string list_param = ""; //Условие на проверку количества параметров switch (parametrs.Count) { case 1: //В случае если параметр один запрос завершается list_param += parametrs[0].ToString() + ")"; break; default: //Перебор всех параметров из коллекции ArrayList foreach (object param in parametrs) { //Присвоение в строковую переменную //полученный список параметров из перегрузки list_param += param + ","; } //Удаление из получееной строки поледней запятой list_param = list_param.Remove(list_param.Length - 1, 1); //Закрывающая скобка запрпоса обращения //к функции list_param += ")"; break; } //Конкатенирование первой и второй части запроса query += list_param; //Занесение запроса в класс Table_Data Table_Class table = new Table_Class(query); //Присвоение результирующей таблицы в выходную таблицу Restable = table.table; } catch { } }