//Обновление строки
        private void UpdateRecord()
        {
            if (dgvRefExpAllwnc.CurrentRow == null)
            {
                return;
            }
            string         error;
            v_RefExpAllwnc v_expAllwnc = dgvRefExpAllwnc.CurrentRow.DataBoundItem as v_RefExpAllwnc;

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

            fmRefExpAllwncEdit fmEdit = new fmRefExpAllwncEdit(EnumFormMode.Edit, "Зміна надбавки за стаж");

            fmEdit.SetData(v_expAllwnc);
            if (fmEdit.ShowDialog() == DialogResult.OK)
            {
                RefExpAllwnc expAllwnc = fmEdit.GetData();
                if (!_repository.ModifyExpAllwnc(expAllwnc, out error))
                {
                    MessageBox.Show("Помилка оновлення рядка.\nТехнічна інформація: " + error, "Помилка");
                    return;
                }
                RefreshTable();
            }
        }
        //Физическое удаление строки
        private void DeleteRecord()
        {
            if (dgvRefExpAllwnc.CurrentRow == null)
            {
                return;
            }
            if (MessageBox.Show("Ви впевнені, що бажаєте видалити обраний рядок?", "Видалення", MessageBoxButtons.YesNo) == DialogResult.No)
            {
                return;
            }
            v_RefExpAllwnc v_expAllwnc = dgvRefExpAllwnc.CurrentRow.DataBoundItem as v_RefExpAllwnc;

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

            if (!_repository.DeleteExpAllwnc(v_expAllwnc.RefExpAllwnc_Id, out error))
            {
                MessageBox.Show("Помилка видалення рядка.\nТехнічна інформація: " + error, "Помилка");
                return;
            }
            RefreshTable();
        }
        private List <v_RefExpAllwnc> GetViewAllowance(List <RefExpAllwnc> Allowance, List <RefDep> refDeps)
        {
            List <v_RefExpAllwnc> v_allwncs = new List <v_RefExpAllwnc>();

            foreach (RefExpAllwnc allwnc in Allowance)
            {
                RefDep         refDep   = refDeps.FirstOrDefault(s => s.RefDep_Id == allwnc.RefExpAllwncMech_RefDep_Id);
                v_RefExpAllwnc v_allwnc = new v_RefExpAllwnc();
                v_allwnc.RefExpAllwnc_Id   = allwnc.RefExpAllwnc_Id;
                v_allwnc.RefExpAllwnc_Cd   = allwnc.RefExpAllwnc_Cd;
                v_allwnc.RefExpAllwnc_Nm   = allwnc.RefExpAllwnc_Nm;
                v_allwnc.RefExpAllwnc_Year = allwnc.RefExpAllwnc_Year;
                v_allwnc.RefExpAllwnc_Mech = allwnc.RefExpAllwnc_Mech;
                if (refDep != null)
                {
                    v_allwnc.RefExpAllwncMech_RefDep_Id = refDep.RefDep_Id;
                    v_allwnc.RefExpAllwncMech_RefDep_Nm = refDep.RefDep_Nm;
                }
                v_allwnc.RefExpAllwnc_Oth = allwnc.RefExpAllwnc_Oth;
                v_allwnc.RefExpAllwnc_Use = (allwnc.RefExpAllwnc_Flg & (int)EnumExpAllwnc_Flg.ALLWNC_NOTUSE) > 0 ? 0 : 1;
                v_allwncs.Add(v_allwnc);
            }
            return(v_allwncs);
        }