Пример #1
0
        /// <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");
            }
        }
Пример #3
0
        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);
        }
Пример #4
0
        /// <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";
        }
Пример #5
0
        /// <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
            {
            }
        }
Пример #7
0
        /// <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();
            }
        }
Пример #8
0
        /// <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
            {
            }
        }