//Обновление строки private void UpdateRecord() { if (dgvPayment.CurrentRow == null) { return; } v_Payment paymentSet = dgvPayment.CurrentRow.DataBoundItem as v_Payment; if (paymentSet == null) { MessageBox.Show("Не знайдений рядок для оновлення", "Помилка"); return; } fmPaymentEdit fmEdit = new fmPaymentEdit(EnumFormMode.Edit, "Зміна виплати"); fmEdit.SetData(paymentSet); if (fmEdit.ShowDialog() == DialogResult.OK) { Payment paymentGet = fmEdit.GetData(); string error; if (!_repoPayment.ModifyPayment(paymentGet, out error)) { MessageBox.Show("Помилка оновлення рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTablePayment(_typeId, _datBeg, _datEnd); } }
//Вставка строки private void InsertRecord() { fmPaymentEdit fmEdit = new fmPaymentEdit(EnumFormMode.Insert, "Створення виплати"); Payment paymentSet = new Payment(); int month = SalaryHelper.GetMonthByIndex(cmbCalendar.SelectedIndex, true); if (month == 0) { paymentSet.Payment_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); paymentSet.Payment_Date = DateTime.MinValue.AddYears(year - 1).AddMonths(month - 1); } paymentSet.Payment_Type = _typeId; fmEdit.SetData(paymentSet); if (fmEdit.ShowDialog() == DialogResult.OK) { string error; Payment paymentGet = fmEdit.GetData(); int id = _repoPayment.AddPayment(paymentGet, out error); if (id == 0) { MessageBox.Show("Помилка додавання рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTablePayment(_typeId, _datBeg, _datEnd); dgvPayment.SetPositionRow <v_Payment>("Payment_Id", id.ToString()); } }