private void dgvDolgi_CellClick(object sender, DataGridViewCellEventArgs e) { var grid = sender as DataGridView; if (grid.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0) { tbxFilter.Focus(); DataSetTpos.debtRow debRow = DBclass.DS.debt.NewdebtRow(); debRow.expenseId = Convert.ToInt32(grid.Rows[e.RowIndex].Cells["expenseId"].Value); debRow.payDate = DateTime.Now; debRow.terminal = 0; //debRow. DataRow[] drs = DBclass.DS.expense.Select("expenseId = " + grid.Rows[e.RowIndex].Cells["expenseId"].Value.ToString()); if (drs.Length != 0) { drs[0]["terminal"] = Convert.ToInt32(grid.Rows[e.RowIndex].Cells["terminal"].Value); drs[0]["status"] = 0; } DBclass.DS.debt.AdddebtRow(debRow); DataSetTposTableAdapters.debtTableAdapter daDebt = new DataSetTposTableAdapters.debtTableAdapter(); daDebt.Update(debRow); DataSetTposTableAdapters.expenseTableAdapter daExp = new DataSetTposTableAdapters.expenseTableAdapter(); daExp.Update(drs); //dgvDolgi.Refresh(); } //else //if (e.RowIndex >= 0) //{ // dgvDolgi.CurrentCell = dgvDolgi.Rows[e.RowIndex].Cells["terminal"]; // dgvDolgi.BeginEdit(true); //} }
private void btnPay_Click(object sender, EventArgs e) { string str = ""; if (!string.IsNullOrEmpty(txbPay.Text)) { if (rbtnCash.Checked || rbtnTerminal.Checked || rbtnTransfer.Checked) { DataSetTpos.transferRow trRow = Classes.DB.DBclass.DS.transfer.NewtransferRow(); trRow.summ = Convert.ToInt32(txbPay.Text); switch ((selectedRbt).Name) { case "rbtnCash": trRow.transferType = 1; break; case "rbtnTerminal": trRow.transferType = 2; break; case "rbtnTransfer": trRow.transferType = 3; break; } trRow.contragentId = contragId; //trRow.comment = "Оплата за товары"; int sum = Convert.ToInt32(txbPay.Text) + lastPverflow; trRow.dataTransfer = DateTime.Now.Date; Classes.DB.DBclass.DS.transfer.AddtransferRow(trRow); DataSetTposTableAdapters.transferTableAdapter trTA = new DataSetTposTableAdapters.transferTableAdapter(); trTA.Update(Classes.DB.DBclass.DS.transfer); trTA.Fill(Classes.DB.DBclass.DS.transfer); DataSetTposTableAdapters.expenseTableAdapter expenseDa = new DataSetTposTableAdapters.expenseTableAdapter(); expenseDa.FillByContragent(DBclass.DS.expense, contragId); DataSetTposTableAdapters.transferexpenseTableAdapter trexDa = new DataSetTposTableAdapters.transferexpenseTableAdapter(); int lastIndexTransfer = (int)trTA.GetLast(); foreach (DataRow row in dataTable.Select("expType = 1")) { sum += Convert.ToInt32(row["expSum"]); } foreach (DataRow row in dataTable.Rows) { DataSetTpos.expenseRow expRow = DBclass.DS.expense.FindByexpenseId(Convert.ToInt32(row["expenseId"])); if (expRow.expType != 1) { int debt = Convert.ToInt32(row["debt"]); int payedSum = 0; if (sum > 0 && expRow != null) { if (debt <= sum) { sum = sum - debt; payedSum = debt; debt = 0; expRow.status = 0; } else if (debt > sum) { debt = debt - sum; payedSum = sum; sum = 0; } DataSetTpos.transferexpenseRow trexpRow = DBclass.DS.transferexpense.NewtransferexpenseRow(); trexpRow.expenseId = expRow.expenseId; trexpRow.transferId = lastIndexTransfer; DBclass.DS.transferexpense.AddtransferexpenseRow(trexpRow); } switch ((selectedRbt).Name) { case "rbtnCash": expRow.inCash += payedSum; break; case "rbtnTerminal": expRow.terminal += payedSum; break; case "rbtnTransfer": expRow.transfer += payedSum; break; } expRow.debt = debt; } else { //sum = sum + expRow.expSum; expRow.status = 0; } expenseDa.Update(expRow); } trexDa.Update(DBclass.DS.transferexpense); DataSetTpos.transferRow trRow1 = Classes.DB.DBclass.DS.transfer.Last <DataSetTpos.transferRow>(); if (sum > 0) { trRow1.overflow = sum; } else { trRow1.overflow = 0; } trTA.Update(trRow1); } else { lblError.Text = "Выберите вид оплаты!"; lblError.Visible = true; } } else { lblError.Text = "Введите сумму оплаты!"; lblError.Visible = true; } }