//Обновление строки private void UpdateRecord() { if (dgvSickList.CurrentRow == null) { return; } v_SickList vSickList = dgvSickList.CurrentRow.DataBoundItem as v_SickList; if (vSickList == null) { MessageBox.Show("Не знайдений рядок для оновлення", "Помилка"); return; } fmSickListEdit fmEdit = new fmSickListEdit(EnumFormMode.Edit, "Зміна лікарняного"); fmEdit.SetData(vSickList); if (fmEdit.ShowDialog() == DialogResult.OK) { SickList SickList = fmEdit.GetData(); string error; if (!_repoSickList.ModifySickList(SickList, out error)) { MessageBox.Show("Помилка оновлення рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableSickList(_depId, _datBeg, _datEnd); } }
//Вставка строки private void InsertRecord() { fmSickListEdit fmEdit = new fmSickListEdit(EnumFormMode.Insert, "Створення лікарняного"); SickList setSickList = new SickList(); int month = SalaryHelper.GetMonthByIndex(cmbCalendar.SelectedIndex, true); if (month == 0) { setSickList.SickList_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); setSickList.SickList_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) { setSickList.SickList_RefDep_Id = dep.Id; } } fmEdit.SetData(setSickList); if (fmEdit.ShowDialog() == DialogResult.OK) { string error; SickList getSickList = fmEdit.GetData(); int id = _repoSickList.AddSickList(getSickList, out error); if (id == 0) { MessageBox.Show("Помилка додавання рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableSickList(_depId, _datBeg, _datEnd); dgvSickList.SetPositionRow <v_SickList>("SickList_Id", id.ToString()); } }