//Обновление строки private void UpdateRecord() { if (dgvVocation.CurrentRow == null) { return; } v_Vocation vvocation = dgvVocation.CurrentRow.DataBoundItem as v_Vocation; if (vvocation == null) { MessageBox.Show("Не знайдений рядок відпускних для оновлення", "Помилка"); return; } fmVocationEdit fmEdit = new fmVocationEdit(EnumFormMode.Edit, "Зміна відпускного"); fmEdit.SetData(vvocation); if (fmEdit.ShowDialog() == DialogResult.OK) { Vocation vocation = fmEdit.GetData(); string error; if (!_repoVocation.ModifyVocation(vocation, out error)) { MessageBox.Show("Помилка оновлення відпускного.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableVocation(_depId, _datBeg, _datEnd); } }
//Физическое удаление строки private void DeleteRecord() { List <v_Vocation> checkedVocations = dgvVocation.GetCheckedRecords <v_Vocation>(); if (checkedVocations.Count > 0) { if (MessageBox.Show("Ви впевнені, що бажаєте видалити обрані рядки?", "Видалення", MessageBoxButtons.YesNo) == DialogResult.Yes) { Coffee.Init("Видалення відпускного"); foreach (v_Vocation vocation in checkedVocations) { string error; if (!_repoVocation.DeleteVocation(vocation.Vocation_Id, out error)) { MessageBox.Show("Помилка видалення.\nТехнічна інформація: " + error, "Помилка"); break; } } Coffee.Term(); RefreshTableVocation(_depId, _datBeg, _datEnd); } } else { if (dgvVocation.CurrentRow == null) { return; } if (MessageBox.Show("Ви впевнені, що бажаєте видалити рядок?", "Видалення", MessageBoxButtons.YesNo) == DialogResult.No) { return; } v_Vocation vocation = dgvVocation.CurrentRow.DataBoundItem as v_Vocation; if (vocation == null) { MessageBox.Show("Не знайдений рядок для видалення", "Помилка"); return; } string error; if (!_repoVocation.DeleteVocation(vocation.Vocation_Id, out error)) { MessageBox.Show("Помилка видалення.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableVocation(_depId, _datBeg, _datEnd); } }