//Обновление строки private void UpdateRecord() { if (dgvAddAccr.CurrentRow == null) { return; } v_AddAccr addAccrSet = dgvAddAccr.CurrentRow.DataBoundItem as v_AddAccr; if (addAccrSet == null) { MessageBox.Show("Не знайдений рядок для оновлення", "Помилка"); return; } fmAddAccrEdit fmEdit = new fmAddAccrEdit(EnumFormMode.Edit, "Зміна додаткового нарахування"); fmEdit.SetData(addAccrSet); if (fmEdit.ShowDialog() == DialogResult.OK) { AddAccr addAccrGet = fmEdit.GetData(); string error; if (!_repoAddAccr.ModifyAddAccr(addAccrGet, out error)) { MessageBox.Show("Помилка оновлення рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableAddAccr(_depId, _datBeg, _datEnd); } }
//Физическое удаление строки private void DeleteRecord() { List <v_AddAccr> checkedAddAccrs = dgvAddAccr.GetCheckedRecords <v_AddAccr>(); if (checkedAddAccrs.Count > 0) { if (MessageBox.Show("Ви впевнені, що бажаєте видалити обрані рядки?", "Видалення", MessageBoxButtons.YesNo) == DialogResult.Yes) { Coffee.Init("Видалення..."); foreach (v_AddAccr addAccr in checkedAddAccrs) { string error; if (!_repoAddAccr.DeleteAddAccr(addAccr.AddAccr_Id, out error)) { MessageBox.Show("Помилка видалення рядка.\nТехнічна інформація: " + error, "Помилка"); break; } } Coffee.Term(); RefreshTableAddAccr(_depId, _datBeg, _datEnd); } } else { if (dgvAddAccr.CurrentRow == null) { return; } if (MessageBox.Show("Ви впевнені, що бажаєте видалити обраний рядок?", "Видалення", MessageBoxButtons.YesNo) == DialogResult.No) { return; } v_AddAccr addAccr = dgvAddAccr.CurrentRow.DataBoundItem as v_AddAccr; if (addAccr == null) { MessageBox.Show("Не знайдений рядок для видалення", "Помилка"); return; } string error; if (!_repoAddAccr.DeleteAddAccr(addAccr.AddAccr_Id, out error)) { MessageBox.Show("Помилка видалення рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableAddAccr(_depId, _datBeg, _datEnd); } }