private void dgvTypeAddPayment_SelectionChanged(object sender, EventArgs e) { if (dgvTypeAddPayment.CurrentRow == null) { return; } if (_datBeg == DateTime.MinValue || _datEnd == DateTime.MinValue) { MessageBox.Show("Помилка вибору періода.\nТехнічна інформація: _datBeg == DateTime.MinValue || _dateEnd == DateTime.MinValue", "Помилка"); return; } v_TypeAddPayment type = dgvTypeAddPayment.CurrentRow.DataBoundItem as v_TypeAddPayment; if (type == null) { MessageBox.Show("Помилка вибору типу додаткової виплати.\nТехнічна інформація: dep == null", "Помилка"); return; } _typeId = type.Id; LoadDataToGridAddPayment(_typeId, _datBeg, _datEnd); UpdateAddPaymentResult(); }
//Показать навигатор типов выплат private void ShowNavigatorTypes(bool isShow) { if (isShow) { left_pnl.Visible = true; if (dgvTypeAddPayment.CurrentRow == null) { dgvTypeAddPayment.CurrentCell = dgvTypeAddPayment.Rows[0].Cells[0]; } v_TypeAddPayment type = dgvTypeAddPayment.CurrentRow.DataBoundItem as v_TypeAddPayment; if (type == null) { MessageBox.Show("Помилка вибору типу додаткової виплати.\nТехнічна інформація: type == null", "Помилка"); return; } _typeId = type.Id; } else { _typeId = 0; left_pnl.Visible = false; } LoadDataToGridAddPayment(_typeId, _datBeg, _datEnd); UpdateAddPaymentResult(); }
private void fmAddPayment_Load(object sender, EventArgs e) { //Отпишемся от событий чтобы предотвратить "лишние" срабатывания при наcтройке cmbCalendar.SelectedIndexChanged -= new EventHandler(cmbCalendar_SelectedIndexChanged); dgvTypeAddPayment.SelectionChanged -= new EventHandler(dgvTypeAddPayment_SelectionChanged); InitCmbCalendar(); cmbCalendar.SelectedIndex = cmbCalendar.Items.Count - 1; InitGridTypeAddPayment(); if (!LoadDataToGridTypeAddPayment()) { return; } InitGridAddPayment(); if (MenuItemTypeAddPayment.CheckState == CheckState.Checked && dgvTypeAddPayment.CurrentRow != null) { dgvTypeAddPayment.CurrentCell = dgvTypeAddPayment.Rows[0].Cells[0]; v_TypeAddPayment typeAddPayment = dgvTypeAddPayment.CurrentRow.DataBoundItem as v_TypeAddPayment; if (typeAddPayment == null) { MessageBox.Show("Помилка вибору типу додаткових виплат.\nТехнічна інформація: typeAddPayment == null", "Помилка"); return; } _typeId = typeAddPayment.Id; } else { _typeId = 0; } GetDateBySelectCmbCalendar(ref _datBeg, ref _datEnd); if (_datBeg == DateTime.MinValue || _datEnd == DateTime.MinValue) { MessageBox.Show("Помилка вибору періоду.\nТехнічна інформація: _datBeg == DateTime.MinValue || _dateEnd == DateTime.MinValue", "Помилка"); return; } if (!LoadDataToGridAddPayment(_typeId, _datBeg, _datEnd)) { return; } UpdateAddPaymentResult(); //Восстновим подписку на события cmbCalendar.SelectedIndexChanged += new EventHandler(cmbCalendar_SelectedIndexChanged); dgvTypeAddPayment.SelectionChanged += new EventHandler(dgvTypeAddPayment_SelectionChanged); }
//Вставка строки private void InsertRecord() { fmAddPaymentEdit fmEdit = new fmAddPaymentEdit(EnumFormMode.Insert, "Створення додаткової виплати"); AddPayment addPaymentSet = new AddPayment(); int month = SalaryHelper.GetMonthByIndex(cmbCalendar.SelectedIndex, true); if (month == 0) { addPaymentSet.AddPayment_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); addPaymentSet.AddPayment_Date = DateTime.MinValue.AddYears(year - 1).AddMonths(month - 1); } if (MenuItemTypeAddPayment.CheckState == CheckState.Checked && dgvTypeAddPayment.CurrentRow != null) { v_TypeAddPayment type = dgvTypeAddPayment.CurrentRow.DataBoundItem as v_TypeAddPayment; if (type != null) { addPaymentSet.AddPayment_TypeAddPayment_Id = type.Id; } } fmEdit.SetData(addPaymentSet); if (fmEdit.ShowDialog() == DialogResult.OK) { string error; AddPayment addPaymentGet = fmEdit.GetData(); int id = _repoAddPayment.AddAddPayment(addPaymentGet, out error); if (id == 0) { MessageBox.Show("Помилка додавання рядка.\nТехнічна інформація: " + error, "Помилка"); return; } RefreshTableAddPayment(_typeId, _datBeg, _datEnd); dgvAddPayment.SetPositionRow <v_AddPayment>("AddPayment_Id", id.ToString()); } }