//Обновление строки private void UpdateRecord() { if (dgvLawContract.CurrentRow == null) { return; } v_LawContract vLawContract = dgvLawContract.CurrentRow.DataBoundItem as v_LawContract; if (vLawContract == null) { MessageBox.Show("Не знайдений рядок для оновлення", "Помилка"); return; } fmLawContractEdit fmEdit = new fmLawContractEdit(EnumFormMode.Edit, "Зміна договора ЦПХ"); fmEdit.SetData(vLawContract); if (fmEdit.ShowDialog() == DialogResult.OK) { LawContract LawContract = fmEdit.GetData(); string error; if (!_repoLawContract.ModifyLawContract(LawContract, out error)) { MessageBox.Show("Помилка оновлення рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableLawContract(_depId, _datBeg, _datEnd); } }
//Вставка строки private void InsertRecord() { fmLawContractEdit fmEdit = new fmLawContractEdit(EnumFormMode.Insert, "Створення договора ЦПХ"); LawContract setLawContract = new LawContract(); int month = SalaryHelper.GetMonthByIndex(cmbCalendar.SelectedIndex, true); if (month == 0) { setLawContract.LawContract_Date = DateTime.MinValue.AddYears(DateTime.Today.Year - 1).AddMonths(DateTime.Today.Month - 1); } else { int year = SalaryHelper.GetYearByIndex(DateTime.Today.Year - SetupProgram.YearSalary, cmbCalendar.SelectedIndex, true); setLawContract.LawContract_Date = DateTime.MinValue.AddYears(year - 1).AddMonths(month - 1); } if (MenuItemDeps.CheckState == CheckState.Checked && dgvDep.CurrentRow != null) { v_Dep dep = dgvDep.CurrentRow.DataBoundItem as v_Dep; if (dep != null) { setLawContract.LawContract_RefDep_Id = dep.Id; } } fmEdit.SetData(setLawContract); if (fmEdit.ShowDialog() == DialogResult.OK) { string error; LawContract getLawContract = fmEdit.GetData(); int id = _repoLawContract.AddLawContract(getLawContract, out error); if (id == 0) { MessageBox.Show("Помилка додавання рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableLawContract(_depId, _datBeg, _datEnd); dgvLawContract.SetPositionRow <v_LawContract>("LawContract_Id", id.ToString()); } }