コード例 #1
0
        //Обновление строки
        private void UpdateRecord()
        {
            if (dgvRefLivWage.CurrentRow == null)
            {
                return;
            }
            string     error;
            RefLivWage refLivWage = dgvRefLivWage.CurrentRow.DataBoundItem as RefLivWage;

            if (refLivWage == null)
            {
                MessageBox.Show("Не знайдений рядок для оновлення", "Помилка");
                return;
            }
            fmRefLivWageEdit fmEdit = new fmRefLivWageEdit(EnumFormMode.Edit, "Зміна інтервалу прожиткового мінімума");

            fmEdit.AddControlPeriod(livWages);
            fmEdit.SetData(refLivWage);
            if (fmEdit.ShowDialog() == DialogResult.OK)
            {
                refLivWage = fmEdit.GetData();
                if (!_repository.ModifyRefLivWage(refLivWage, out error))
                {
                    MessageBox.Show("Помилка оновлення рядка.\nТехнічна інформація: " + error, "Помилка");
                    return;
                }
                RefreshTable();
            }
        }
コード例 #2
0
        //Физическое удаление строки
        private void DeleteRecord()
        {
            if (dgvRefLivWage.CurrentRow == null)
            {
                return;
            }
            if (MessageBox.Show("Ви впевнені, що бажаєте видалити рядок?", "Видалення", MessageBoxButtons.YesNo) == DialogResult.No)
            {
                return;
            }
            RefLivWage refLivWage = dgvRefLivWage.CurrentRow.DataBoundItem as RefLivWage;

            if (refLivWage == null)
            {
                MessageBox.Show("Не знайдений рядок для видалення", "Помилка");
                return;
            }
            string error;

            if (!_repository.DeleteRefLivWage(refLivWage.RefLivWage_Id, out error))
            {
                MessageBox.Show("Помилка видалення рядка.\nТехнічна інформація: " + error, "Помилка");
                return;
            }
            RefreshTable();
        }
コード例 #3
0
        //Изменить интервал прожиточного минимума
        public bool ModifyRefLivWage(RefLivWage refLivWage, out string error)
        {
            error = string.Empty;
            if (conn == null)
            {
                error = "conn == null";
                return(false);
            }
            if (refLivWage == null)
            {
                error = "refLivWage == null";
                return(false);
            }
            SqlCommand command = new SqlCommand(spRefLivWageUpdate, conn);

            command.CommandType = CommandType.StoredProcedure;
            command.Connection  = conn;
            command.Parameters.AddWithValue("@inRefLivWage_Id", refLivWage.RefLivWage_Id);
            command.Parameters.AddWithValue("@inRefLivWage_PerBeg",
                                            refLivWage.RefLivWage_PerBeg == DateTime.MinValue ? Convert.DBNull : refLivWage.RefLivWage_PerBeg);
            command.Parameters.AddWithValue("@inRefLivWage_PerEnd",
                                            refLivWage.RefLivWage_PerEnd == DateTime.MinValue ? Convert.DBNull : refLivWage.RefLivWage_PerEnd);
            command.Parameters.AddWithValue("@inRefLivWage_Sm", refLivWage.RefLivWage_Sm);
            try
            {
                command.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
            return(true);
        }
コード例 #4
0
 public void SetData(RefLivWage refLivWage)
 {
     _id = refLivWage.RefLivWage_Id;
     if (refLivWage.RefLivWage_PerBeg != DateTime.MinValue)
     {
         tbPerBeg.Text = refLivWage.RefLivWage_PerBeg.ToShortDateString();
     }
     if (refLivWage.RefLivWage_PerEnd != DateTime.MinValue)
     {
         tbPerEnd.Text = refLivWage.RefLivWage_PerEnd.ToShortDateString();
     }
     tbSm.Text = refLivWage.RefLivWage_Sm.ToString();
 }
コード例 #5
0
        //Добавить интервал прожиточного минимума
        public int AddRefLivWage(RefLivWage refLivWage, out string error)
        {
            error = string.Empty;
            if (refLivWage == null)
            {
                error = "refLivWage == null";
                return(0);
            }
            if (conn == null)
            {
                error = "conn == null";
                return(0);
            }
            SqlCommand command = new SqlCommand(spRefLivWageInsert, conn);

            command.CommandType = CommandType.StoredProcedure;
            command.Connection  = conn;
            command.Parameters.AddWithValue("@inRefLivWage_PerBeg",
                                            refLivWage.RefLivWage_PerBeg == DateTime.MinValue ? Convert.DBNull : refLivWage.RefLivWage_PerBeg);
            command.Parameters.AddWithValue("@inRefLivWage_PerEnd",
                                            refLivWage.RefLivWage_PerEnd == DateTime.MinValue ? Convert.DBNull : refLivWage.RefLivWage_PerEnd);
            command.Parameters.AddWithValue("@inRefLivWage_Sm", refLivWage.RefLivWage_Sm);
            // определяем выходной параметр
            SqlParameter outId = new SqlParameter
            {
                ParameterName = "outId",
                Direction     = ParameterDirection.Output,
                SqlDbType     = SqlDbType.Int
            };

            command.Parameters.Add(outId);
            try
            {
                command.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(0);
            }
            int id = 0;

            int.TryParse(command.Parameters["outId"].Value.ToString(), out id);
            return(id);
        }
コード例 #6
0
        private List <RefLivWage> livWages       = null; //Кеширование
        //Вставка строки
        private void InsertRecord()
        {
            fmRefLivWageEdit fmEdit = new fmRefLivWageEdit(EnumFormMode.Insert, "Створення інтервалу прожиткового мінімума");

            fmEdit.AddControlPeriod(livWages);
            if (fmEdit.ShowDialog() == DialogResult.OK)
            {
                string     error;
                RefLivWage refLivWage = fmEdit.GetData();
                int        id         = _repository.AddRefLivWage(refLivWage, out error);
                if (id == 0)
                {
                    MessageBox.Show("Помилка додавання рядка.\nТехнічна інформація: " + error, "Помилка");
                    return;
                }
                RefreshTable();
                dgvRefLivWage.SetPositionRow <RefLivWage>("RefLivWage_Id", id.ToString());
            }
        }
コード例 #7
0
        //Получить интервалы прожиточного минимума
        public List <RefLivWage> GetAllRefLivWages(out string error)
        {
            error = string.Empty;

            List <RefLivWage> refLivWages = new List <RefLivWage>();

            if (conn == null)
            {
                error = "conn == null";
                return(refLivWages);
            }

            SqlCommand command = new SqlCommand(spRefLivWageSelect, conn);

            command.CommandType = CommandType.StoredProcedure;
            SqlDataReader reader = null;

            try
            {
                reader = command.ExecuteReader();

                while (reader.Read())
                {
                    RefLivWage refMinSalary = new RefLivWage();
                    FillDataRec(reader, refMinSalary);
                    refLivWages.Add(refMinSalary);
                }
            }
            catch (Exception exc)
            {
                error = exc.Message;
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
            }
            return(refLivWages);
        }
コード例 #8
0
        public RefLivWage GetData()
        {
            RefLivWage livWage = new RefLivWage();

            livWage.RefLivWage_Id = _id;

            DateTime perBeg;

            DateTime.TryParse(tbPerBeg.Text, out perBeg);
            livWage.RefLivWage_PerBeg = perBeg;

            DateTime perEnd;

            DateTime.TryParse(tbPerEnd.Text, out perEnd);
            livWage.RefLivWage_PerEnd = perEnd;

            decimal sm = 0;

            decimal.TryParse(tbSm.Text, out sm);
            livWage.RefLivWage_Sm = sm;
            return(livWage);
        }
コード例 #9
0
        private void FillDataRec(SqlDataReader reader, RefLivWage RefLivWage)
        {
            int      resInt  = 0;
            DateTime resDate = DateTime.MinValue;
            decimal  resDec  = 0;

            if (int.TryParse(reader["RefLivWage_Id"].ToString(), out resInt))
            {
                RefLivWage.RefLivWage_Id = resInt;
            }
            if (DateTime.TryParse(reader["RefLivWage_PerBeg"].ToString(), out resDate))
            {
                RefLivWage.RefLivWage_PerBeg = resDate;
            }
            if (DateTime.TryParse(reader["RefLivWage_PerEnd"].ToString(), out resDate))
            {
                RefLivWage.RefLivWage_PerEnd = resDate;
            }
            if (decimal.TryParse(reader["RefLivWage_Sm"].ToString(), out resDec))
            {
                RefLivWage.RefLivWage_Sm = resDec;
            }
        }